Example #1
0
 public function getCartVariables()
 {
     $method = Session::getActiveDispatchmethodChecked();
     $payment = Session::getActivePaymentMethodChecked();
     $this->clientModel = App::getModel('client');
     $this->paymentModel = App::getModel('payment');
     $this->deliveryModel = App::getModel('delivery');
     $this->dispatchMethods = $this->deliveryModel->getDispatchmethodPrice();
     // check rules
     $checkRulesCart = App::getModel('cart')->checkRulesCart();
     if (is_array($checkRulesCart) && count($checkRulesCart) > 0) {
         $this->registry->template->assign('checkRulesCart', $checkRulesCart);
     }
     // DON'T CHECK DISPATCH METHOD BY DEFAULT
     //if ($method == NULL || !isset($this->dispatchMethods[$method['dispatchmethodid']])){
     // set dispatch method if not selected or not available
     //$method = current($this->dispatchMethods);
     //App::getModel('delivery')->setDispatchmethodChecked($method['dispatchmethodid']);
     //}
     // unset paymentmethod if not available for selected dispatchmethod
     if (!isset($this->dispatchMethods[$method['dispatchmethodid']])) {
         Session::unsetActivePaymentMethodChecked();
     }
     if ($method != NULL && isset($this->dispatchMethods[$method['dispatchmethodid']])) {
         App::getModel('delivery')->setDispatchmethodChecked($method['dispatchmethodid']);
     }
     // check payment
     $paymentMethods = App::getModel('payment')->getPaymentMethods();
     $paymentAvailable = false;
     foreach ($paymentMethods as $method) {
         if ($method['idpaymentmethod'] == $payment['idpaymentmethod']) {
             $paymentAvailable = true;
         }
     }
     if ($payment == 0 || !$paymentAvailable) {
         if (isset($paymentMethods[0])) {
             App::getModel('payment')->setPaymentMethodChecked($paymentMethods[0]['idpaymentmethod'], $paymentMethods[0]['name']);
         }
     } else {
         App::getModel('payment')->setPaymentMethodChecked($payment['idpaymentmethod'], $payment['paymentmethodname']);
     }
     $minimumordervalue = $this->getMinimumOrderValue();
     $order = App::getModel('finalization')->setClientOrder();
     $assignData = array('deliverymethods' => $this->dispatchMethods, 'checkedDelivery' => Session::getActiveDispatchmethodChecked(), 'checkedPayment' => Session::getActivePaymentMethodChecked(), 'checkedDeliveryOption' => Session::getActiveDispatchmethodOption(), 'payments' => $paymentMethods, 'minimumordervalue' => $minimumordervalue, 'priceWithDispatchMethod' => Session::getActiveglobalPriceWithDispatchmethod(), 'summary' => App::getModel('finalization')->getOrderSummary(), 'order' => Session::getActiveClientOrder());
     foreach ($assignData as $key => $assign) {
         $this->registry->template->assign($key, $assign);
     }
 }
Example #2
0
 public function checkEraty($idpaymentmethod)
 {
     $price = Session::getActiveglobalPriceWithDispatchmethod();
     if ($price > 0) {
         if ($price < 100) {
             return 0;
         }
     } else {
         $order = Session::getActiveClientOrder();
         if (!isset($order['priceWithDispatchMethod']) || $order['priceWithDispatchMethod'] < 100) {
             return 0;
         }
     }
     $sql = "SELECT ES.wariantsklepu, ES.numersklepu, ES.`char`\n\t\t\t\t\tFROM eratysettings ES\n\t\t\t\t\t\tLEFT JOIN paymentmethodview PV ON  ES.paymentmethodid  = PV.paymentmethodid\n\t\t\t\t\tWHERE PV.viewid = :viewid\n\t\t\t\t\tAND ES.paymentmethodid = :idpaymentmethod";
     $stmt = Db::getInstance()->prepare($sql);
     $stmt->bindValue('viewid', Helper::getViewId());
     $stmt->bindValue('idpaymentmethod', $idpaymentmethod);
     $stmt->execute();
     $rs = $stmt->fetch();
     if ($rs) {
         $Data = array('wariantsklepu' => $rs['wariantsklepu'], 'numersklepu' => $rs['numersklepu'], 'char' => $rs['char']);
         return $Data;
     }
     return 0;
 }
