Exemple #1
0
 public function index()
 {
     $Config = App::getConfig();
     $configData = array('config_data' => array('admin_panel_link' => __ADMINPANE__, 'ssl' => (string) (isset($Config['ssl']) && $Config['ssl'] == 1) ? 1 : 0), 'gallerysettings_data' => App::getModel('globalsettings')->getGallerySettings());
     $settingsData = App::getModel('globalsettings')->getSettings();
     $colour = $settingsData['gallerysettings_data']['colour'];
     unset($settingsData['gallerysettings_data']);
     $settingsData['gallerysettings_data']['colour'] = array('type' => 1, 'start' => $colour);
     $this->formModel->setPopulateData(array_merge_recursive($configData, $settingsData));
     $form = $this->formModel->initForm();
     if ($form->Validate(FormEngine\FE::SubmittedData())) {
         try {
             $Data = $form->getSubmitValues(FormEngine\Elements\Form::FORMAT_FLAT);
             $Settings = $form->getSubmitValues();
             Event::notify($this, 'admin.globalsettings.model.save', array('id' => 1, 'data' => $Data));
             App::getModel('globalsettings')->updateGallerySettings($Data);
             App::getModel('globalsettings')->updateGlobalSettings($Settings['interface'], 'interface');
             App::getModel('globalsettings')->updateGlobalSettings(array('colour' => $Settings['gallerysettings_data']['colour']['start']), 'gallerysettings_data');
             Session::setActiveGlobalSettings(NULL);
             App::getModel('globalsettings')->configWriter($Data);
             if (__ADMINPANE__ != $Data['admin_panel_link']) {
                 Session::flush();
                 App::redirect('');
             } else {
                 App::redirect(__ADMINPANE__ . '/globalsettings');
             }
         } catch (Exception $e) {
             $this->registry->template->assign('error', $e->getMessage());
         }
     }
     $this->renderLayout(array('form' => $form->Render()));
 }
Exemple #2
0
 public function editView($Data, $id)
 {
     Db::getInstance()->beginTransaction();
     try {
         $this->updateView($Data, $id);
         $this->updateViewUrl($Data['url'], $id);
         $this->updateViewTranslation($Data, $id);
         $this->updateAssignToGroupPerView($Data['table']['ranges'], $id);
         $this->updateDispatchmethodView($Data['dispatchmethod'], $id);
         $this->updatePaymentmethodView($Data['paymentmethod'], $id);
         App::getModel('mailer')->saveSettings($Data, $id);
         Event::notify($this, 'admin.view.model.save', array('id' => $id, 'data' => $Data));
     } catch (Exception $e) {
         throw new CoreException(_('ERR_SHOP_EDIT'), 125, $e->getMessage());
     }
     Db::getInstance()->commit();
     $this->flushCache();
     return true;
 }
