예제 #1
0
	/**
	 * Add a shipping address to this quote. If split-shipping is not enabled
	 * the supplied shipping address will override the address already on this
	 * quote.
	 *
	 * @param ISC_QUOTE_ADDRESS_SHIPPING $address Shipping address instance.
	 * @return ISC_QUOTE This quote instance.
	 */
	public function addShippingAddress(ISC_QUOTE_ADDRESS_SHIPPING $address)
	{
		$address->setQuote($this);
		$address->setType(ISC_QUOTE_ADDRESS::TYPE_SHIPPING);
		if ($this->isSplitShipping == false) {
			foreach ($this->addresses as $k => $existingAddress) {
				if ($existingAddress->getType() == ISC_QUOTE_ADDRESS::TYPE_SHIPPING) {
					$this->addresses[$k] = $address;
					$address->setId($existingAddress->getId());
					return $this;
				}
			}
		}
		$this->addresses[$address->getId()] = $address;
		return $this;
	}