array('through'=>'account_billing','foreign_key'=>'checkout_plugin_id'), 'payment'=>array(), ); /** * Calcuale the fee for this checkout method * * @param $amt The amount the fee will be based on */ public function fee($amt) { if (! $this->fee_passon) return 0; $net = $amt; if (! is_null($this->fee_fixed)) $net += $this->fee_fixed; if (! is_null($this->fee_variable)) $net /= (1-$this->fee_variable); return Currency::round($net-$amt); } /** * Return the object of the checkout plugin */ public function plugin($type='') { $c = Kohana::classname('Checkout_Plugin_'.$this->plugin); if (! $this->plugin OR ! class_exists($c)) return NULL; $o = new $c($this); return $type ? $o->$type : $o; } } ?>