本文整理汇总了PHP中Validate::isDniLite方法的典型用法代码示例。如果您正苦于以下问题:PHP Validate::isDniLite方法的具体用法?PHP Validate::isDniLite怎么用?PHP Validate::isDniLite使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Validate
的用法示例。
在下文中一共展示了Validate::isDniLite方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: preProcess
public function preProcess()
{
parent::preProcess();
if (self::$cookie->isLogged() and !Tools::isSubmit('ajax')) {
Tools::redirect('my-account.php');
}
if (Tools::getValue('create_account')) {
$create_account = 1;
self::$smarty->assign('email_create', 1);
}
if (Tools::isSubmit('SubmitCreate')) {
if (!Validate::isEmail($email = Tools::getValue('email_create')) or empty($email)) {
$this->errors[] = Tools::displayError('Invalid e-mail address');
} elseif (Customer::customerExists($email)) {
$this->errors[] = Tools::displayError('An account is already registered with this e-mail, please fill in the password or request a new one.');
$_POST['email'] = $_POST['email_create'];
unset($_POST['email_create']);
} else {
$create_account = 1;
self::$smarty->assign('email_create', Tools::safeOutput($email));
$_POST['email'] = $email;
}
}
if (Tools::isSubmit('submitAccount') or Tools::isSubmit('submitGuestAccount')) {
$create_account = 1;
if (Tools::isSubmit('submitAccount')) {
self::$smarty->assign('email_create', 1);
}
/* New Guest customer */
if (!Tools::getValue('is_new_customer', 1) and !Configuration::get('PS_GUEST_CHECKOUT_ENABLED')) {
$this->errors[] = Tools::displayError('You cannot create a guest account.');
}
if (!Tools::getValue('is_new_customer', 1)) {
$_POST['passwd'] = md5(time() . _COOKIE_KEY_);
}
if (isset($_POST['guest_email']) and $_POST['guest_email']) {
$_POST['email'] = $_POST['guest_email'];
}
/* Preparing customer */
$customer = new Customer();
$lastnameAddress = $_POST['lastname'];
$firstnameAddress = $_POST['firstname'];
$_POST['lastname'] = $_POST['customer_lastname'];
$_POST['firstname'] = $_POST['customer_firstname'];
if (!Tools::getValue('phone') and !Tools::getValue('phone_mobile')) {
$this->errors[] = Tools::displayError('You must register at least one phone number');
}
if (!@checkdate(Tools::getValue('months'), Tools::getValue('days'), Tools::getValue('years')) and !(Tools::getValue('months') == '' and Tools::getValue('days') == '' and Tools::getValue('years') == '')) {
$this->errors[] = Tools::displayError('Invalid date of birth');
}
$customer->birthday = empty($_POST['years']) ? '' : (int) $_POST['years'] . '-' . (int) $_POST['months'] . '-' . (int) $_POST['days'];
$this->errors = array_unique(array_merge($this->errors, $customer->validateControler()));
/* Preparing address */
$address = new Address();
$_POST['lastname'] = $lastnameAddress;
$_POST['firstname'] = $firstnameAddress;
$address->id_customer = 1;
$this->errors = array_unique(array_merge($this->errors, $address->validateControler()));
/* US customer: normalize the address */
if ($address->id_country == Country::getByIso('US')) {
include_once _PS_TAASC_PATH_ . 'AddressStandardizationSolution.php';
$normalize = new AddressStandardizationSolution();
$address->address1 = $normalize->AddressLineStandardization($address->address1);
$address->address2 = $normalize->AddressLineStandardization($address->address2);
}
$zip_code_format = Country::getZipCodeFormat((int) Tools::getValue('id_country'));
if (Country::getNeedZipCode((int) Tools::getValue('id_country'))) {
if ($postcode = Tools::getValue('postcode') and $zip_code_format) {
$zip_regexp = '/^' . $zip_code_format . '$/ui';
$zip_regexp = str_replace(' ', '( |)', $zip_regexp);
$zip_regexp = str_replace('-', '(-|)', $zip_regexp);
$zip_regexp = str_replace('N', '[0-9]', $zip_regexp);
$zip_regexp = str_replace('L', '[a-zA-Z]', $zip_regexp);
$zip_regexp = str_replace('C', Country::getIsoById((int) Tools::getValue('id_country')), $zip_regexp);
if (!preg_match($zip_regexp, $postcode)) {
$this->errors[] = '<strong>' . Tools::displayError('Zip/ Postal code') . '</strong> ' . Tools::displayError('is invalid.') . '<br />' . Tools::displayError('Must be typed as follows:') . ' ' . str_replace('C', Country::getIsoById((int) Tools::getValue('id_country')), str_replace('N', '0', str_replace('L', 'A', $zip_code_format)));
}
} elseif ($zip_code_format) {
$this->errors[] = '<strong>' . Tools::displayError('Zip/ Postal code') . '</strong> ' . Tools::displayError('is required.');
} elseif ($postcode and !preg_match('/^[0-9a-zA-Z -]{4,9}$/ui', $postcode)) {
$this->errors[] = '<strong>' . Tools::displayError('Zip/ Postal code') . '</strong> ' . Tools::displayError('is invalid.');
}
}
if (Country::isNeedDniByCountryId($address->id_country) and (!Tools::getValue('dni') or !Validate::isDniLite(Tools::getValue('dni')))) {
$this->errors[] = Tools::displayError('Identification number is incorrect or has already been used.');
} elseif (!Country::isNeedDniByCountryId($address->id_country)) {
$address->dni = NULL;
}
if (!sizeof($this->errors)) {
if (Customer::customerExists(Tools::getValue('email'))) {
$this->errors[] = Tools::displayError('An account is already registered with this e-mail, please fill in the password or request a new one.');
}
if (Tools::isSubmit('newsletter')) {
$customer->ip_registration_newsletter = pSQL(Tools::getRemoteAddr());
$customer->newsletter_date_add = pSQL(date('Y-m-d H:i:s'));
}
if (!sizeof($this->errors)) {
if (!($country = new Country($address->id_country, Configuration::get('PS_LANG_DEFAULT'))) or !Validate::isLoadedObject($country)) {
die(Tools::displayError());
}
//.........这里部分代码省略.........
示例2: preProcess
public function preProcess()
{
parent::preProcess();
if ($back = Tools::getValue('back')) {
self::$smarty->assign('back', Tools::safeOutput($back));
}
if ($mod = Tools::getValue('mod')) {
self::$smarty->assign('mod', Tools::safeOutput($mod));
}
if (Tools::isSubmit('ajax') and Tools::isSubmit('type')) {
if (Tools::getValue('type') == 'delivery') {
$id_address = isset(self::$cart->id_address_delivery) ? (int) self::$cart->id_address_delivery : 0;
} elseif (Tools::getValue('type') == 'invoice') {
$id_address = (isset(self::$cart->id_address_invoice) and self::$cart->id_address_invoice != self::$cart->id_address_delivery) ? (int) self::$cart->id_address_invoice : 0;
} else {
exit;
}
} else {
$id_address = (int) Tools::getValue('id_address', 0);
}
if ($id_address) {
$this->_address = new Address((int) $id_address);
if (Validate::isLoadedObject($this->_address) and Customer::customerHasAddress((int) self::$cookie->id_customer, (int) $id_address)) {
if (Tools::isSubmit('delete')) {
if (self::$cart->id_address_invoice == $this->_address->id) {
unset(self::$cart->id_address_invoice);
}
if (self::$cart->id_address_delivery == $this->_address->id) {
unset(self::$cart->id_address_delivery);
}
if ($this->_address->delete()) {
Tools::redirect('addresses.php');
}
$this->errors[] = Tools::displayError('This address cannot be deleted.');
}
self::$smarty->assign(array('address' => $this->_address, 'id_address' => (int) $id_address));
} elseif (Tools::isSubmit('ajax')) {
exit;
} else {
Tools::redirect('addresses.php');
}
}
if (Tools::isSubmit('submitAddress')) {
$address = new Address();
$this->errors = $address->validateControler();
$address->id_customer = (int) self::$cookie->id_customer;
if (!Tools::getValue('phone') and !Tools::getValue('phone_mobile')) {
$this->errors[] = Tools::displayError('You must register at least one phone number');
}
if (!($country = new Country((int) $address->id_country)) or !Validate::isLoadedObject($country)) {
die(Tools::displayError());
}
/* US customer: normalize the address */
if ($address->id_country == Country::getByIso('US')) {
include_once _PS_TAASC_PATH_ . 'AddressStandardizationSolution.php';
$normalize = new AddressStandardizationSolution();
$address->address1 = $normalize->AddressLineStandardization($address->address1);
$address->address2 = $normalize->AddressLineStandardization($address->address2);
}
$zip_code_format = $country->zip_code_format;
if ($country->need_zip_code) {
if ($postcode = Tools::getValue('postcode') and $zip_code_format) {
$zip_regexp = '/^' . $zip_code_format . '$/ui';
$zip_regexp = str_replace(' ', '( |)', $zip_regexp);
$zip_regexp = str_replace('-', '(-|)', $zip_regexp);
$zip_regexp = str_replace('N', '[0-9]', $zip_regexp);
$zip_regexp = str_replace('L', '[a-zA-Z]', $zip_regexp);
$zip_regexp = str_replace('C', $country->iso_code, $zip_regexp);
if (!preg_match($zip_regexp, $postcode)) {
$this->errors[] = '<strong>' . Tools::displayError('Zip/ Postal code') . '</strong> ' . Tools::displayError('is invalid.') . '<br />' . Tools::displayError('Must be typed as follows:') . ' ' . str_replace('C', $country->iso_code, str_replace('N', '0', str_replace('L', 'A', $zip_code_format)));
}
} elseif ($zip_code_format) {
$this->errors[] = '<strong>' . Tools::displayError('Zip/ Postal code') . '</strong> ' . Tools::displayError('is required.');
} elseif ($postcode and !preg_match('/^[0-9a-zA-Z -]{4,9}$/ui', $postcode)) {
$this->errors[] = '<strong>' . Tools::displayError('Zip/ Postal code') . '</strong> ' . Tools::displayError('is invalid.') . '<br />' . Tools::displayError('Must be typed as follows:') . ' ' . str_replace('C', $country->iso_code, str_replace('N', '0', str_replace('L', 'A', $zip_code_format)));
}
}
if ($country->isNeedDni() and !Tools::getValue('dni') and !Validate::isDniLite(Tools::getValue('dni'))) {
$this->errors[] = Tools::displayError('Identification number is incorrect or has already been used.');
} elseif (!$country->isNeedDni()) {
$address->dni = NULL;
}
if (Configuration::get('PS_TOKEN_ENABLE') == 1 and strcmp(Tools::getToken(false), Tools::getValue('token')) and self::$cookie->isLogged(true) === true) {
$this->errors[] = Tools::displayError('Invalid token');
}
if ((int) $country->contains_states and !(int) $address->id_state) {
$this->errors[] = Tools::displayError('This country requires a state selection.');
}
if (!sizeof($this->errors)) {
if (isset($id_address)) {
$country = new Country((int) $address->id_country);
if (Validate::isLoadedObject($country) and !$country->contains_states) {
$address->id_state = 0;
}
$address_old = new Address((int) $id_address);
if (Validate::isLoadedObject($address_old) and Customer::customerHasAddress((int) self::$cookie->id_customer, (int) $address_old->id)) {
if (!Tools::isSubmit('ajax')) {
if (self::$cart->id_address_invoice == $address_old->id) {
unset(self::$cart->id_address_invoice);
}
//.........这里部分代码省略.........
示例3: processSubmitAddress
/**
* Process changes on an address
*/
protected function processSubmitAddress()
{
$address = new Address();
$this->errors = $address->validateController();
$address->id_customer = (int) $this->context->customer->id;
// Check page token
if ($this->context->customer->isLogged() && !$this->isTokenValid()) {
$this->errors[] = Tools::displayError('Invalid token.');
}
// Check phone
if (Configuration::get('PS_ONE_PHONE_AT_LEAST') && !Tools::getValue('phone') && !Tools::getValue('phone_mobile')) {
$this->errors[] = Tools::displayError('You must register at least one phone number.');
}
if ($address->id_country) {
// Check country
if (!($country = new Country($address->id_country)) || !Validate::isLoadedObject($country)) {
throw new PrestaShopException('Country cannot be loaded with address->id_country');
}
if ((int) $country->contains_states && !(int) $address->id_state) {
$this->errors[] = Tools::displayError('This country requires you to chose a State.');
}
// US customer: normalize the address
if ($address->id_country == Country::getByIso('US') && Configuration::get('PS_TAASC')) {
include_once _PS_TAASC_PATH_ . 'AddressStandardizationSolution.php';
$normalize = new AddressStandardizationSolution();
$address->address1 = $normalize->AddressLineStandardization($address->address1);
$address->address2 = $normalize->AddressLineStandardization($address->address2);
}
$postcode = Tools::getValue('postcode');
/* Check zip code format */
if ($country->zip_code_format && !$country->checkZipCode($postcode)) {
$this->errors[] = sprintf(Tools::displayError('The Zip/Postal code you\'ve entered is invalid. It must follow this format: %s'), str_replace('C', $country->iso_code, str_replace('N', '0', str_replace('L', 'A', $country->zip_code_format))));
} elseif (empty($postcode) && $country->need_zip_code) {
$this->errors[] = Tools::displayError('A Zip / Postal code is required.');
} elseif ($postcode && !Validate::isPostCode($postcode)) {
$this->errors[] = Tools::displayError('The Zip / Postal code is invalid.');
}
// Check country DNI nox fix
/*if ($country->isNeedDni() && (!Tools::getValue('dni') || !Validate::isDniLite(Tools::getValue('dni'))))
$this->errors[] = Tools::displayError('The identification number is incorrect or has already been used.');
else if (!$country->isNeedDni())
$address->dni = null;*/
if ($country->need_identification_number && (!Tools::getValue('dni') || !Validate::isDniLite(Tools::getValue('dni')))) {
$this->errors[] = Tools::displayError('The identification number is incorrect or has already been used.');
} elseif (!$country->need_identification_number) {
${$addresses_type}->dni = null;
}
}
// Check if the alias exists
if (!$this->context->customer->is_guest && !empty($_POST['alias']) && (int) $this->context->customer->id > 0) {
$id_address = Tools::getValue('id_address');
if (Configuration::get('PS_ORDER_PROCESS_TYPE') && (int) Tools::getValue('opc_id_address_' . Tools::getValue('type')) > 0) {
$id_address = Tools::getValue('opc_id_address_' . Tools::getValue('type'));
}
if (Db::getInstance()->getValue('
SELECT count(*)
FROM ' . _DB_PREFIX_ . 'address
WHERE `alias` = \'' . pSql($_POST['alias']) . '\'
AND id_address != ' . (int) $id_address . '
AND id_customer = ' . (int) $this->context->customer->id . '
AND deleted = 0') > 0) {
$this->errors[] = sprintf(Tools::displayError('The alias "%s" has already been used. Please select another one.'), Tools::safeOutput($_POST['alias']));
}
}
// Check the requires fields which are settings in the BO
$this->errors = array_merge($this->errors, $address->validateFieldsRequiredDatabase());
// Don't continue this process if we have errors !
if ($this->errors && !$this->ajax) {
return;
}
// If we edit this address, delete old address and create a new one
if (Validate::isLoadedObject($this->_address)) {
if (Validate::isLoadedObject($country) && !$country->contains_states) {
$address->id_state = 0;
}
$address_old = $this->_address;
if (Customer::customerHasAddress($this->context->customer->id, (int) $address_old->id)) {
if ($address_old->isUsed()) {
$address_old->delete();
} else {
$address->id = (int) $address_old->id;
$address->date_add = $address_old->date_add;
}
}
}
if ($this->ajax && Tools::getValue('type') == 'invoice' && Configuration::get('PS_ORDER_PROCESS_TYPE')) {
$this->errors = array_unique(array_merge($this->errors, $address->validateController()));
if (count($this->errors)) {
$return = array('hasError' => (bool) $this->errors, 'errors' => $this->errors);
die(Tools::jsonEncode($return));
}
}
// Save address
if ($result = $address->save()) {
// Update id address of the current cart if necessary
if (isset($address_old) && $address_old->isUsed()) {
$this->context->cart->updateAddressId($address_old->id, $address->id);
//.........这里部分代码省略.........
示例4: processSubmitAccount
//.........这里部分代码省略.........
Tools::redirect('index.php?controller=my-account');
}
}
}
}
} else {
$lastnameAddress = $_POST['lastname'];
$firstnameAddress = $_POST['firstname'];
// Preparing address
$address = new Address();
$_POST['lastname'] = $lastnameAddress;
$_POST['firstname'] = $firstnameAddress;
$address->id_customer = 1;
$this->errors = array_unique(array_merge($this->errors, $address->validateController()));
// US customer: normalize the address
if ($address->id_country == Country::getByIso('US')) {
include_once _PS_TAASC_PATH_ . 'AddressStandardizationSolution.php';
$normalize = new AddressStandardizationSolution();
$address->address1 = $normalize->AddressLineStandardization($address->address1);
$address->address2 = $normalize->AddressLineStandardization($address->address2);
}
$country = new Country((int) Tools::getValue('id_country'));
if ($country->need_zip_code) {
if (($postcode = Tools::getValue('postcode')) && $country->zip_code_format) {
if (!$country->checkZipCode($postcode)) {
$this->errors[] = sprintf(Tools::displayError('Zip/Postal code is invalid. Must be typed as follows: %s'), str_replace('C', $country->iso_code, str_replace('N', '0', str_replace('L', 'A', $country->zip_code_format))));
}
} elseif ($country->zip_code_format) {
$this->errors[] = Tools::displayError('Zip/Postal code is required.');
} elseif ($postcode && !preg_match('/^[0-9a-zA-Z -]{4,9}$/ui', $postcode)) {
$this->errors[] = Tools::displayError('Zip/Postal code is invalid.');
}
}
if ($country->need_identification_number && (!Tools::getValue('dni') || !Validate::isDniLite(Tools::getValue('dni')))) {
$this->errors[] = Tools::displayError('Identification number is incorrect or has already been used.');
} elseif (!$country->need_identification_number) {
$address->dni = null;
}
}
if (!@checkdate(Tools::getValue('months'), Tools::getValue('days'), Tools::getValue('years')) && !(Tools::getValue('months') == '' && Tools::getValue('days') == '' && Tools::getValue('years') == '')) {
$this->errors[] = Tools::displayError('Invalid date of birth');
}
if (!count($this->errors)) {
if (Customer::customerExists(Tools::getValue('email'))) {
$this->errors[] = Tools::displayError('An account is already registered with this e-mail, please enter your password or request a new one.', false);
}
if (Tools::isSubmit('newsletter')) {
$this->processCustomerNewsletter($customer);
}
$customer->birthday = empty($_POST['years']) ? '' : (int) $_POST['years'] . '-' . (int) $_POST['months'] . '-' . (int) $_POST['days'];
if (!Validate::isBirthDate($customer->birthday)) {
$this->errors[] = Tools::displayError('Invalid birthday.');
}
if (!count($this->errors)) {
// if registration type is in one step, we save the address
if (Configuration::get('PS_REGISTRATION_PROCESS_TYPE')) {
if (!($country = new Country($address->id_country, Configuration::get('PS_LANG_DEFAULT'))) || !Validate::isLoadedObject($country)) {
die(Tools::displayError());
}
}
$contains_state = isset($country) && is_object($country) ? (int) $country->contains_states : 0;
$id_state = isset($address) && is_object($address) ? (int) $address->id_state : 0;
if (Configuration::get('PS_REGISTRATION_PROCESS_TYPE') && $contains_state && !$id_state) {
$this->errors[] = Tools::displayError('This country requires a state selection.');
} else {
$customer->active = 1;
示例5: processSubmitAccount
//.........这里部分代码省略.........
$_POST['lastname'] = $lastnameAddress;
$_POST['firstname'] = $firstnameAddress;
$post_back = $_POST;
// Preparing addresses
foreach ($addresses_types as $addresses_type) {
${$addresses_type} = new Address();
${$addresses_type}->id_customer = 1;
if ($addresses_type == 'address_invoice') {
foreach ($_POST as $key => &$post) {
if ($tmp = Tools::getValue($key . '_invoice')) {
$post = $tmp;
}
}
}
$this->errors = array_unique(array_merge($this->errors, ${$addresses_type}->validateController()));
if ($addresses_type == 'address_invoice') {
$_POST = $post_back;
}
if (!($country = new Country(${$addresses_type}->id_country)) || !Validate::isLoadedObject($country)) {
$this->errors[] = Tools::displayError('Country cannot be loaded with address->id_country');
}
if (!$country->active) {
$this->errors[] = Tools::displayError('This country is not active.');
}
$postcode = ${$addresses_type}->postcode;
/* Check zip code format */
if ($country->zip_code_format && !$country->checkZipCode($postcode)) {
$this->errors[] = sprintf(Tools::displayError('The Zip/Postal code you\'ve entered is invalid. It must follow this format: %s'), str_replace('C', $country->iso_code, str_replace('N', '0', str_replace('L', 'A', $country->zip_code_format))));
} elseif (empty($postcode) && $country->need_zip_code) {
$this->errors[] = Tools::displayError('A Zip / Postal code is required.');
} elseif ($postcode && !Validate::isPostCode($postcode)) {
$this->errors[] = Tools::displayError('The Zip / Postal code is invalid.');
}
if ($country->need_identification_number && (!Tools::getValue('dni') || !Validate::isDniLite(Tools::getValue('dni')))) {
$this->errors[] = Tools::displayError('The identification number is incorrect or has already been used.');
} elseif (!$country->need_identification_number) {
${$addresses_type}->dni = null;
}
if (Tools::isSubmit('submitAccount') || Tools::isSubmit('submitGuestAccount')) {
if (!($country = new Country(${$addresses_type}->id_country, Configuration::get('PS_LANG_DEFAULT'))) || !Validate::isLoadedObject($country)) {
$this->errors[] = Tools::displayError('Country is invalid');
}
}
$contains_state = isset($country) && is_object($country) ? (int) $country->contains_states : 0;
$id_state = isset(${$addresses_type}) && is_object(${$addresses_type}) ? (int) ${$addresses_type}->id_state : 0;
if ((Tools::isSubmit('submitAccount') || Tools::isSubmit('submitGuestAccount')) && $contains_state && !$id_state) {
$this->errors[] = Tools::displayError('This country requires you to choose a State.');
}
}
}
if (!@checkdate(Tools::getValue('months'), Tools::getValue('days'), Tools::getValue('years')) && !(Tools::getValue('months') == '' && Tools::getValue('days') == '' && Tools::getValue('years') == '')) {
$this->errors[] = Tools::displayError('Invalid date of birth');
}
if (!count($this->errors)) {
if (Customer::customerExists(Tools::getValue('email'))) {
$this->errors[] = Tools::displayError('An account using this email address has already been registered. Please enter a valid password or request a new one. ', false);
}
$this->processCustomerNewsletter($customer);
$customer->birthday = empty($_POST['years']) ? '' : (int) Tools::getValue('years') . '-' . (int) Tools::getValue('months') . '-' . (int) Tools::getValue('days');
if (!Validate::isBirthDate($customer->birthday)) {
$this->errors[] = Tools::displayError('Invalid date of birth');
}
if (!count($this->errors)) {
$customer->active = 1;
// New Guest customer
if (Tools::isSubmit('is_new_customer')) {
示例6: processSubmitAddress
/**
* Process changes on an address
*/
protected function processSubmitAddress()
{
$address = new Address();
$this->errors = $address->validateController();
$address->id_customer = (int) $this->context->customer->id;
// Check page token
if ($this->context->customer->isLogged() && !$this->isTokenValid()) {
$this->errors[] = Tools::displayError('Invalid token.');
}
// Check phone
if (Configuration::get('PS_ONE_PHONE_AT_LEAST') && !Tools::getValue('phone') && !Tools::getValue('phone_mobile')) {
$this->errors[] = Tools::displayError('You must register at least one phone number.');
}
if ($address->id_country) {
// Check country
if (!($country = new Country($address->id_country)) || !Validate::isLoadedObject($country)) {
throw new PrestaShopException('Country cannot be loaded with address->id_country');
}
// if ((int)$country->contains_states && !(int)$address->id_state)
// $this->errors[] = Tools::displayError('This country requires you to chose a State.');
if (!$country->active) {
$this->errors[] = Tools::displayError('This country is not active.');
}
// Check country DNI
if ($country->isNeedDni() && (!Tools::getValue('dni') || !Validate::isDniLite(Tools::getValue('dni')))) {
$this->errors[] = Tools::displayError('The identification number is incorrect or has already been used.');
} elseif (!$country->isNeedDni()) {
$address->dni = null;
}
}
// Check if the alias exists
if (!$this->context->customer->is_guest && !empty($_POST['alias']) && (int) $this->context->customer->id > 0) {
$id_address = Tools::getValue('id_address');
if (Configuration::get('PS_ORDER_PROCESS_TYPE') && (int) Tools::getValue('opc_id_address_' . Tools::getValue('type')) > 0) {
$id_address = Tools::getValue('opc_id_address_' . Tools::getValue('type'));
}
if (Address::aliasExist(Tools::getValue('alias'), (int) $id_address, (int) $this->context->customer->id)) {
$this->errors[] = sprintf(Tools::displayError('The alias "%s" has already been used. Please select another one.'), Tools::safeOutput(Tools::getValue('alias')));
}
}
// Check the requires fields which are settings in the BO
$this->errors = array_merge($this->errors, $address->validateFieldsRequiredDatabase());
// Don't continue this process if we have errors !
if ($this->errors && !$this->ajax) {
return;
}
// If we edit this address, delete old address and create a new one
if (Validate::isLoadedObject($this->_address)) {
if (Validate::isLoadedObject($country) && !$country->contains_states) {
$address->id_state = 0;
}
$address_old = $this->_address;
if (Customer::customerHasAddress($this->context->customer->id, (int) $address_old->id)) {
if ($address_old->isUsed()) {
$address_old->delete();
} else {
$address->id = (int) $address_old->id;
$address->date_add = $address_old->date_add;
}
}
}
if ($this->ajax && Configuration::get('PS_ORDER_PROCESS_TYPE')) {
$this->errors = array_unique(array_merge($this->errors, $address->validateController()));
if (count($this->errors)) {
$return = array('hasError' => (bool) $this->errors, 'errors' => $this->errors);
$this->ajaxDie(Tools::jsonEncode($return));
}
}
// Save address
if ($result = $address->save()) {
// Update id address of the current cart if necessary
if (isset($address_old) && $address_old->isUsed()) {
$this->context->cart->updateAddressId($address_old->id, $address->id);
} else {
// Update cart address
$this->context->cart->autosetProductAddress();
}
if ((bool) Tools::getValue('select_address', false) == true || Tools::getValue('type') == 'invoice' && Configuration::get('PS_ORDER_PROCESS_TYPE')) {
$this->context->cart->id_address_invoice = (int) $address->id;
} elseif (Configuration::get('PS_ORDER_PROCESS_TYPE')) {
$this->context->cart->id_address_invoice = (int) $this->context->cart->id_address_delivery;
}
$this->context->cart->update();
if ($this->ajax) {
$return = array('hasError' => (bool) $this->errors, 'errors' => $this->errors, 'id_address_delivery' => (int) $this->context->cart->id_address_delivery, 'id_address_invoice' => (int) $this->context->cart->id_address_invoice);
$this->ajaxDie(Tools::jsonEncode($return));
}
// Redirect to old page or current page
if ($back = Tools::getValue('back')) {
if ($back == Tools::secureReferrer(Tools::getValue('back'))) {
Tools::redirect(html_entity_decode($back));
}
$mod = Tools::getValue('mod');
Tools::redirect('index.php?controller=' . $back . ($mod ? '&back=' . $mod : ''));
} else {
Tools::redirect('index.php?controller=addresses');
}
//.........这里部分代码省略.........
示例7: processSubmitSellerinfo
protected function processSubmitSellerinfo()
{
$cugxxpwlfps = "firstname";
${"GLOBALS"}["gmnuknt"] = "lastname";
$eoemtqhasop = "passwd";
${$cugxxpwlfps} = trim(Tools::getValue("firstname"));
${${"GLOBALS"}["gmnuknt"]} = trim(Tools::getValue("lastname"));
$ufvrdeas = "customer";
$seqgjbwpajto = "email";
${$eoemtqhasop} = trim(Tools::getValue("passwd"));
${${"GLOBALS"}["cyutgacgwj"]} = trim(Tools::getValue("email"));
if (empty(${${"GLOBALS"}["efoxtmc"]})) {
$this->errors[] = Tools::displayError("First name is required field.");
}
if (empty(${${"GLOBALS"}["ptvgwodrri"]})) {
$this->errors[] = Tools::displayError("Last name is required field.");
}
${"GLOBALS"}["yqbqcnmck"] = "email";
${"GLOBALS"}["utmvhz"] = "passwd";
${"GLOBALS"}["tgijpv"] = "country";
if (empty(${$seqgjbwpajto})) {
$this->errors[] = Tools::displayError("An email address required.");
} elseif (!Validate::isEmail(${${"GLOBALS"}["yqbqcnmck"]})) {
$this->errors[] = Tools::displayError("Invalid email address.");
} elseif (empty(${${"GLOBALS"}["trolpj"]})) {
$this->errors[] = Tools::displayError("Password is required.");
} elseif (!Validate::isPasswd(${${"GLOBALS"}["utmvhz"]})) {
$this->errors[] = Tools::displayError("Invalid password.");
}
if (Customer::customerExists(${${"GLOBALS"}["cyutgacgwj"]})) {
$this->errors[] = Tools::displayError("An account using this email address has already been registered.", false);
}
if (empty($_POST["postcode"])) {
$this->errors[] = Tools::displayError("Postcode is required field.");
}
${"GLOBALS"}["hdrwdzkfjgu"] = "zip_code_format";
$this->errors = array_merge($this->errors, $this->sellerinfo->validateController());
if (!(${${"GLOBALS"}["tgijpv"]} = new Country($this->sellerinfo->id_country)) || !Validate::isLoadedObject(${${"GLOBALS"}["lqineuzwfyx"]})) {
throw new PrestaShopException("Country cannot be loaded with address->id_country");
}
if ((int) $country->contains_states && !(int) $this->sellerinfo->id_state) {
$this->errors[] = Tools::displayError("This country requires a state selection.");
}
${${"GLOBALS"}["hdrwdzkfjgu"]} = $country->zip_code_format;
$mlynabrtypu = "firstname";
if ($country->need_zip_code) {
$pttheklyj = "zip_code_format";
$rbigoogxf = "postcode";
$eyigihyebms = "postcode";
${"GLOBALS"}["plwthxmbdlo"] = "zip_code_format";
$cxtukbkhyi = "postcode";
if ((${$rbigoogxf} = Tools::getValue("postcode")) && ${${"GLOBALS"}["sjdohmx"]}) {
${"GLOBALS"}["svnohdsrl"] = "zip_code_format";
${"GLOBALS"}["izxvxdtqx"] = "zip_regexp";
${${"GLOBALS"}["izxvxdtqx"]} = "/^" . ${${"GLOBALS"}["sjdohmx"]} . "\$/ui";
${"GLOBALS"}["qrxaqqsef"] = "zip_regexp";
${"GLOBALS"}["sjdvshef"] = "zip_regexp";
$tvchozgsi = "zip_regexp";
${"GLOBALS"}["ttwdyf"] = "zip_regexp";
$vvtylsjtq = "postcode";
${"GLOBALS"}["ncdyrvfvd"] = "zip_regexp";
${$tvchozgsi} = str_replace(" ", "( |)", ${${"GLOBALS"}["ncdyrvfvd"]});
${"GLOBALS"}["jzxhhwlf"] = "zip_regexp";
${${"GLOBALS"}["sjdvshef"]} = str_replace("-", "(-|)", ${${"GLOBALS"}["rjvnbwy"]});
${${"GLOBALS"}["rjvnbwy"]} = str_replace("N", "[0-9]", ${${"GLOBALS"}["qrxaqqsef"]});
${${"GLOBALS"}["rjvnbwy"]} = str_replace("L", "[a-zA-Z]", ${${"GLOBALS"}["jzxhhwlf"]});
${${"GLOBALS"}["ttwdyf"]} = str_replace("C", $country->iso_code, ${${"GLOBALS"}["rjvnbwy"]});
if (!preg_match(${${"GLOBALS"}["rjvnbwy"]}, ${$vvtylsjtq})) {
$this->errors[] = "<strong>" . Tools::displayError("Zip / Postal code") . "</strong> " . Tools::displayError("is invalid.") . "<br />" . Tools::displayError("Must be typed as follows:") . " " . str_replace("C", $country->iso_code, str_replace("N", "0", str_replace("L", "A", ${${"GLOBALS"}["svnohdsrl"]})));
}
} else {
if (${$pttheklyj}) {
$this->errors[] = "<strong>" . Tools::displayError("Zip / Postal code") . "</strong> " . Tools::displayError("is required.");
} else {
if (${$eyigihyebms} && !preg_match("/^[0-9a-zA-Z -]{4,9}\$/ui", ${$cxtukbkhyi})) {
$this->errors[] = "<strong>" . Tools::displayError("Zip / Postal code") . "</strong> " . Tools::displayError("is invalid.") . "<br />" . Tools::displayError("Must be typed as follows:") . " " . str_replace("C", $country->iso_code, str_replace("N", "0", str_replace("L", "A", ${${"GLOBALS"}["plwthxmbdlo"]})));
}
}
}
}
if ($country->isNeedDni() && (!Tools::getValue("dni") || !Validate::isDniLite(Tools::getValue("dni")))) {
$this->errors[] = Tools::displayError("Identification number is incorrect or has already been used.");
}
$this->sellerinfo->dni = Tools::getValue("dni");
$this->sellerinfo->latitude = Tools::getValue("latitude");
$this->sellerinfo->longitude = Tools::getValue("longitude");
$this->sellerinfo->id_sellertype1 = Tools::getValue("id_sellertype1");
$this->sellerinfo->id_sellertype2 = Tools::getValue("id_sellertype2");
SellerInfo::processLogoUpload($this->sellerinfo);
$this->errors = array_merge($this->errors, $this->sellerinfo->validateController());
if (!empty($this->errors)) {
return;
}
${${"GLOBALS"}["rdkumopydcrd"]} = new Customer();
$customer->firstname = ${$mlynabrtypu};
$customer->lastname = ${${"GLOBALS"}["ptvgwodrri"]};
$customer->email = ${${"GLOBALS"}["cyutgacgwj"]};
$customer->is_guest = 1;
$customer->active = 1;
$lkenglu = "customer";
//.........这里部分代码省略.........
示例8: preProcess
public function preProcess()
{
parent::preProcess();
if ($back = Tools::getValue('back')) {
self::$smarty->assign('back', Tools::safeOutput($back));
}
if ($mod = Tools::getValue('mod')) {
self::$smarty->assign('mod', Tools::safeOutput($mod));
}
if (Tools::isSubmit('ajax') and Tools::isSubmit('type')) {
if (Tools::getValue('type') == 'delivery') {
$id_address = isset(self::$cart->id_address_delivery) ? (int) self::$cart->id_address_delivery : 0;
} elseif (Tools::getValue('type') == 'invoice') {
$id_address = (isset(self::$cart->id_address_invoice) and self::$cart->id_address_invoice != self::$cart->id_address_delivery) ? (int) self::$cart->id_address_invoice : 0;
} else {
exit;
}
} else {
$id_address = (int) Tools::getValue('id_address', 0);
}
if ($id_address) {
$this->_address = new Address((int) $id_address);
if (Validate::isLoadedObject($this->_address) and Customer::customerHasAddress((int) self::$cookie->id_customer, (int) $id_address)) {
if (Tools::isSubmit('delete')) {
if (self::$cart->id_address_invoice == $this->_address->id) {
unset(self::$cart->id_address_invoice);
}
if (self::$cart->id_address_delivery == $this->_address->id) {
unset(self::$cart->id_address_delivery);
}
if ($this->_address->delete()) {
Tools::redirect('addresses.php');
}
$this->errors[] = Tools::displayError('This address cannot be deleted.');
}
self::$smarty->assign(array('address' => $this->_address, 'id_address' => (int) $id_address));
} elseif (Tools::isSubmit('ajax')) {
exit;
} else {
Tools::redirect('addresses.php');
}
}
if (Tools::isSubmit('submitAddress')) {
$address = new Address();
$this->errors = $address->validateControler();
$address->id_customer = (int) self::$cookie->id_customer;
if (!Tools::getValue('phone') and !Tools::getValue('phone_mobile')) {
$this->errors[] = Tools::displayError('You must register at least one phone number');
}
if (!($country = new Country((int) $address->id_country)) or !Validate::isLoadedObject($country)) {
die(Tools::displayError());
}
/* US customer: normalize the address */
if ($address->id_country == Country::getByIso('US')) {
include_once _PS_TAASC_PATH_ . 'AddressStandardizationSolution.php';
$normalize = new AddressStandardizationSolution();
$address->address1 = $normalize->AddressLineStandardization($address->address1);
$address->address2 = $normalize->AddressLineStandardization($address->address2);
}
//remove zipcode verification
/*
$zip_code_format = $country->zip_code_format;
if ($country->need_zip_code)
{
if (($postcode = Tools::getValue('postcode')) AND $zip_code_format)
{
$zip_regexp = '/^'.$zip_code_format.'$/ui';
$zip_regexp = str_replace(' ', '( |)', $zip_regexp);
$zip_regexp = str_replace('-', '(-|)', $zip_regexp);
$zip_regexp = str_replace('N', '[0-9]', $zip_regexp);
$zip_regexp = str_replace('L', '[a-zA-Z]', $zip_regexp);
$zip_regexp = str_replace('C', $country->iso_code, $zip_regexp);
if (!preg_match($zip_regexp, $postcode))
$this->errors[] = '<strong>'.Tools::displayError('Post/Zip Code mentioned is incorrect.').'</strong> ';
}
elseif ($zip_code_format)
$this->errors[] = '<strong>'.Tools::displayError('Post/Zip Code mentioned is incorrect.').'</strong> ';
elseif ($postcode AND !preg_match('/^[0-9a-zA-Z -]{4,9}$/ui', $postcode))
$this->errors[] = '<strong>'.Tools::displayError('Post/Zip Code mentioned is incorrect.').'</strong> ';
}
*/
//validate pincode and assign possible payment options
$op = $cod = 0;
Carrier::getPreferredCarriers($postcode, $cod, $op);
if ($op == 0 && $cod == 0) {
$this->errors[] = 'We are sorry but we do not provide service to this region as of now. However, we keep adding new locations with time and would request you to check our website a few weeks later. We apologise for the inconvenience caused. ';
}
if ($country->isNeedDni() and (!Tools::getValue('dni') or !Validate::isDniLite(Tools::getValue('dni')))) {
$this->errors[] = Tools::displayError('Identification number is incorrect or has already been used.');
} elseif (!$country->isNeedDni()) {
$address->dni = NULL;
}
if (Configuration::get('PS_TOKEN_ENABLE') == 1 and strcmp(Tools::getToken(false), Tools::getValue('token')) and self::$cookie->isLogged(true) === true) {
$this->errors[] = Tools::displayError('Invalid token');
}
if ((int) $country->contains_states and !(int) $address->id_state) {
$this->errors[] = Tools::displayError('This country requires a state selection.');
}
if (!sizeof($this->errors)) {
if (isset($id_address)) {
//.........这里部分代码省略.........
示例9: processSubmitAddress
/**
* Process changes on an address
*/
protected function processSubmitAddress()
{
/*if ($this->context->customer->is_guest)
Tools::redirect('index.php?controller=addresses');*/
$address = new Address();
$this->errors = $address->validateController();
$address->id_customer = (int) $this->context->customer->id;
// Check page token
if ($this->context->customer->isLogged() && !$this->isTokenValid()) {
$this->errors[] = Tools::displayError('Invalid token');
}
// Check phone
if (!Tools::getValue('phone') && !Tools::getValue('phone_mobile')) {
$this->errors[] = Tools::displayError('You must register at least one phone number');
}
if ($address->id_country) {
// Check country
if (!($country = new Country($address->id_country)) || !Validate::isLoadedObject($country)) {
throw new PrestaShopException('Country cannot be loaded with address->id_country');
}
if ((int) $country->contains_states && !(int) $address->id_state) {
$this->errors[] = Tools::displayError('This country requires a state selection.');
}
// US customer: normalize the address
if ($address->id_country == Country::getByIso('US')) {
include_once _PS_TAASC_PATH_ . 'AddressStandardizationSolution.php';
$normalize = new AddressStandardizationSolution();
$address->address1 = $normalize->AddressLineStandardization($address->address1);
$address->address2 = $normalize->AddressLineStandardization($address->address2);
}
// Check country zip code
$zip_code_format = $country->zip_code_format;
if ($country->need_zip_code) {
if (($postcode = Tools::getValue('postcode')) && $zip_code_format) {
if (!$country->checkZipCode($postcode)) {
$this->errors[] = sprintf(Tools::displayError('Zip/Postal code is invalid. Must be typed as follows: %s'), str_replace('C', $country->iso_code, str_replace('N', '0', str_replace('L', 'A', $country->zip_code_format))));
}
} else {
if ($zip_code_format) {
$this->errors[] = Tools::displayError('Zip/Postal code is required.');
} else {
if ($postcode && !preg_match('/^[0-9a-zA-Z -]{4,9}$/ui', $postcode)) {
$this->errors[] = sprintf(Tools::displayError('Zip/Postal code is invalid. Must be typed as follows: %s'), str_replace('C', $country->iso_code, str_replace('N', '0', str_replace('L', 'A', $country->zip_code_format))));
}
}
}
}
// Check country DNI
if ($country->isNeedDni() && (!Tools::getValue('dni') || !Validate::isDniLite(Tools::getValue('dni')))) {
$this->errors[] = Tools::displayError('Identification number is incorrect or has already been used.');
} else {
if (!$country->isNeedDni()) {
$address->dni = null;
}
}
}
// Check if the alias exists
if (!empty($_POST['alias']) && (int) $this->context->customer->id > 0 && Db::getInstance()->getValue('
SELECT count(*)
FROM ' . _DB_PREFIX_ . 'address
WHERE `alias` = \'' . pSql($_POST['alias']) . '\'
AND id_address != ' . (int) Tools::getValue('id_address') . '
AND id_customer = ' . (int) $this->context->customer->id . '
AND deleted = 0') > 0) {
$this->errors[] = sprintf(Tools::displayError('The alias "%s" is already used, please chose another one.'), Tools::safeOutput($_POST['alias']));
}
// Check the requires fields which are settings in the BO
$this->errors = array_merge($this->errors, $address->validateFieldsRequiredDatabase());
// Don't continue this process if we have errors !
if ($this->errors && !$this->ajax) {
return;
}
// If we edit this address, delete old address and create a new one
if (Validate::isLoadedObject($this->_address)) {
if (Validate::isLoadedObject($country) && !$country->contains_states) {
$address->id_state = 0;
}
$address_old = $this->_address;
if (Customer::customerHasAddress($this->context->customer->id, (int) $address_old->id)) {
if ($address_old->isUsed()) {
$address_old->delete();
} else {
$address->id = (int) $address_old->id;
$address->date_add = $address_old->date_add;
}
}
}
// Save address
if ($result = $address->save()) {
// Update id address of the current cart if necessary
if (isset($address_old) && $address_old->isUsed()) {
$this->context->cart->updateAddressId($address_old->id, $address->id);
} else {
// Update cart address
$this->context->cart->autosetProductAddress();
}
if ($this->ajax) {
//.........这里部分代码省略.........
示例10: processSubmitSellerinfo
//.........这里部分代码省略.........
}
$this->errors = array_merge($this->errors, $this->sellerinfo->validateController());
$this->sellerinfo->id_customer = self::$cookie->id_customer;
if (Module::isInstalled("agilemultipleshop")) {
$mcovgfrp = "shop_name";
${"GLOBALS"}["xdpblji"] = "seller_shopurl";
if (empty(${$mcovgfrp})) {
$this->errors[] = Tools::displayError("The shop name can not be empty.");
}
if (empty($_POST["virtual_uri"]) and (int) Configuration::get("ASP_SHOP_URL_MODE") == agilemultipleshop::SHOP_URL_MODE_VIRTUAL) {
$this->errors[] = Tools::displayError("The shop Virtual Uri can not be empty.");
}
${"GLOBALS"}["edessnqo"] = "id_found";
${"GLOBALS"}["kkzhciyk"] = "seller_shop";
if ($this->sellerinfo->id_shop <= 1) {
$this->sellerinfo->id_shop = 0;
}
${${"GLOBALS"}["kkzhciyk"]} = new Shop($this->sellerinfo->id_shop);
if (Shop::shop_name_duplicated(${${"GLOBALS"}["oxjolt"]}, $seller_shop->id)) {
$this->errors[] = Tools::displayError("The shop name you select has been used by other seller. Please choose a new one.");
}
${"GLOBALS"}["asepnxuok"] = "seller_shop";
if ($this->errors) {
return;
}
if (!Validate::isLoadedObject(${${"GLOBALS"}["asepnxuok"]})) {
$this->sellerinfo->id_shop = AgileMultipleShop::create_new_shop($this->sellerinfo->id_seller, ${${"GLOBALS"}["oxjolt"]});
$this->sellerinfo->update();
${${"GLOBALS"}["esrnnrtkg"]} = new Shop($this->sellerinfo->id_shop);
}
${${"GLOBALS"}["xdpblji"]} = new ShopUrl(Shop::get_main_url_id($seller_shop->id));
${${"GLOBALS"}["edessnqo"]} = $seller_shopurl->canAddThisUrl($seller_shopurl->domain, $seller_shopurl->domain_ssl, $seller_shopurl->physical_uri, ${${"GLOBALS"}["uovivsqns"]});
if (intval(${${"GLOBALS"}["vphoqso"]}) > 0) {
$this->errors[] = Tools::displayError("The uri you select has been used by other seller. Please choose a new one.");
}
}
${"GLOBALS"}["uehqptpfhppm"] = "seller_shop";
if (!(${${"GLOBALS"}["flggvi"]} = new Country($this->sellerinfo->id_country)) || !Validate::isLoadedObject(${$famsbcd})) {
throw new PrestaShopException("Country cannot be loaded with address->id_country");
}
if ((int) $country->contains_states && !(int) $this->sellerinfo->id_state) {
$this->errors[] = Tools::displayError("This country requires a state selection.");
}
${$uskhfeodhv} = $country->zip_code_format;
if ($country->need_zip_code) {
$guefxsgyxvp = "zip_code_format";
${"GLOBALS"}["ayucbbdhdhcq"] = "zip_code_format";
$krvjmkmqh = "postcode";
${"GLOBALS"}["smbwfoxbj"] = "zip_code_format";
if ((${${"GLOBALS"}["wnwubvg"]} = Tools::getValue("postcode")) && ${${"GLOBALS"}["ayucbbdhdhcq"]}) {
${"GLOBALS"}["gusjike"] = "zip_regexp";
${"GLOBALS"}["bgahkjn"] = "zip_regexp";
$edhlvb = "zip_regexp";
${"GLOBALS"}["yvbcolkxptn"] = "zip_regexp";
$pslxhegowq = "zip_regexp";
${${"GLOBALS"}["ctdciodhb"]} = "/^" . ${${"GLOBALS"}["ebwpvmqblmd"]} . "\$/ui";
${"GLOBALS"}["mivinoyltqoh"] = "zip_regexp";
${$pslxhegowq} = str_replace(" ", "( |)", ${${"GLOBALS"}["ctdciodhb"]});
${${"GLOBALS"}["mivinoyltqoh"]} = str_replace("-", "(-|)", ${${"GLOBALS"}["bgahkjn"]});
${${"GLOBALS"}["ctdciodhb"]} = str_replace("N", "[0-9]", ${${"GLOBALS"}["gusjike"]});
${${"GLOBALS"}["ctdciodhb"]} = str_replace("L", "[a-zA-Z]", ${${"GLOBALS"}["ctdciodhb"]});
${${"GLOBALS"}["ctdciodhb"]} = str_replace("C", $country->iso_code, ${${"GLOBALS"}["yvbcolkxptn"]});
// if (!preg_match(${$edhlvb}, ${${"GLOBALS"}["wnwubvg"]}))
// $this->errors[] = "<strong>" . Tools::displayError("Zip / Postal code") . "</strong> " . Tools::displayError("is invalid.") . "<br />" . Tools::displayError("Must be typed as follows:") . " " . str_replace("C", $country->iso_code, str_replace("N", "0", str_replace("L", "A", ${${"GLOBALS"}["ebwpvmqblmd"]})));
}
/*else if (${$guefxsgyxvp})
$this->errors[] = "<strong>" . Tools::displayError("Zip / Postal code") . "</strong> " . Tools::displayError("is required.");
else if (${${"GLOBALS"}["wnwubvg"]} && !preg_match("/^[0-9a-zA-Z -]{4,9}\$/ui", ${$krvjmkmqh}))
$this->errors[] = "<strong>" . Tools::displayError("Zip / Postal code") . "</strong> " . Tools::displayError("is invalid.") . "<br />" . Tools::displayError("Must be typed as follows:") . " " . str_replace("C", $country->iso_code, str_replace("N", "0", str_replace("L", "A", ${${"GLOBALS"}["smbwfoxbj"]})));
*/
}
if ($country->isNeedDni() && (!Tools::getValue("dni") || !Validate::isDniLite(Tools::getValue("dni")))) {
$this->errors[] = Tools::displayError("Identification number is incorrect or has already been used.");
}
$this->sellerinfo->dni = Tools::getValue("dni");
$this->sellerinfo->latitude = Tools::getValue("latitude");
$this->sellerinfo->longitude = Tools::getValue("longitude");
$this->sellerinfo->id_sellertype1 = Tools::getValue("id_sellertype1");
$this->sellerinfo->id_sellertype2 = Tools::getValue("id_sellertype2");
// echo '<pre>', print_r($_FILES, true) , '</pre>';
SellerInfo::processLogoUpload($this->sellerinfo);
SellerInfo::processLicenseUpload($this->sellerinfo);
$this->errors = array_merge($this->errors, $this->sellerinfo->validateController());
if (!empty($this->errors)) {
return;
}
$this->sellerinfo->save();
if (Module::isInstalled("agilemultipleshop") and Validate::isLoadedObject(${${"GLOBALS"}["uehqptpfhppm"]})) {
$wrheluzg = "shop_name";
$seller_shop->name = ${$wrheluzg};
$seller_shop->save();
${"GLOBALS"}["sxuwmytjl"] = "virtual_uri";
$seller_shopurl->virtual_uri = ${${"GLOBALS"}["sxuwmytjl"]};
$seller_shopurl->save();
Tools::generateHtaccess();
}
if (empty($this->errors)) {
self::$smarty->assign("cfmmsg_flag", 1);
}
}
示例11: postProcess
public function postProcess()
{
if (!$this->isOpcModuleActive()) {
return parent::postProcess();
}
$inv_first_on = Configuration::get('OPC_INVOICE_FIRST') == "1";
if (Tools::isSubmit('submitAddress') && Tools::isSubmit('ajax')) {
if (Tools::isSubmit('type')) {
if (Tools::getValue('type') == 'delivery') {
if (!$inv_first_on) {
$id_address = isset($this->context->cart->id_address_delivery) ? (int) $this->context->cart->id_address_delivery : 0;
} else {
$id_address = (Tools::isSubmit('id_address') and (int) Tools::getValue('id_address', 0) != $this->context->cart->id_address_invoice) ? (int) Tools::getValue('id_address', 0) : 0;
}
} elseif (Tools::getValue('type') == 'invoice') {
if (!$inv_first_on) {
$id_address = (Tools::isSubmit('id_address') and (int) Tools::getValue('id_address', 0) != $this->context->cart->id_address_delivery) ? (int) Tools::getValue('id_address', 0) : 0;
} else {
$id_address = isset($this->context->cart->id_address_invoice) ? (int) $this->context->cart->id_address_invoice : 0;
}
} else {
exit;
}
} else {
$id_address = (int) Tools::getValue('id_address', 0);
}
if (Tools::getValue('alias') == Tools::getValue('default_alias') && Tools::getValue('address1') && trim(Tools::getValue('address1')) != "") {
$_POST['alias'] = Tools::substr(preg_replace('/[;#]/', '_', Tools::getValue('address1')), 0, 32);
}
$address = new Address();
$this->errors = $address->validateController();
if (Tools::getValue('type') == 'invoice' && isset($id_address) && $id_address > 0) {
$this->context->cart->id_address_invoice = $id_address;
$this->context->cart->update();
}
$address_old = new Address((int) $id_address);
if (!sizeof($this->errors) && isset($id_address) && (int) $id_address > 0 && Validate::isLoadedObject($address_old) and Customer::customerHasAddress((int) $this->context->cookie->id_customer, (int) $address_old->id)) {
if ($address_old->isUsed() && $address_old->isDifferent($address)) {
$address_1 = new Address();
$_POST['alias'] = Tools::substr(preg_replace('/[;#]/', '_', Tools::getValue('address1')), 0, 32);
$this->errors = $address_1->validateController();
$address_1->id_customer = (int) $this->context->cookie->id_customer;
if ((!Tools::getValue('phone') and !Tools::getValue('phone_mobile')) || (!($country = new Country((int) $address_1->id_country)) or !Validate::isLoadedObject($country)) || ($country->isNeedDni() and (!Tools::getValue('dni') or !Validate::isDniLite(Tools::getValue('dni')))) || ((int) $country->contains_states and !(int) $address_1->id_state)) {
} elseif ($result = $address_1->save()) {
$id_address = $address_1->id;
if (Tools::getValue('type') == 'delivery') {
if ($this->context->cart->id_address_delivery == $this->context->cart->id_address_invoice) {
$this->context->cart->id_address_invoice = (int) $address_1->id;
}
$this->context->cart->id_address_delivery = (int) $address_1->id;
$this->context->cart->update();
}
if (Tools::getValue('type') == 'invoice') {
if ($this->context->cart->id_address_delivery == $this->context->cart->id_address_invoice) {
$this->context->cart->id_address_delivery = (int) $address_1->id;
}
$this->context->cart->id_address_invoice = (int) $address_1->id;
$this->context->cart->update();
}
}
}
}
$this->_processSubmitAddress($id_address, Tools::getValue('type'));
} elseif (Tools::isSubmit('partialSubmitAddress')) {
// called separately for delivery country/state change and invoice country/state change
$is_separate_invoice_address = Tools::getValue('invoice_address');
$is_separate_delivery_address = Tools::getValue('delivery_address');
$type = Tools::getValue('type');
$id_country = Tools::getValue('id_country');
$id_state = Tools::getValue('id_state');
$postcode = Tools::getValue('postcode');
$city = Tools::getValue('city');
$firstname = Tools::getValue('firstname');
$lastname = Tools::getValue('lastname');
$addr1 = Tools::getValue('address1');
$id_address_delivery = 0;
$id_address_invoice = 0;
$create_different_delivery_address = 0;
$create_different_invoice_address = 0;
$last_addr_id = 0;
$last_addr_ids_tmp = Customer::getLastTwoCustomerAddressIds($this->context->cart->id_customer);
if ($id_country !== false && $id_state !== false) {
if ($type == 'delivery' && isset($this->context->cart->id_address_delivery) && $this->context->cart->id_address_delivery > 0) {
$address_old1 = new Address((int) $this->context->cart->id_address_delivery);
$address1 = new Address();
$errors1 = $address1->validateController();
if (Validate::isLoadedObject($address_old1) && $address_old1->isUsed() && $address_old1->isDifferent($address1, true)) {
$create_different_delivery_address = 1;
}
}
if ($is_separate_invoice_address) {
if ($this->context->cart->id_address_delivery == $this->context->cart->id_address_invoice) {
$create_different_invoice_address = 1;
}
if (isset($last_addr_ids_tmp) && $last_addr_ids_tmp != false && is_array($last_addr_ids_tmp) && count($last_addr_ids_tmp) > 0) {
foreach ($last_addr_ids_tmp as $item) {
if ($item != $this->context->cart->id_address_delivery) {
$last_addr_id = $item;
break;
}
//.........这里部分代码省略.........
示例12: postProcess
public function postProcess()
{
if (!$this->isOpcModuleActive()) {
return parent::postProcess();
}
$inv_first_on = Configuration::get('OPC_INVOICE_FIRST') == "1";
// handle case when already used address (assigned to an order) is being changed - we need to create new one and save it's reference to order
if (Tools::isSubmit('submitAddress') && Tools::isSubmit('ajax')) {
if (Tools::isSubmit('type')) {
if (Tools::getValue('type') == 'delivery') {
if (!$inv_first_on) {
$id_address = isset($this->context->cart->id_address_delivery) ? (int) $this->context->cart->id_address_delivery : 0;
} else {
$id_address = (Tools::isSubmit('id_address') and (int) Tools::getValue('id_address', 0) != $this->context->cart->id_address_invoice) ? (int) Tools::getValue('id_address', 0) : 0;
}
} elseif (Tools::getValue('type') == 'invoice') {
//$id_address = (isset($this->context->cart->id_address_invoice) AND $this->context->cart->id_address_invoice != $this->context->cart->id_address_delivery) ? (int)$this->context->cart->id_address_invoice : 0;
if (!$inv_first_on) {
$id_address = (Tools::isSubmit('id_address') and (int) Tools::getValue('id_address', 0) != $this->context->cart->id_address_delivery) ? (int) Tools::getValue('id_address', 0) : 0;
} else {
$id_address = isset($this->context->cart->id_address_invoice) ? (int) $this->context->cart->id_address_invoice : 0;
}
} else {
exit;
}
} else {
$id_address = (int) Tools::getValue('id_address', 0);
}
if (Tools::getValue('alias') == Tools::getValue('default_alias') && Tools::getValue('address1') && trim(Tools::getValue('address1')) != "") {
$_POST['alias'] = Tools::substr(preg_replace('/[;#]/', '_', Tools::getValue('address1')), 0, 32);
}
$address = new Address();
$this->errors = $address->validateController();
// AuthController sets (hardocded) invoice address to be same as delivery, because of guest checkout can have
// only delivery address (in standard OPC)
if (Tools::getValue('type') == 'invoice' && isset($id_address) && $id_address > 0) {
$this->context->cart->id_address_invoice = $id_address;
$this->context->cart->update();
}
$address_old = new Address((int) $id_address);
if (!sizeof($this->errors) && isset($id_address) && (int) $id_address > 0 && Validate::isLoadedObject($address_old) and Customer::customerHasAddress((int) $this->context->cookie->id_customer, (int) $address_old->id)) {
if ($address_old->isUsed() && $address_old->isDifferent($address)) {
// save as new and assing reference to cart
$address_1 = new Address();
$_POST['alias'] = Tools::substr(preg_replace('/[;#]/', '_', Tools::getValue('address1')), 0, 32);
$this->errors = $address_1->validateController();
$address_1->id_customer = (int) $this->context->cookie->id_customer;
if ((!Tools::getValue('phone') and !Tools::getValue('phone_mobile')) || (!($country = new Country((int) $address_1->id_country)) or !Validate::isLoadedObject($country)) || ($country->isNeedDni() and (!Tools::getValue('dni') or !Validate::isDniLite(Tools::getValue('dni')))) || ((int) $country->contains_states and !(int) $address_1->id_state)) {
/* empty */
} elseif ($result = $address_1->save()) {
$id_address = $address_1->id;
if (Tools::getValue('type') == 'delivery') {
if ($this->context->cart->id_address_delivery == $this->context->cart->id_address_invoice) {
$this->context->cart->id_address_invoice = (int) $address_1->id;
}
$this->context->cart->id_address_delivery = (int) $address_1->id;
$this->context->cart->update();
}
if (Tools::getValue('type') == 'invoice') {
if ($this->context->cart->id_address_delivery == $this->context->cart->id_address_invoice) {
$this->context->cart->id_address_delivery = (int) $address_1->id;
}
$this->context->cart->id_address_invoice = (int) $address_1->id;
$this->context->cart->update();
}
}
}
//if ($address_old->isUsed)
}
//if (Validate::isLoaded...)
$this->_processSubmitAddress($id_address, Tools::getValue('type'));
// parent::postProcess(); // call parent's method anyway, we only wanted to store this new address
} elseif (Tools::isSubmit('partialSubmitAddress')) {
// called separately for delivery country/state change and invoice country/state change
// $this->context->cookie->id_cart by mohol byt kluc ku mazaniu adresy pri vytvoreni skutocneho accountu
// not-null DB fields: id_address, id_country, alias, lastname, firstname, address1, city
$is_separate_invoice_address = Tools::getValue('invoice_address');
$is_separate_delivery_address = Tools::getValue('delivery_address');
// $type is 'delivery' or 'invoice'
$type = Tools::getValue('type');
// Delivery address
$id_country = Tools::getValue('id_country');
$id_state = Tools::getValue('id_state');
$postcode = Tools::getValue('postcode');
$city = Tools::getValue('city');
$firstname = Tools::getValue('firstname');
$lastname = Tools::getValue('lastname');
$addr1 = Tools::getValue('address1');
$id_address_delivery = 0;
$id_address_invoice = 0;
$create_different_delivery_address = 0;
$create_different_invoice_address = 0;
$last_addr_id = 0;
$last_addr_ids_tmp = Customer::getLastTwoCustomerAddressIds($this->context->cart->id_customer);
if ($id_country !== false && $id_state !== false) {
/* type is delivery AND cart's address is used and cart's address is different than form post*/
if ($type == 'delivery' && isset($this->context->cart->id_address_delivery) && $this->context->cart->id_address_delivery > 0) {
$address_old1 = new Address((int) $this->context->cart->id_address_delivery);
$address1 = new Address();
$errors1 = $address1->validateController();
//.........这里部分代码省略.........