Exemplo n.º 1
0
 /**
  * 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 = '');
     }
 }
Exemplo n.º 2
0
 /**
  * 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);
 }
Exemplo n.º 3
0
 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);
 }
Exemplo n.º 4
0
 /**
  * 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);
 }