/** * Sets the preferences for this form * * @return array * * @author Sebastian Diel <*****@*****.**> * @since 09.10.2012 */ public function preferences() { parent::preferences(); if ($this->controller->class == 'SilvercartCheckoutStep_Controller') { $this->CancelLink = $this->controller->Link(); } else { $this->CancelLink = $this->controller->Parent()->Link(); } }
/** * We intercept the submit handler since we have to alter some field * checks depending on the status of the field "InvoiceAddressAsShippingAddress". * * @param SS_HTTPRequest $data submit data * @param Form $form form object * * @return ViewableData * * @author Sascha Koehler <*****@*****.**>, * Sebastian Diel <*****@*****.**> * @since 20.01.2014 */ public function submit($data, $form) { // Disable the check instructions if the shipping address shall be // the same as the invoice address. if ($data['InvoiceAddressAsShippingAddress'] == '1') { $this->deactivateValidationFor('Shipping_Salutation'); $this->deactivateValidationFor('Shipping_AcademicTitle'); $this->deactivateValidationFor('Shipping_FirstName'); $this->deactivateValidationFor('Shipping_Surname'); $this->deactivateValidationFor('Shipping_Addition'); $this->deactivateValidationFor('Shipping_Street'); $this->deactivateValidationFor('Shipping_StreetNumber'); $this->deactivateValidationFor('Shipping_Postcode'); $this->deactivateValidationFor('Shipping_City'); $this->deactivateValidationFor('Shipping_PhoneAreaCode'); $this->deactivateValidationFor('Shipping_Phone'); $this->deactivateValidationFor('Shipping_Country'); } $formData = $data->postVars(); if ($this->UseMinimumAgeToOrder()) { $formData['Birthday'] = $formData['BirthdayYear'] . '-' . $formData['BirthdayMonth'] . '-' . $formData['BirthdayDay']; if (!SilvercartConfig::CheckMinimumAgeToOrder($formData['Birthday'])) { $this->errorMessages['BirthdayDay'] = array('message' => SilvercartConfig::MinimumAgeToOrderError(), 'fieldname' => _t('SilvercartPage.BIRTHDAY') . ' - ' . _t('SilvercartPage.DAY'), 'BirthdayDay' => array('message' => SilvercartConfig::MinimumAgeToOrderError())); $this->errorMessages['BirthdayMonth'] = array('message' => SilvercartConfig::MinimumAgeToOrderError(), 'fieldname' => _t('SilvercartPage.BIRTHDAY') . ' - ' . _t('SilvercartPage.MONTH'), 'BirthdayMonth' => array('message' => SilvercartConfig::MinimumAgeToOrderError())); $this->errorMessages['BirthdayYear'] = array('message' => SilvercartConfig::MinimumAgeToOrderError(), 'fieldname' => _t('SilvercartPage.BIRTHDAY') . ' - ' . _t('SilvercartPage.YEAR'), 'BirthdayYear' => array('message' => SilvercartConfig::MinimumAgeToOrderError())); $this->setSubmitSuccess(false); return $this->submitFailure($data, $form); } } parent::submit($data, $form); }