Source of file Addresses_Customer.php
Size: 1,632 Bytes - Last Modified: 2021-12-23T10:10:32+00:00
/var/www/docs.ssmods.com/process/src/code/decorators/Addresses_Customer.php
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 | <?php /* * Addresses_Customer extends Customer */ class Addresses_Customer extends DataExtension { private static $has_many = array( 'ShippingAddresses' => 'Address_Shipping', 'BillingAddresses' => 'Address_Billing' ); public function createAddresses($order) { Session::clear('ShippingAddressID'); Session::clear('BillingAddressID'); } /** * Retrieve the last used billing address for this Member from their previous saved addresses. * TODO make this more efficient * * @return Address The last billing address */ public function BillingAddress($addressID = null) { $addrs = $this->owner->BillingAddresses(); if($addrs && $addrs->exists()) { if($addressID > 0){ return $addrs->filter(array('ID' => $addressID))->first(); } else { return $addrs->filter(array('Default' => 1))->first(); } } return null; } /** * Retrieve the last used shipping address for this Member from their previous saved addresses. * TODO make this more efficient * * @return Address The last shipping address */ public function ShippingAddress($addressID = null) { $addrs = $this->owner->ShippingAddresses(); if ($addrs && $addrs->exists()) { if ($addressID > 0){ return $addrs->filter(array('ID' => $addressID))->first(); } else { return $addrs->filter(array('Default' => 1))->first(); } } return null; } public function DefaultShippingAddress(){ return $this->owner->ShippingAddresses()->filter(array('Default' => 1))->first(); } public function DefaultBillingAddress(){ return $this->owner->BillingAddresses()->filter(array('Default' => 1))->first(); } } |