Example #3
0
 public function index()
 {
     $clientorder = App::getModel('finalization')->setClientOrder();
     if (App::getModel('cart')->getMinimumOrderValue() > 0 || empty($clientorder['cart'])) {
         App::redirectUrl($this->registry->router->generate('frontend.cart', true));
     }
     $this->registry->xajax->registerFunction(array('saveOrder', App::getModel('finalization'), 'saveOrder'));
     $formContact = new SimpleForm\Form(array('name' => 'contactForm', 'action' => '', 'method' => 'post'));
     $formContact->AddChild(new SimpleForm\Elements\TextField(array('name' => 'phone', 'label' => _('TXT_PHONE'))));
     $formContact->AddChild(new SimpleForm\Elements\TextField(array('name' => 'phone2', 'label' => _('TXT_ADDITIONAL_PHONE'))));
     $formContact->AddChild(new SimpleForm\Elements\TextField(array('name' => 'email', 'label' => _('TXT_EMAIL'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_EMAIL')), new SimpleForm\Rules\Email(_('ERR_WRONG_EMAIL'))))));
     $clientContact = Session::getActiveOrderContactData();
     $formContact->Populate(array('phone' => $clientContact['phone'], 'phone2' => $clientContact['phone2'], 'email' => $clientContact['email']));
     if ($formContact->Validate()) {
         $formData = $formContact->getSubmitValues();
         Session::setActiveOrderContactData($formData);
         App::redirectUrl($this->registry->router->generate('frontend.finalization', true));
     }
     $formBilling = new SimpleForm\Form(array('name' => 'billingForm', 'action' => '', 'method' => 'post'));
     $clientType = $formBilling->AddChild(new SimpleForm\Elements\Radio(array('name' => 'clienttype', 'label' => _('TXT_CLIENT_TYPE'), 'options' => array('1' => _('TXT_INDIVIDUAL_CLIENT'), '2' => _('TXT_COMPANY_CLIENT')))));
     $formBilling->AddChild(new SimpleForm\Elements\TextField(array('name' => 'firstname', 'label' => _('TXT_FIRSTNAME'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_FIRSTNAME'))))));
     $formBilling->AddChild(new SimpleForm\Elements\TextField(array('name' => 'surname', 'label' => _('TXT_SURNAME'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_SURNAME'))))));
     $formBilling->AddChild(new SimpleForm\Elements\TextField(array('name' => 'companyname', 'label' => _('TXT_COMPANYNAME'), 'rules' => array(new SimpleForm\Rules\RequiredDependency(_('ERR_EMPTY_COMPANYNAME'), $clientType, new SimpleForm\Conditions\Equals('2'))))));
     $formBilling->AddChild(new SimpleForm\Elements\TextField(array('name' => 'nip', 'label' => _('TXT_NIP'), 'rules' => array(new SimpleForm\Rules\RequiredDependency(_('ERR_EMPTY_NIP'), $clientType, new SimpleForm\Conditions\Equals('2'))))));
     $formBilling->AddChild(new SimpleForm\Elements\TextField(array('name' => 'street', 'label' => _('TXT_STREET'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_STREET'))))));
     $formBilling->AddChild(new SimpleForm\Elements\TextField(array('name' => 'streetno', 'label' => _('TXT_STREETNO'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_STREETNO'))))));
     $formBilling->AddChild(new SimpleForm\Elements\TextField(array('name' => 'placeno', 'label' => _('TXT_PLACENO'))));
     $formBilling->AddChild(new SimpleForm\Elements\TextField(array('name' => 'placename', 'label' => _('TXT_PLACE'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_PLACE'))))));
     $formBilling->AddChild(new SimpleForm\Elements\TextField(array('name' => 'postcode', 'label' => _('TXT_POSTCODE'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_POSTCODE')), new SimpleForm\Rules\Format(_('ERR_WRONG_FORMAT_POSTCODE'), '/^\\d{2}-\\d{3}?$/')))));
     $formBilling->AddChild(new SimpleForm\Elements\Select(array('name' => 'countryid', 'label' => _('TXT_NAME_OF_COUNTRY'), 'options' => App::getModel('lists')->getCountryForSelect(), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_NAME_OF_COUNTRY'))))));
     $clientBillingAddress = Session::getActiveOrderClientAddress();
     $formBilling->Populate(array('clienttype' => $clientBillingAddress['clienttype'], 'firstname' => $clientBillingAddress['firstname'], 'surname' => $clientBillingAddress['surname'], 'companyname' => $clientBillingAddress['companyname'], 'nip' => $clientBillingAddress['nip'], 'street' => $clientBillingAddress['street'], 'streetno' => $clientBillingAddress['streetno'], 'postcode' => $clientBillingAddress['postcode'], 'placename' => $clientBillingAddress['placename'], 'placeno' => $clientBillingAddress['placeno'], 'countryid' => $clientBillingAddress['countryid']));
     if ($formBilling->Validate()) {
         $formData = $formBilling->getSubmitValues();
         if ($formData['clienttype'] == 1) {
             $formData['companyname'] = '';
             $formData['nip'] = '';
         }
         Session::setActiveOrderClientAddress($formData);
         App::redirectUrl($this->registry->router->generate('frontend.finalization', true));
     }
     $formShipping = new SimpleForm\Form(array('name' => 'shippingForm', 'action' => '', 'method' => 'post'));
     $formShipping->AddChild(new SimpleForm\Elements\TextField(array('name' => 'firstname', 'label' => _('TXT_FIRSTNAME'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_FIRSTNAME'))))));
     $formShipping->AddChild(new SimpleForm\Elements\TextField(array('name' => 'surname', 'label' => _('TXT_SURNAME'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_SURNAME'))))));
     $formShipping->AddChild(new SimpleForm\Elements\TextField(array('name' => 'companyname', 'label' => _('TXT_COMPANYNAME'))));
     $formShipping->AddChild(new SimpleForm\Elements\TextField(array('name' => 'street', 'label' => _('TXT_STREET'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_STREET'))))));
     $formShipping->AddChild(new SimpleForm\Elements\TextField(array('name' => 'streetno', 'label' => _('TXT_STREETNO'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_STREETNO'))))));
     $formShipping->AddChild(new SimpleForm\Elements\TextField(array('name' => 'placeno', 'label' => _('TXT_PLACENO'))));
     $formShipping->AddChild(new SimpleForm\Elements\TextField(array('name' => 'placename', 'label' => _('TXT_PLACE'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_PLACE'))))));
     $formShipping->AddChild(new SimpleForm\Elements\TextField(array('name' => 'postcode', 'label' => _('TXT_POSTCODE'), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_POSTCODE')), new SimpleForm\Rules\Format(_('ERR_WRONG_FORMAT_POSTCODE'), '/^\\d{2}-\\d{3}?$/')))));
     $formShipping->AddChild(new SimpleForm\Elements\Select(array('name' => 'countryid', 'label' => _('TXT_NAME_OF_COUNTRY'), 'options' => App::getModel('lists')->getCountryForSelect(), 'rules' => array(new SimpleForm\Rules\Required(_('ERR_EMPTY_NAME_OF_COUNTRY'))))));
     $clientShippingAddress = Session::getActiveOrderDeliveryAddress();
     $formShipping->Populate(array('firstname' => $clientShippingAddress['firstname'], 'surname' => $clientShippingAddress['surname'], 'companyname' => $clientShippingAddress['companyname'], 'street' => $clientShippingAddress['street'], 'streetno' => $clientShippingAddress['streetno'], 'postcode' => $clientShippingAddress['postcode'], 'placename' => $clientShippingAddress['placename'], 'placeno' => $clientShippingAddress['placeno'], 'countryid' => $clientShippingAddress['countryid']));
     if ($formShipping->Validate()) {
         $formData = $formShipping->getSubmitValues();
         Session::setActiveOrderDeliveryAddress($formData);
         App::redirectUrl($this->registry->router->generate('frontend.finalization', true));
     }
     $this->registry->template->assign('formContact', $formContact->getForm());
     $this->registry->template->assign('formBilling', $formBilling->getForm());
     $this->registry->template->assign('formShipping', $formShipping->getForm());
     $this->registry->template->assign('clientOrder', Session::getActiveClientOrder());
     $this->registry->template->assign('summary', App::getModel('finalization')->getOrderSummary());
     return $this->registry->template->fetch($this->loadTemplate('index.tpl'));
 }
Example #4
0
 public function getClientOrder()
 {
     $Data = array();
     $Data = Session::getActiveClientOrder();
     return $Data;
 }