Example #1
0
 /**
  * Get billing address request data
  *
  * @param Varien_Object $address
  * @return array
  */
 protected function _getBillingAddress(Varien_Object $address)
 {
     $request = array('billing_first_name' => $address->getFirstname(), 'billing_last_name' => $address->getLastname(), 'billing_city' => $address->getCity(), 'billing_state' => $address->getRegion(), 'billing_zip' => $address->getPostcode(), 'billing_country' => $address->getCountry());
     // convert streets to tow lines format
     $street = Mage::helper('customer/address')->convertStreetLines($address->getStreet(), 2);
     $request['billing_address1'] = isset($street[0]) ? $street[0] : '';
     $request['billing_address2'] = isset($street[1]) ? $street[1] : '';
     return $request;
 }
Example #2
0
 /**
  * Assigning shipping address to soap object
  *
  * @param Varien_Object $shipping
  */
 protected function addShippingAddress($shipping)
 {
     //checking if we have shipping address, in case of virtual order we will not have it
     if ($shipping) {
         $shipTo = new stdClass();
         $shipTo->firstName = $shipping->getFirstname();
         $shipTo->lastName = $shipping->getLastname();
         $shipTo->company = $shipping->getCompany();
         $shipTo->street1 = $shipping->getStreet(1);
         $shipTo->street2 = $shipping->getStreet(2);
         $shipTo->city = $shipping->getCity();
         $shipTo->state = $shipping->getRegion();
         $shipTo->postalCode = $shipping->getPostcode();
         $shipTo->country = $shipping->getCountry();
         $shipTo->phoneNumber = $this->cleanPhoneNum($shipping->getTelephone());
         $this->_request->shipTo = $shipTo;
         Mage::getSingleton('core/session')->setShipping($shipTo);
     }
 }
Example #3
0
 /**
  * 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;
 }
Example #4
0
 /**
  * Create new AccessCode
  * @param Varien_Object $billing
  * @param Varien_Object $infoInstance
  * @param string $method
  * @param null $request
  * @return Eway_Rapid31_Model_Response
  */
 public function createAccessCode(Varien_Object $billing, Varien_Object $infoInstance, $method = 'AccessCodes', $request = null)
 {
     // Empty Varien_Object's data
     $tokenCustomerID = $request->get('TokenCustomerID');
     $this->unsetData();
     $customerParam = Mage::getModel('ewayrapid/field_customer');
     $customerParam->setTokenCustomerID($tokenCustomerID)->setTitle($billing->getPrefix())->setFirstName($billing->getFirstname())->setLastName($billing->getLastname())->setCompanyName($billing->getCompany())->setJobDescription($billing->getJobDescription())->setStreet1($billing->getStreet1())->setStreet2($billing->getStreet2())->setCity($billing->getCity())->setState($billing->getRegion())->setPostalCode($billing->getPostcode())->setCountry(strtolower($billing->getCountryModel()->getIso2Code()))->setEmail($billing->getEmail())->setPhone($billing->getTelephone())->setMobile($billing->getMobile())->setComments('')->setFax($billing->getFax())->setUrl('');
     $returnUrl = Mage::getBaseUrl() . '/ewayrapid/mycards/saveToken?ccType=' . $infoInstance->getCcType() . '&expYear=' . $infoInstance->getCcExpYear();
     if ($request->get('is_default') == 'on') {
         $returnUrl .= '&is_default=on';
     }
     if ($infoInstance->getCcStartMonth()) {
         $returnUrl .= '&startMonth=' . $infoInstance->getCcStartMonth();
     }
     if ($infoInstance->getCcStartYear()) {
         $returnUrl .= '&startYear=' . $infoInstance->getCcStartYear();
     }
     if ($infoInstance->getCcIssueNumber()) {
         $returnUrl .= '&issueNumber=' . $infoInstance->getCcIssueNumber();
     }
     // Binding address on url param
     $returnUrl .= '&street1=' . base64_encode($billing->getStreet1()) . '&street2=' . base64_encode($billing->getStreet2());
     $tokenId = $request->get('token_id');
     if (!empty($tokenId)) {
         // ID token customer will be defined to update
         $returnUrl = $returnUrl . '&token_id=' . $tokenId;
     }
     $this->setCustomer($customerParam);
     $this->setRedirectUrl($returnUrl);
     $this->setCancelUrl($returnUrl);
     $this->setMethod(!empty($tokenCustomerID) ? 'UpdateTokenCustomer' : 'CreateTokenCustomer');
     $this->setCustomerIP($_SERVER["REMOTE_ADDR"]);
     $this->setDeviceID('');
     $this->setTransactionType("Purchase");
     $this->setCustomerReadOnly(true);
     // Create new access code
     //$formMethod = !empty($tokenCustomerID) ? 'PUT' : 'POST';
     $response = $this->_doRapidAPI($method);
     return $response;
 }
Example #5
0
 /**
  * Assign data to info model instance
  * Save capayable customer
  *
  * @param   mixed $data
  * @return  Mage_Payment_Model_Info
  */
 public function assignData($data)
 {
     if (!$data instanceof Varien_Object) {
         $data = new Varien_Object($data);
     }
     $quote = $this->getInfoInstance()->getQuote();
     $address = $quote->getBillingAddress();
     if (!$quote->getCustomerMiddlename()) {
         $quote->setCustomerMiddlename($data->getCustomerMiddlename());
     }
     if (!$quote->getCustomerGender()) {
         $quote->setCustomerGender($data->getCustomerGender());
     }
     // Convert date format
     $dob = $quote->getCustomerDob() ? $quote->getCustomerDob() : $data->getCustomerDob();
     $dob = Mage::app()->getLocale()->date($dob, null, null, false)->toString('yyyy-MM-dd 00:00:00');
     $data->setCustomerDob($dob);
     $quote->setCustomerDob($dob);
     $capayableCustomer = Mage::getModel('capayable/customer')->loadByEmail($quote->getCustomerEmail());
     /**
      * If capayable customer doesn't exist fill new customer data from quote data.
      * Otherwise rewrite saved customer fields from form data.
      */
     if (!$capayableCustomer->getId()) {
         $capayableCustomer->setCustomerEmail($quote->getCustomerEmail())->setCustomerLastname($quote->getCustomerLastname())->setCustomerMiddlename($quote->getCustomerMiddlename())->setCustomerGender($quote->getCustomerGender())->setCustomerDob($quote->getCustomerDob())->setStreet($data->getStreet())->setHouseNumber((int) $data->getHouseNumber())->setHouseSuffix($data->getHouseSuffix())->setPostcode($data->getPostcode())->setCity($data->getCity())->setCountryId($address->getCountryId())->setTelephone($address->getTelephone())->setFax($address->getFax())->setIsCorporation($data->getIsCorporation())->setIsSoleProprietor($data->getIsSoleProprietor())->setCorporationName($data->getCorporationName())->setCocNumber($data->getCocNumber());
     } else {
         $capayableCustomer->addData($data->getData());
     }
     // Validate capayable customer required fields
     $result = $capayableCustomer->validate();
     if (true !== $result && is_array($result)) {
         throw new Mage_Payment_Model_Info_Exception(implode(', ', $result));
     }
     // Save capayable customer to 'capayable/customer' table
     $capayableCustomer->save();
     $this->getInfoInstance()->addData($data->getData());
     return $this;
 }