/** * Embed a single address form. * * @param string $name * @param string $type * @param array $options * @return void */ protected function setEmbeddedAddressForm($name, $type, $options = array()) { $options['object'] = isset($options['object']) ? $options['object'] : $this->object; $options['is_optional'] = isset($options['is_optional']) ? $options['is_optional'] : sfConfig::get('app_rt_account_address_is_optional_for_' . $type, true); $address = new rtAddress(); $address->setType($type); $address->setModel('rtGuardUser'); if (!$this->isNew()) { $tmp_address = Doctrine::getTable('rtAddress')->getAddressForObjectAndType($this->getObject(), $type); if ($tmp_address) { $address = $tmp_address; } $address->setModelId($this->object->getId()); } $this->embedForm($name, $this->getAddressForm($address, $options)); }
/** * Add address for order * * @param integer $order_id * @param string $type * @return integer */ public function addAddressForOrder($order_id, $type = 'billing') { $address = new rtAddress(); $address->setModelId($order_id); $address->setModel('rtShopOrder'); $address->setFirstName('John'); $address->setLastName('Doe'); $address->setAddress_1('35 Doe Street'); $address->setTown('Doetown'); $address->setState('NSW'); $address->setCountry('AU'); $address->setPostcode(2010); $address->setPhone('0212345678'); $address->setType($type); $address->save(); return $address->getId(); }
/** * Add address for order * * @param integer $order_id * @param string $type * @return integer */ public function addAddressForOrder($order_id, $type = 'billing') { $address = new rtAddress(); $address->setModelId($order_id); $address->setModel('rtShopOrder'); $address->setFirstName('Konny'); $address->setLastName('Zurcher'); $address->setAddress_1('70 Mary Street'); $address->setTown('Surry Hills'); $address->setState('NSW'); $address->setCountry('AU'); $address->setPostcode(2010); $address->setPhone('0212345678'); $address->setType($type); $address->save(); return $address->getId(); }
/** * Return an address for a given type. * * @param $type * @return rtAddress */ protected function getAddressByType($type) { $address = Doctrine::getTable('rtAddress')->getAddressForObjectAndType($this->getOrder(), $type); if (!$address && $this->getUser()->isAuthenticated()) { $user = $this->getUser()->getGuardUser(); $address = Doctrine::getTable('rtAddress')->getAddressForModelAndIdAndType('rtGuardUser', $user->getId(), $type); if ($address) { $address = $address->copy(false); $address->setFirstName($user->getFirstName()); $address->setLastName($user->getLastName()); } } if (!$address) { $address = new rtAddress(); } $address->setModelId($this->getOrder()->getId()); $address->setType($type); $address->setModel('rtShopOrder'); return $address; }