<vn>
<vn-group>
	<vn-param id="method"/>
	<vn-param id="date"/>
	<vn-param id="agency"/>
	<vn-param id="address" on-changed="onAddressChange"/>
	<db-form id="defaults" on-ready="onValuesReady">
		<db-model property="model">
			SELECT deliveryMethod, agencyModeFk, addressFk
				FROM myBasketDefaults
		</db-model>
	</db-form>
	<db-form id="order-form" on-ready="onValuesReady">
		<db-model property="model">
			SELECT m.code deliveryMethod, o.sent, o.agencyModeFk, o.addressFk
				FROM myBasket o
					JOIN vn.deliveryMethod m ON m.id = o.deliveryMethodFk
		</db-model>
	</db-form>
	<db-model id="agencies"
		auto-load="false"
		result-index="1"
		on-status-changed="onAgenciesReady">
		CALL vn.agencyListAvailable (#date, #address);
		SELECT DISTINCT m.id, m.description
			FROM tmp.agencyAvailable a
				JOIN vn.agencyMode m
					ON m.agencyFk = a.agencyFk
				JOIN vn.deliveryMethod d
					ON d.id = m.deliveryMethodFk
			WHERE d.code IN ('AGENCY', 'DELIVERY')
			ORDER BY m.description;
		DROP TEMPORARY TABLE tmp.agencyAvailable;
		<sql-batch property="batch">
			<custom>
				<item name="address" param="address"/>
				<item name="date" param="date"/>
			</custom>
		</sql-batch>
	</db-model>
	<db-model id="warehouses"
		auto-load="false"
		result-index="1"
		on-status-changed="onWarehousesReady">
		CALL vn.agencyListAvailable (#date, #address);
		SELECT DISTINCT m.id, m.description
			FROM tmp.agencyAvailable a
				JOIN vn.agencyMode m
					ON m.agencyFk = a.agencyFk
				JOIN vn.deliveryMethod d
					ON d.id = m.deliveryMethodFk
			WHERE d.code IN ('PICKUP')
			ORDER BY m.description;
		DROP TEMPORARY TABLE tmp.agencyAvailable;
		<sql-batch property="batch">
			<custom>
				<item name="address" param="address"/>
				<item name="date" param="date"/>
			</custom>
		</sql-batch>
	</db-model>
</vn-group>
<div id="title">
	<h1><t>ConfigureOrder</t></h1>
</div>
<div id="actions">
	<htk-bar-button
		icon="close"
		tip="_Cancel"
		on-click="onCancelClick"/>
</div>
<div id="form" class="checkout">
	<div class="box bar">
		<htk-assistant-bar
			id="assistant-bar"
			assistant="assistant"/>
	</div>
	<div class="box">
		<div class="form">
		<htk-assistant id="assistant"
			endFunc="onConfirmClick">
			<htk-step
				name="method"
				validate-func="methodValidate">
				<h2><t>DeliveryOrPickupQuestion</t></h2>
				<div class="answers radio">
					<htk-radio-group
						id="rg-method"
						param="method"
						on-changed="onMethodChange"/>
					<div>
						<label>
							<htk-radio radio-group="rg-method" value="AGENCY"/>
							<t>Receive the order</t>
						</label>
					</div>
					<div>
						<label>
							<htk-radio radio-group="rg-method" value="PICKUP"/>
							<t>PickupInStore</t>
						</label>
					</div>
				</div>
			</htk-step>
			<htk-step
				name="date"
				show-func="dateShow"
				validate-func="dateValidate">
				<h2 id="date-question"/>
				<div class="answers">
					<htk-calendar
						id="calendar"
						class="thin-calendar"
						param="date"
						restrict-func="calendarRestrict"
						on-changed="onFieldChange"/>
				</div>
			</htk-step>
			<htk-step
				name="address"
				show-func="addressShow"
				validate-func="addressValidate">
				<h2 id="address-question"/>
				<div class="answers target">
					<db-form id="address-form" model="addresses"/>
					<htk-repeater
						id="repeater"
						form-id="iter"
						on-change="onAddressChange"
						renderer="addressRenderer">
						<db-model property="model" id="addresses">
							SELECT a.id, a.nickname, p.name province, a.city, a.street, a.isActive, c.country
								FROM myAddress a
								LEFT JOIN vn.province p ON p.id = a.provinceFk
								JOIN vn.country c ON c.id = p.countryFk
									WHERE a.isActive
						</db-model>
						<custom>
							<div class="address" id="address">
								<p class="consignee">
									<htk-text form="iter" column="nickname"/>
								</p>
								<p>
									<htk-text form="iter" column="street"/>
								</p>
							</div>
						</custom>
					</htk-repeater>
				</div>
			</htk-step>
			<htk-step
				name="agency"
				show-func="agencyShow"
				validate-func="agencyValidate">
				<h2><t>AgencyQuestion</t></h2>
				<div class="answers target">
					<htk-combo
						id="agency-combo"
						param="agency"
						on-changed="onFieldChange"
						model="agencies"/>
				</div>
			</htk-step>
			<htk-step
				name="pickup"
				show-func="pickupShow"
				validate-func="pickupValidate">
				<h2><t>PickupWarehouseQuestion</t></h2>
				<div class="answers target">
					<htk-combo
						id="warehouse-combo"
						param="agency"
						on-changed="onFieldChange"
						model="warehouses"/>
				</div>
			</htk-step>
			<htk-step
				name="confirm-delivery">
				<h2><t>ConfirmToAccessCatalog</t></h2>
				<div class="answers target">
					<p>
						<t>Arrival</t> 
						<htk-text format="%D" param="date"/>
					</p>
					<p>
						<htk-text form="address-form" column="street"/>
					</p>
					<p>
						<t>Agency</t> 
						<htk-text form="agency-combo" column="description"/>
					</p>
					<div class="clear"/>
				</div>
			</htk-step>
			<htk-step
				name="confirm-pickup">
				<h2><t>ConfirmToAccessCatalog</t></h2>
				<div class="answers target">
					<p>
						<t>Pickup</t> 
						<htk-text format="%D" param="date"/>
					</p>
					<p>
						<t>Warehouse</t> 
						<htk-text form="warehouse-combo" column="description"/>
					</p>
					<div class="clear"/>
				</div>
			</htk-step>
		</htk-assistant>
		</div>
	</div>
</div>
</vn>
