/** * Prepare object for save * * @param Varien_Object $object * @return Mage_Customer_Model_Resource_Address_Attribute_Backend_Region */ public function beforeSave($object) { $region = $object->getData('region'); if (is_numeric($region)) { $regionModel = Mage::getModel('directory/region')->load($region); if ($regionModel->getId() && $object->getCountryId() == $regionModel->getCountryId()) { $object->setRegionId($regionModel->getId())->setRegion($regionModel->getName()); } } return $this; }
/** * Set region to the attribute * * @param Varien_Object $object * @return Mage_Sales_Model_Resource_Quote_Address_Attribute_Backend_Region */ public function beforeSave($object) { if (is_numeric($object->getRegion())) { $region = Mage::getModel('directory/region')->load((int) $object->getRegion()); if ($region) { $object->setRegionId($region->getId()); $object->setRegion($region->getCode()); } } return $this; }
/** * Adopt specified address object to be compatible with Magento * * @param Varien_Object $address */ protected function _applyStreetAndRegionWorkarounds(Varien_Object $address) { // merge street addresses into 1 if ($address->hasStreet2()) { $address->setStreet(implode("\n", array($address->getStreet(), $address->getStreet2()))); $address->unsStreet2(); } // attempt to fetch region_id from directory if ($address->getCountryId() && $address->getRegion()) { $regions = Mage::getModel('directory/country')->loadByCode($address->getCountryId())->getRegionCollection()->addRegionCodeOrNameFilter($address->getRegion())->setPageSize(1); foreach ($regions as $region) { $address->setRegionId($region->getId()); $address->setExportedKeys(array_merge($address->getExportedKeys(), array('region_id'))); break; } } }
/** * Copy address * * @param Varien_Object $srcAddress * @param Varien_Object $dstAddress * @return Innoexts_Warehouse_Helper_Data */ public function copy($srcAddress, $dstAddress) { $dstAddress->setCountryId($srcAddress->getCountryId()); $dstAddress->setRegionId($srcAddress->getRegionId()); $dstAddress->setRegion($srcAddress->getRegion()); $dstAddress->setCity($srcAddress->getCity()); $dstAddress->setPostcode($srcAddress->getPostcode()); $dstAddress->setStreet($srcAddress->getStreet()); return $this; }
/** * Gets default card data or empty strings if not applicable * * @return Varien_Object */ public function getDefaultCartData() { $params = new Varien_Object(); if ($this->isEditMode()) { $creditCard = $this->creditCard(); $billingAddress = $creditCard->billingAddress; $params->setExpDate($this->escapeHtml($creditCard->expirationDate)); $params->setIsCCDefault($creditCard->isDefault() ? true : false); $params->setCartholder($this->escapeHtml($creditCard->cardholderName)); $params->setFirstName($this->escapeHtml($billingAddress->firstName)); $params->setLastName($this->escapeHtml($billingAddress->lastName)); $params->setCompany($this->escapeHtml($billingAddress->company)); $params->setLocality($this->escapeHtml($billingAddress->locality)); $params->setRegion($this->escapeHtml($billingAddress->region)); $params->setPostalCode($this->escapeHtml($billingAddress->postalCode)); $params->setStreetAddress($this->escapeHtml($billingAddress->streetAddress)); $params->setExtendedAddress($this->escapeHtml($billingAddress->extendedAddress)); $params->setCountryCodeAlpha2($this->escapeHtml($billingAddress->countryCodeAlpha2)); $params->setRegionId($this->getRegionIdByName($billingAddress->region)); } if ($params->getExpDate()) { list($defaultExpMonth, $defaultExpYear) = explode('/', $this->escapeHtml($params->getExpDate())); $params->setExpMonth($defaultExpMonth); $params->setExpYear($defaultExpYear); } else { $params->setExpMonth(Mage::helper('braintree_payments')->getTodayMonth()); $params->setExpYear(Mage::helper('braintree_payments')->getTodayYear()); } return $params; }