Beispiel #1
0
 /**
  * Validate customer address
  *
  * @param Mage_Sales_Model_Quote_Address $address
  * @return bool
  */
 public function validateAddress(Mage_Sales_Model_Quote_Address $address)
 {
     $errors = array();
     $helper = Mage::helper('customer');
     $address->implodeStreetAddress();
     if (!Zend_Validate::is($address->getFirstname(), 'NotEmpty')) {
         $errors[] = $helper->__('Please enter the first name.');
     }
     /*
             if (!Zend_Validate::is($address->getLastname(), 'NotEmpty')) {
                 $errors[] = $helper->__('Please enter the last name.');
             }
     */
     if (!Zend_Validate::is($address->getStreet(1), 'NotEmpty')) {
         $errors[] = $helper->__('Please enter the street.');
     }
     if (!Zend_Validate::is($address->getCity(), 'NotEmpty')) {
         $errors[] = $helper->__('Please enter the city.');
     }
     if (!Zend_Validate::is($address->getTelephone(), 'NotEmpty')) {
         $errors[] = $helper->__('Please enter the telephone number.');
     }
     /*
             $_havingOptionalZip = Mage::helper('directory')->getCountriesWithOptionalZip();
             if (!in_array($address->getCountryId(), $_havingOptionalZip) && !Zend_Validate::is($address->getPostcode(), 'NotEmpty')) {
                 $errors[] = $helper->__('Please enter the zip/postal code.');
             }
     */
     if (!Zend_Validate::is($address->getCountryId(), 'NotEmpty')) {
         $errors[] = $helper->__('Please enter the country.');
     }
     if ($address->getCountryModel()->getRegionCollection()->getSize() && !Zend_Validate::is($address->getRegionId(), 'NotEmpty')) {
         $errors[] = $helper->__('Please enter the state/province.');
     }
     if (empty($errors) || $address->getShouldIgnoreValidation()) {
         return true;
     }
     return $errors;
 }
 /**
  * Add an address to a payload
  *
  * @param  Mage_Sales_Model_Address_Abstract
  * @param  IShippingAddress
  * @return self
  */
 protected function addShippingAddress(Mage_Sales_Model_Quote_Address $shippingAddress, IShippingAddress $payload)
 {
     $payload->setShipToLines(implode('\\n', $shippingAddress->getStreet()));
     $payload->setShipToCity($shippingAddress->getCity());
     $payload->setShipToMainDivision($shippingAddress->getRegionCode());
     $payload->setShipToCountryCode($shippingAddress->getCountryId());
     $payload->setShipToPostalCode($shippingAddress->getPostcode());
     return $this;
 }
Beispiel #3
0
 /**
  * Convert quote address to order address
  *
  * @param   Mage_Sales_Model_Quote_Address $address
  * @return  Mage_Sales_Model_Order_Address
  */
 public function addressToOrderAddress(Mage_Sales_Model_Quote_Address $address)
 {
     $orderAddress = Mage::getModel('sales/order_address')->setStoreId($address->getStoreId())->setAddressType($address->getAddressType())->setCustomerId($address->getCustomerId())->setCustomerAddressId($address->getCustomerAddressId())->setFirstname($address->getFirstname())->setLastname($address->getLastname())->setCompany($address->getCompany())->setStreet($address->getStreet(-1))->setCity($address->getCity())->setRegion($address->getRegion())->setRegionId($address->getRegionId())->setPostcode($address->getPostcode())->setCountryId($address->getCountryId())->setTelephone($address->getTelephone())->setFax($address->getFax());
     return $orderAddress;
 }