Ejemplo n.º 1
0
 public function add_method()
 {
     $data = $this->post();
     $errors = $this->validate($data);
     $this->error = null;
     //clear errors
     $this->error = $errors;
     if (!$errors->has()) {
         if ($this->post('shippingMethodID')) {
             //update
             $shippingMethod = StoreShippingMethod::getByID($this->post('shippingMethodID'));
             $shippingMethodTypeMethod = $shippingMethod->getShippingMethodTypeMethod();
             $shippingMethodTypeMethod->update($this->post());
             $shippingMethod->update($this->post('methodName'), $this->post('methodEnabled'));
             $this->redirect('/dashboard/store/settings/shipping/updated');
         } else {
             //first we send the data to the shipping method type.
             $shippingMethodType = StoreShippingMethodType::getByID($this->post('shippingMethodTypeID'));
             $shippingMethodTypeMethod = $shippingMethodType->addMethod($this->post());
             //make a shipping method that correlates with it.
             StoreShippingMethod::add($shippingMethodTypeMethod, $shippingMethodType, $this->post('methodName'), true);
             $this->redirect('/dashboard/store/settings/shipping/success');
         }
     } else {
         if ($this->post('shippingMethodID')) {
             $this->edit($this->post('shippingMethodID'));
         } else {
             $this->add($this->post('shippingMethodTypeID'));
         }
     }
 }
Ejemplo n.º 2
0
 public static function getShippingTotal($smID = null)
 {
     $sessionShippingMethodID = Session::get('smID');
     if ($smID) {
         $shippingMethod = StoreShippingMethod::getByID($smID);
         Session::set('smID', $smID);
     } elseif (!empty($sessionShippingMethodID)) {
         $shippingMethod = StoreShippingMethod::getByID($sessionShippingMethodID);
     } else {
         $shippingTotal = 0;
     }
     if (is_object($shippingMethod)) {
         $shippingTotal = $shippingMethod->getShippingMethodTypeMethod()->getRate();
     } else {
         $shippingTotal = 0;
     }
     return $shippingTotal;
 }