Exemple #3
0
 public function setClientOrder($Data = array())
 {
     $customerOpinion = isset($Data['customeropinion']) ? App::getModel('formprotection')->cropDangerousCode($Data['customeropinion']) : '';
     Event::notify($this, 'frontend.finalization.setActiveClientOrder', array('dispatchmethod' => Session::getActiveDispatchmethodChecked(), 'cart' => Session::getActiveCart()));
     $clientOrder = array('cart' => Session::getActiveCart(), 'globalPrice' => App::getModel('cart')->getGlobalPrice(), 'globalPriceWithoutVat' => App::getModel('cart')->getGlobalPriceWithoutVat(), 'priceWithDispatchMethod' => Session::getActiveglobalPriceWithDispatchmethod(), 'priceWithDispatchMethodNetto' => Session::getActiveglobalPriceWithDispatchmethodNetto(), 'count' => App::getModel('cart/cart')->getProductAllCount(), 'clientdata' => App::getModel('client')->getClient(), 'clientaddress' => Session::getActiveOrderClientAddress(), 'deliveryAddress' => Session::getActiveOrderDeliveryAddress(), 'contactData' => Session::getActiveOrderContactData(), 'dispatchmethod' => Session::getActiveDispatchmethodChecked(), 'payment' => Session::getActivePaymentMethodChecked(), 'clientid' => Session::getActiveClientid(), 'customeropinion' => $customerOpinion);
     $rulesDiscount = $this->getRulesCart($clientOrder);
     if (is_array($rulesDiscount) && count($rulesDiscount) > 0 && $clientOrder['dispatchmethod'] > 0 && $clientOrder['payment'] > 0) {
         if ($rulesDiscount['freeshipping'] == 1) {
             $clientOrder['priceWithDispatchMethod'] = $clientOrder['priceWithDispatchMethod'] - $clientOrder['dispatchmethod']['dispatchmethodcost'];
             $clientOrder['priceWithDispatchMethodNetto'] = $clientOrder['priceWithDispatchMethodNetto'] - $clientOrder['dispatchmethod']['dispatchmethodcostnetto'];
             $clientOrder['dispatchmethod']['dispatchmethodcost'] = 0;
             $clientOrder['dispatchmethod']['dispatchmethodcostnetto'] = 0;
         }
         if ($rulesDiscount['symbol'] == '+') {
             $globalPricePromo = sprintf('%01.2f', $clientOrder['globalPrice'] + $rulesDiscount['discount']);
             $globalPriceWithoutVatPromo = sprintf('%01.2f', $clientOrder['globalPriceWithoutVat'] + $rulesDiscount['discount']);
             $priceWithDispatchMethodPromo = sprintf('%01.2f', $clientOrder['priceWithDispatchMethod'] + $rulesDiscount['discount']);
             $priceWithDispatchMethodNettoPromo = sprintf('%01.2f', $clientOrder['priceWithDispatchMethodNetto'] + $rulesDiscount['discount']);
             $message = $rulesDiscount['symbol'] . $this->registry->core->processPrice($rulesDiscount['discount']);
         } elseif ($rulesDiscount['symbol'] == '-') {
             $globalPricePromo = sprintf('%01.2f', $clientOrder['globalPrice'] - $rulesDiscount['discount']);
             $globalPriceWithoutVatPromo = sprintf('%01.2f', $clientOrder['globalPriceWithoutVat'] - $rulesDiscount['discount']);
             $priceWithDispatchMethodPromo = sprintf('%01.2f', $clientOrder['priceWithDispatchMethod'] - $rulesDiscount['discount']);
             $priceWithDispatchMethodNettoPromo = sprintf('%01.2f', $clientOrder['priceWithDispatchMethodNetto'] - $rulesDiscount['discount']);
             $message = $rulesDiscount['symbol'] . $this->registry->core->processPrice($rulesDiscount['discount']);
         } elseif ($rulesDiscount['symbol'] == '%') {
             $globalPricePromo = sprintf('%01.2f', abs($clientOrder['globalPrice'] * $rulesDiscount['discount'] / 100));
             $globalPriceWithoutVatPromo = sprintf('%01.2f', abs($clientOrder['globalPriceWithoutVat'] * $rulesDiscount['discount'] / 100));
             $priceWithDispatchMethodPromo = sprintf('%01.2f', abs($clientOrder['priceWithDispatchMethod'] * $rulesDiscount['discount'] / 100));
             $priceWithDispatchMethodNettoPromo = sprintf('%01.2f', abs($clientOrder['priceWithDispatchMethodNetto'] * $rulesDiscount['discount'] / 100));
             $message = ($rulesDiscount['discount'] - 100 > 0 ? '+' : '-') . abs($rulesDiscount['discount'] - 100) . $rulesDiscount['symbol'];
         }
         if ($globalPricePromo > 0 && $globalPriceWithoutVatPromo > 0 && $priceWithDispatchMethodPromo > 0 && $priceWithDispatchMethodNettoPromo > 0) {
             $clientOrder['globalPricePromo'] = $globalPricePromo;
             $clientOrder['globalPriceWithoutVatPromo'] = $globalPriceWithoutVatPromo;
             $clientOrder['priceWithDispatchMethodPromo'] = $priceWithDispatchMethodPromo;
             $clientOrder['priceWithDispatchMethodNettoPromo'] = $priceWithDispatchMethodNettoPromo;
             $clientOrder['rulescart'] = $rulesDiscount['name'];
             $clientOrder['rulescartdescription'] = $rulesDiscount['description'];
             $clientOrder['rulescartid'] = $rulesDiscount['rulescartid'];
             $clientOrder['rulescartmessage'] = $message;
             $clientOrder['rulescartfreeshipping'] = $rulesDiscount['freeshipping'];
         }
     }
     Session::setActiveClientOrder($clientOrder);
     return $this->getClientOrder();
 }