Exemplo n.º 1
0
		/**
		* This was inside addOrder, moved out for use by editing and for split-shipping allocation
		*
		* @param ISC_QUOTE $quote
		*/
		public function populateQuoteFormFields(ISC_QUOTE $quote)
		{
			require_once(ISC_BASE_PATH . '/lib/addressvalidation.php');

			$formTypes = array(
				'accountFormFields'		=> FORMFIELDS_FORM_ACCOUNT,
				'billingFormFields'		=> FORMFIELDS_FORM_BILLING,
				'shippingFormFields'	=> FORMFIELDS_FORM_SHIPPING,
			);

			$this->template->assign('formFieldTypes', $formTypes);

			foreach($formTypes as $templateVar => $formId) {
				/** @var ISC_QUOTE_ADDRESS quote address with which to populate form field values */
				$quoteAddress = null;
				switch ($formId) {
					case FORMFIELDS_FORM_ACCOUNT:
					case FORMFIELDS_FORM_BILLING:
						$quoteAddress = $quote->getBillingAddress();
						break;

					case FORMFIELDS_FORM_SHIPPING:
						if ($quote->getIsSplitShipping()) {
							break;
						}
						$quoteAddress = $quote->getShippingAddress();
						break;
				}

				$formFields = $this->populateQuoteAddressFormFields($formId, $quoteAddress);

				$this->template->assign($templateVar, $formFields);
			}

			$this->engine->bodyScripts[] = '../javascript/formfield.js';
			$this->template->assign('formFieldJavascript', $GLOBALS['ISC_CLASS_FORM']->buildRequiredJS());
		}