/** * Validate polish NIP without european registration entry or send request to VAT validation service and return validation result * * @param string $countryCode * @param string $vatNumber * @param string $requesterCountryCode * @param string $requesterVatNumber * * @return Varien_Object */ public function checkVatNumber($countryCode, $vatNumber, $requesterCountryCode = '', $requesterVatNumber = '') { if ($countryCode == "PL" && (empty($requesterCountryCode) || $requesterCountryCode == "PL")) { return $this->validatePolishNIP($vatNumber); } else { return parent::checkVatNumber($countryCode, $vatNumber, $requesterCountryCode = '', $requesterVatNumber = ''); } }
/** * Rewrite - Allow VAT ID to contain country code at the beginning * * @param string $countryCode * @param string $vatNumber * @param string $requesterCountryCode * @param string $requesterVatNumber * @return Varien_Object */ public function checkVatNumber($countryCode, $vatNumber, $requesterCountryCode = '', $requesterVatNumber = '') { if (substr($vatNumber, 0, 2) == $countryCode) { $vatNumber = substr($vatNumber, 2); } if ($requesterVatNumber && substr($requesterVatNumber, 0, 2) == $requesterCountryCode) { $requesterVatNumber = substr($requesterVatNumber, 2); } return parent::checkVatNumber($countryCode, $vatNumber, $requesterCountryCode, $requesterVatNumber); }
public function getEmailConfirmationUrl($email = null) { // // if SubAccount // $subAccount = Mage::getModel('cminds_multiuseraccounts/subAccount') // ->setWebsiteId(Mage::app()->getWebsite()->getId()) // ->loadByEmail($email); // if ($subAccount->getId()) { // return Mage::helper('cminds_multiuseraccounts')->getEmailConfirmationUrl($email); // } return parent::getEmailConfirmationUrl($email); }
/** * Save customer addresses. * * @param Mage_Customer_Model_Customer $customer * @param array $addressesData * @throws Mage_Core_Exception */ protected function _prepareCustomerAddressesForSave($customer, array $addressesData) { $hasChanges = $customer->hasDataChanges(); $actualAddressesIds = array(); foreach ($addressesData as $addressData) { $addressId = null; if (array_key_exists('entity_id', $addressData)) { $addressId = $addressData['entity_id']; unset($addressData['entity_id']); } if (null !== $addressId) { $address = $customer->getAddressItemById($addressId); if (!$address || !$address->getId()) { throw new Mage_Core_Exception($this->_translateHelper->__('The address with the specified ID not found.')); } } else { $address = $this->_addressFactory->create(); $address->setCustomerId($customer->getId()); // Add customer address into addresses collection $customer->addAddress($address); } $address->addData($addressData); $hasChanges = $hasChanges || $address->hasDataChanges(); // Set post_index for detect default billing and shipping addresses $address->setPostIndex($addressId); $actualAddressesIds[] = $address->getId(); } /** @var Mage_Customer_Model_Address $address */ foreach ($customer->getAddressesCollection() as $address) { if (!in_array($address->getId(), $actualAddressesIds)) { $address->setData('_deleted', true); $hasChanges = true; } } $customer->setDataChanges($hasChanges); }