private function getComments()
 {
     $result = array();
     // Если запрос был со стороны сайта выполняется первая ветка условия. Иначе - вторая.
     if (isset($_POST['showComments']) && isset($_POST['uri'])) {
         $uri = explode('/', $_POST['uri']);
         if (!empty($uri[1])) {
             unset($uri[0]);
             $uri = implode('/', $uri);
         } else {
             $uri = $uri[0];
         }
         // Запрос для генерации блока пагинации
         $sql = "\n\t\t\t\tSELECT id, name, comment, UNIX_TIMESTAMP(date) as date\n\t\t\t\tFROM `comments` \n\t\t\t\tWHERE uri = " . DB::quote($uri) . " AND approved = '1'\n\t\t\t\tORDER BY `id` DESC";
         $res = DB::query($sql);
         //Получаем блок пагинации
         if ($_POST["page"]) {
             $page = $_POST["page"];
         }
         //если был произведен запрос другой страницы, то присваиваем переменной новый индекс
         $navigator = new Navigator($sql, $page, MG::getOption('countPrintRowsComments'));
         //определяем класс
         $pagination = $navigator->getPager('forAjax');
         /* Получаем непосредственно комментарии.
            	 Если была запрошена не первая страница комментариев, выполняем вторую ветку условия.
            */
         if (empty($_POST['page'])) {
             $sql = "\n\t\t\t\tSELECT id, name, comment, UNIX_TIMESTAMP(date) as date\n\t\t\t\tFROM `comments` \n\t\t\t\tWHERE uri = " . DB::quote($uri) . " AND approved = '1'\n\t\t\t\tORDER BY `id` DESC\n\t\t\t\tLIMIT 0, " . MG::getOption('countPrintRowsComments');
             $res = DB::query($sql);
         } else {
             $start = ($_POST['page'] - 1) * MG::getOption('countPrintRowsComments');
             $amount = MG::getOption('countPrintRowsComments');
             $sql = "\n\t\t\t\tSELECT id, name, comment, UNIX_TIMESTAMP(date) as date\n\t\t\t\tFROM `comments` \n\t\t\t\tWHERE uri = " . DB::quote($uri) . " AND approved = '1'\n\t\t\t\tORDER BY `id` DESC\n\t\t\t\tLIMIT " . $start . ", " . $amount;
             $res = DB::query($sql);
         }
         while ($row = DB::fetchAssoc($res)) {
             $row['date'] = date('d.m.Y H:i', $row['date']);
             $result['comments'][] = $row;
         }
         $result['pagination'] = $pagination;
         echo json_encode($result);
         exit;
     } else {
         $sql = "\n\t\t\t\tSELECT id, name, comment, date\n\t\t\t\tFROM `comments`\n\t\t\t\tORDER BY date DESC";
         $res = DB::query($sql);
         while ($row = DB::fetchAssoc($res)) {
             $row['date'] = date('d.m.Y H:i', $row['date']);
             $result[$row['id']] = $row;
         }
         return $result;
     }
 }
Beispiel #2
0
 static function getEntity()
 {
     $result = array();
     $sql = "SELECT * FROM `" . PREFIX . "call_back` ORDER BY id ASC";
     if ($_POST["page"]) {
         $page = $_POST["page"];
     }
     $navigator = new Navigator($sql, $page);
     $entity = $navigator->getRowsSql();
     $pagination = $navigator->getPager('forAjax');
     $result = array('entity' => $entity, 'pagination' => $pagination);
     return $result;
 }
Beispiel #3
0
 /**
  * Выводит страницу настроек плагина в админке
  */
 static function pageSettingsPlugin()
 {
     if ($_POST["page"]) {
         $page = $_POST["page"];
         //если был произведен запрос другой страницы, то присваиваем переменной новый индекс
     }
     $navigator = new Navigator("\n      SELECT p. * , u.email, COUNT( p.id ) as count_orders\n      FROM  `" . PREFIX . "partner` AS p\n      LEFT JOIN  `" . PREFIX . "user` AS u ON u.id = p.user_id\n      LEFT JOIN  `" . PREFIX . "partner_order` AS po ON po.partner_id = p.id\n      GROUP BY p.id\n      ORDER BY p.payments_amount DESC  ", $page, 20);
     //определяем класс
     $partners = $navigator->getRowsSql();
     $pagination = $navigator->getPager('forAjax');
     $option = MG::getSetting('partners-program');
     $option = stripslashes($option);
     $options = unserialize($option);
     // подключаем view для страницы плагина
     include 'pagePlugin.php';
 }
Beispiel #4
0
 public function getComments()
 {
     $result = array();
     // Если запрос был со стороны сайта выполняется первая ветка условия. Иначе - вторая.
     if (isset($_POST['showComments']) && isset($_POST['uri'])) {
         $uri = explode('/', $_POST['uri']);
         if (!empty($uri[1])) {
             unset($uri[0]);
             $uri = implode('/', $uri);
         } else {
             $uri = $uri[0];
         }
         // Запрос для генерации блока пагинации
         $sql = "\r\n\t\t\t\tSELECT id, name, comment, date\r\n\t\t\t\tFROM `" . PREFIX . "comments` \r\n\t\t\t\tWHERE (uri = " . DB::quote($uri) . " OR uri = " . DB::quote($uri . ".html") . ") AND approved = '1'\r\n\t\t\t\tORDER BY `id` DESC";
         $res = DB::query($sql);
         //Получаем блок пагинации
         if ($_POST["page"]) {
             $page = $_POST["page"];
         }
         //если был произведен запрос другой страницы, то присваиваем переменной новый индекс
         $navigator = new Navigator($sql, $page, MG::getSetting('countPrintRowsComments'));
         //определяем класс
         $comments = $navigator->getRowsSql();
         $pagination = $navigator->getPager('forAjax');
         /*
         * Получаем непосредственно комментарии.
          Если была запрошена не первая страница комментариев, выполняем вторую ветку условия.
         */
         foreach ($comments as $key => $value) {
             $comments[$key]['date'] = date('d.m.Y H:i', $result['comments']['date']);
         }
         $result['pagination'] = $pagination;
         $this->data = $result;
         return true;
     } else {
         $sql = "\r\n\t\t\t\tSELECT id, name, comment, date\r\n\t\t\t\tFROM `" . PREFIX . "comments`\r\n\t\t\t\tORDER BY date DESC";
         $res = DB::query($sql);
         while ($row = DB::fetchAssoc($res)) {
             $result[$row['id']] = $row;
         }
         return $result;
     }
 }
Beispiel #5
0
 /**
  * Вывод страницы плагина в админке
  */
 static function pagePluginComments()
 {
     $lang = PM::plugLocales('comments');
     if ($_POST["page"]) {
         $page = $_POST["page"];
     }
     //если был произведен запрос другой страницы, то присваиваем переменной новый индекс
     $countPrintRowsComments = MG::getSetting('countPrintRowsComments');
     $navigator = new Navigator("SELECT  *  FROM `" . PREFIX . "comments` ORDER BY `id` DESC", $page, $countPrintRowsComments);
     //определяем класс
     $comments = $navigator->getRowsSql();
     $pagination = $navigator->getPager('forAjax');
     // подключаем view для страницы плагина
     include 'pagePlugin.php';
 }
Beispiel #6
0
 public static function getListNews($count = 100)
 {
     //Получаем список новостей
     if ($_GET["page"]) {
         $page = $_GET["page"];
     }
     //если был произведен запрос другой страницы, то присваиваем переменной новый индекс
     $navigator = new Navigator("SELECT  *  FROM `mpl_news` ORDER BY `add_date` DESC", $page, $count);
     //определяем класс
     $news = $navigator->getRowsSql();
     $pagination = $navigator->getPager();
     return array('listNews' => $news, 'pagination' => $pagination);
 }
Beispiel #7
0
 /**
  * Возвращает список найденных продуктов соответствующих поисковой фразе.
  * @param string $keyword - поисковая фраза.
  * @param string $allRows - получить сразу все записи.
  * @param string $onlyActive - учитывать только активные продукты.
  * @param boolean $adminPanel - запрос из публичной части или админки.
  * @return array
  */
 public function getListProductByKeyWord($keyword, $allRows = false, $onlyActive = false, $adminPanel = false, $mode = false)
 {
     $result = array('catalogItems' => array(), 'pager' => null, 'numRows' => null);
     $keyword = htmlspecialchars($keyword);
     $keywordUnTrim = $keyword;
     $keyword = trim($keyword);
     if (empty($keyword) || strlen($keyword) <= 2) {
         return $result;
     }
     $currencyRate = MG::getSetting('currencyRate');
     $currencyShopIso = MG::getSetting('currencyShopIso');
     // Поиск по точному соответствию.
     // Пример $keyword = " 'красный',   зеленый "
     // Убираем начальные пробелы и конечные.
     $keyword = trim($keyword);
     //$keyword = "'красный',   зеленый"
     if (SEARCH_FULLTEXT) {
         // Вырезаем спец символы из поисковой фразы.
         $keyword = preg_replace('/[`~!#$%^*()=+\\\\|\\/\\[\\]{};:"\',<>?]+/', '', $keyword);
         //$keyword = "красный   зеленый"
         // Замена повторяющихся пробелов на на один.
         $keyword = preg_replace('/ +/', ' ', $keyword);
         //$keyword = "красный зеленый"
         // Обрамляем каждое слово в звездочки, для расширенного поиска.
         $keyword = str_replace(' ', '* +', $keyword);
         //$keyword = "красный* *зеленый"
         // Добавляем по краям звездочки.
         $keyword = '+' . $keyword . '*';
         //$keyword = "*красный* *зеленый*"
         $sql = "\n      SELECT distinct p.code, CONCAT(c.parent_url,c.url) AS category_url,\n        p.url AS product_url, p.*, pv.product_id as variant_exist, pv.id as variant_id, rate,(p.price_course + p.price_course * (IFNULL(rate,0))) as `price_course`\n      FROM  `" . PREFIX . "product` AS p\n      LEFT JOIN  `" . PREFIX . "category` AS c ON c.id = p.cat_id\n      LEFT JOIN  `" . PREFIX . "product_variant` AS pv ON p.id = pv.product_id";
         if (!$adminPanel) {
             $sql .= " LEFT JOIN (\n        SELECT pv.product_id, SUM( pv.count ) AS varcount\n        FROM  `" . PREFIX . "product_variant` AS pv\n        GROUP BY pv.product_id\n      ) AS temp ON p.id = temp.product_id";
         }
         $prod = new Models_Product();
         $fulltext = "";
         $sql .= " WHERE ";
         $match = " MATCH (\n      p.`title` , p.`code`, p.`description` " . $fulltextInVar . " " . $fulltext . "\n      )\n      AGAINST (\n      '" . $keyword . "'\n      IN BOOLEAN\n      MODE\n      ) ";
         DB::query("SELECT id FROM `" . PREFIX . "product_variant` LIMIT 1");
         //Если есть варианты товаров то будеи искать и в них.
         if (DB::numRows(DB::query("SELECT id FROM `" . PREFIX . "product_variant` LIMIT 1"))) {
             $fulltextInVar = ', pv.`title_variant`, pv.`code` ';
             $match = "(" . $match . " OR MATCH (pv.`title_variant`, pv.`code`)\n        AGAINST (\n        '" . $keyword . "'\n        IN BOOLEAN\n        MODE\n        )) ";
         }
         $sql .= $match;
         // Проверяем чтобы в вариантах была хотябы одна единица.
         if (!$adminPanel) {
             if (MG::getSetting('printProdNullRem') == "true") {
                 $sql .= " AND (temp.`varcount` > 0 OR temp.`varcount` < 0 OR p.count>0 OR p.count<0)";
             }
         }
         if ($onlyActive) {
             $sql .= ' AND p.`activity` = 1';
         }
     } else {
         $sql = "\n       SELECT distinct p.id, CONCAT(c.parent_url,c.url) AS category_url,\n         p.url AS product_url, p.*, pv.product_id as variant_exist, pv.id as variant_id, rate,(p.price_course + p.price_course * (IFNULL(rate,0))) as `price_course`, \n         p.currency_iso\n       FROM  `" . PREFIX . "product` AS p\n       LEFT JOIN  `" . PREFIX . "category` AS c ON c.id = p.cat_id\n       LEFT JOIN  `" . PREFIX . "product_variant` AS pv ON p.id = pv.product_id";
         if (!$adminPanel) {
             $sql .= " LEFT JOIN (\n         SELECT pv.product_id, SUM( pv.count ) AS varcount\n         FROM  `" . PREFIX . "product_variant` AS pv\n         GROUP BY pv.product_id\n       ) AS temp ON p.id = temp.product_id";
         }
         $prod = new Models_Product();
         $fulltext = "";
         //Если есть варианты товаров то будеи искать и в них.
         if (DB::numRows(DB::query("SELECT id FROM `" . PREFIX . "product_variant` LIMIT 1"))) {
             $fulltextInVar = " OR\n             pv.`title_variant` LIKE '%" . DB::quote($keyword, true) . "%'\n           OR\n             pv.`code` LIKE '%" . DB::quote($keyword, true) . "%'";
         }
         $sql .= " WHERE (\n             p.`title` LIKE '%" . DB::quote($keyword, true) . "%'\n           OR\n             p.`code` LIKE '%" . DB::quote($keyword, true) . "%'\n        " . $fulltextInVar . ')';
         // Проверяем чтобы в вариантах была хотябы одна единица.
         if (!$adminPanel) {
             if (MG::getSetting('printProdNullRem') == "true") {
                 $sql .= " AND (temp.`varcount` > 0 OR temp.`varcount` < 0 OR p.count>0 OR p.count<0)";
             }
         }
         if ($onlyActive) {
             $sql .= ' AND p.`activity` = 1';
         }
     }
     $page = URL::get("page");
     $settings = MG::get('settings');
     //if ($mode=='groupBy') {
     $sql .= ' GROUP BY p.id';
     //}
     if ($allRows) {
         $sql .= ' LIMIT 15';
     }
     $navigator = new Navigator($sql, $page, $settings['countСatalogProduct'], $linkCount = 6, $allRows);
     // Определяем класс.
     $this->products = $navigator->getRowsSql();
     // добавим к полученым товарам их свойства
     $this->products = $this->addPropertyToProduct($this->products);
     $this->pager = $navigator->getPager();
     $result = array('catalogItems' => $this->products, 'pager' => $this->pager, 'numRows' => $navigator->getNumRowsSql());
     if (count($result['catalogItems']) > 0) {
         // упорядочивание списка найденых  продуктов
         // первыми в списке будут стоять те товары, у которых полностью совпала поисковая фраза
         // затем будут слова в начале которых встретилось совпадение
         // в конце слова в середине которых встретилось совпадение
         //
         //
         $keyword = str_replace('*', '', $keyword);
         $resultTemp = $result['catalogItems'];
         $prioritet0 = array();
         $prioritet1 = array();
         $prioritet2 = array();
         foreach ($resultTemp as $key => $item) {
             $title = mb_convert_case($item['title'], MB_CASE_LOWER, "UTF-8");
             $keyword = mb_convert_case($keyword, MB_CASE_LOWER, "UTF-8");
             if (trim($title) == $keyword) {
                 $prioritet0[] = $item;
                 continue;
             }
             if (strpos($title, $keyword) === 0) {
                 $prioritet1[] = $item;
             } else {
                 $prioritet2[] = $item;
             }
         }
         $result['catalogItems'] = array_merge($prioritet0, $prioritet1, $prioritet2);
     }
     $args = func_get_args();
     return MG::createHook(__CLASS__ . "_" . __FUNCTION__, $result, $args);
 }
Beispiel #8
0
$filter = new Filter($property);
$arr = array('date_add' => array(!empty($_POST['date_add'][0]) ? $_POST['date_add'][0] : $minDate, !empty($_POST['date_add'][1]) ? $_POST['date_add'][1] : $maxDate, 'date'), 'email' => !empty($_POST['email']) ? $_POST['email'] : null, 'role' => !empty($_POST['role']) ? $_POST['role'] : 'null');
$userFilter = $filter->getFilterSql($arr, explode('|', $_POST['sorter']));
$sorterData = explode('|', $_POST['sorter']);
if ($sorterData[1] > 0) {
    $sorterData[3] = 'desc';
} else {
    $sorterData[3] = 'asc';
}
$countPrintRowsUser = MG::getSetting('countPrintRowsUser');
if (empty($_POST['sorter'])) {
    if (empty($userFilter)) {
        $userFilter .= ' 1=1 ';
    }
    $userFilter .= "ORDER BY `date_add` DESC";
}
$navigator = new Navigator("SELECT  *  FROM `" . PREFIX . "user` WHERE " . $userFilter . "", $page, $countPrintRowsUser);
//определяем класс
$users = $navigator->getRowsSql();
$this->accessStatus = USER::$accessStatus;
$this->groupName = USER::$groupName;
$this->users = $navigator->getRowsSql();
$this->pagination = $navigator->getPager('forAjax');
$this->countPrintRowsUser = $countPrintRowsUser;
$res = DB::query("SELECT id  FROM `" . PREFIX . "user`");
$count = DB::numRows($res);
$this->usersCount = $count;
$this->displayFilter = $_POST['role'] != "null" && !empty($_POST['role']) || isset($_POST['applyFilter']);
// так проверяем произошол ли запрос по фильтрам или нет
$this->filter = $filter->getHtmlFilter();
$this->sorterData = $sorterData;
Beispiel #9
0
 /**
  * Возвращает список найденных продуктов соответствующих поисковой фразе.
  * @param string $keyword - поисковая фраза.
  * @param string $allRows - получить сразу все записи.
  * @param string $onlyActive - учитывать только активные продукты.
  * @param boolean $adminPanel - запрос из публичной части или админки.
  * @return array
  */
 public function getListProductByKeyWord($keyword, $allRows = false, $onlyActive = false, $adminPanel = false, $sort = NULL, $isStock = NULL, $count = NULL)
 {
     $settings = MG::get('settings');
     if (!$count) {
         $count = $settings['countСatalogProduct'];
     }
     $result = array();
     // Поиск по точному соответствию.
     $model = new Models_Catalog();
     if (!isset($_GET["page"])) {
         $result = $model->getListByUserFilter(1, " p.title =" . DB::quote(trim($keyword)) . " OR p.code =" . DB::quote(trim($keyword)));
     }
     if (count($result['catalogItems']) !== 0) {
         foreach ($result['catalogItems'] as &$item) {
             $imagesUrl = explode("|", $item["image_url"]);
             $item["image_url"] = "";
             if (!empty($imagesUrl[0])) {
                 $item["image_url"] = $imagesUrl[0];
             }
             $item['currency'] = MG::getSetting('currency');
         }
         $args = func_get_args();
         return MG::createHook(__CLASS__ . "_" . __FUNCTION__, $result, $args);
     }
     // Пример $keyword = " 'красный',   зеленый "
     // Убираем начальные пробелы и конечные.
     $keyword = trim($keyword);
     //$keyword = "'красный',   зеленый"
     // Вырезаем спец символы из поисковой фразы.
     $keyword = preg_replace('/[-`~!#$%^&*()_=+\\\\|\\/\\[\\]{};:"\',<>?]+/', '', $keyword);
     //$keyword = "красный   зеленый"
     // Замена повторяющихся пробелов на на один.
     $keyword = preg_replace('/ +/', ' ', $keyword);
     //$keyword = "красный зеленый"
     // Обрамляем каждое слово в звездочки, для расширенного поиска.
     $keyword = str_replace(' ', '* *', $keyword);
     //$keyword = "красный* *зеленый"
     // Добавляем по краям звездочки.
     $keyword = '*' . $keyword . '*';
     //$keyword = "*красный* *зеленый*"
     if ($sort == 'popular') {
         $sql = " \n        SELECT distinct p.code, v.views, CONCAT(c.parent_url,c.url) AS category_url, \n          p.url AS product_url, p.*, pv.product_id as variant_exist\n        FROM  `" . PREFIX . "product` AS p\n        LEFT JOIN `mg_popular-goods_visits` v ON v.id_product = p.id\n        LEFT JOIN  `" . PREFIX . "category` AS c ON c.id = p.cat_id\n        LEFT JOIN  `" . PREFIX . "product_variant` AS pv ON p.id = pv.product_id";
     } else {
         $sql = " \n        SELECT distinct p.code, CONCAT(c.parent_url,c.url) AS category_url, \n          p.url AS product_url, p.*, pv.product_id as variant_exist\n        FROM  `" . PREFIX . "product` AS p\n        LEFT JOIN  `" . PREFIX . "category` AS c ON c.id = p.cat_id\n        LEFT JOIN  `" . PREFIX . "product_variant` AS pv ON p.id = pv.product_id";
     }
     if (!$adminPanel) {
         $sql .= " LEFT JOIN (\n        SELECT pv.product_id, SUM( pv.count ) AS varcount\n        FROM  `" . PREFIX . "product_variant` AS pv\n        GROUP BY pv.product_id\n      ) AS temp ON p.id = temp.product_id";
     }
     $product = new Models_Product();
     $fulltext = "";
     // Проверяем наличие записей в вариантах если их нет, то не включаем
     // в поиск полнотекстовые индесты таблицы вариантов.
     if ($product->getVariants($id)) {
         $fulltext = ", pv.`code`, pv.`title_variant`";
     }
     $sql .= " WHERE MATCH (\n        p.`title` , p.`description` , p.`code` , p.`meta_title` , p.`meta_keywords` , p.`meta_desc` " . $fulltext . "\n        )\n        AGAINST (\n        '" . $keyword . "'\n        IN BOOLEAN\n        MODE\n        ) ";
     if ($onlyActive) {
         $sql .= ' AND p.`activity` = 1';
     }
     if ($isStock) {
         $sql .= " AND (temp.`varcount` > 0 OR temp.`varcount` < 0 OR p.count>0 OR p.count<0)";
     }
     if ($sort == 'desc') {
         $sql .= ' ORDER BY price DESC';
     } else {
         if ($sort == 'asc') {
             $sql .= ' ORDER BY price ASC';
         } else {
             if ($sort == 'popular') {
                 $sql .= ' ORDER BY v.views DESC';
             }
         }
     }
     $page = URL::get("page");
     $navigator = new Navigator($sql, $page, $count, $linkCount = 6, $allRows);
     // Определяем класс.
     $this->pages = $navigator->getRowsSql();
     $idsProduct = array();
     if (!empty($this->pages)) {
         foreach ($this->pages as $key => $product) {
             $idsProduct[$product['id']] = $key;
             // Назначаем для продукта позьзовательские характеристики по умолчанию, заданные категорией.
             $this->pages[$key]['thisUserFields'] = MG::get('category')->getUserPropertyCategoryById($product['cat_id']);
             $this->pages[$key]['currency'] = $settings['currency'];
             $this->pages[$key]['actionBuy'] = '<a href="' . SITE . '/catalog?inCartProductId=' . $product["id"] . '" class="addToCart product-buy" data-item-id="' . $product["id"] . '">В корзину</a>';
             $this->pages[$key]['actionView'] = '<a href="' . SITE . '/' . (isset($product["category_url"]) ? $product["category_url"] : 'catalog') . '/' . $product["product_url"] . '" class="product-info">Подробнее</a>';
             $imagesUrl = explode("|", $this->pages[$key]['image_url']);
             $this->pages[$key]["image_url"] = "";
             if (!empty($imagesUrl[0])) {
                 $this->pages[$key]["image_url"] = $imagesUrl[0];
             }
         }
     }
     if ($findPart = trim(DB::quote(implode(',', array_keys($idsProduct))), "'")) {
         // Формируем список id продуктов к которым нужно найти пользовательские характеристики.
         $where = ' IN (' . $findPart . ')';
     } else {
         $findPart = ' IN (0)';
     }
     $res = DB::query("\n      SELECT pup.property_id, pup.value, pup.product_id, pup.type_view, prop.*\n      FROM `" . PREFIX . "product_user_property` as pup\n      LEFT JOIN `" . PREFIX . "property` as prop\n        ON pup.property_id = prop.id\n      WHERE pup.`product_id` " . $where);
     while ($userFields = DB::fetchAssoc($res)) {
         if (!empty($this->pages)) {
             $this->pages[$idsProduct[$userFields['product_id']]]['thisUserFields'][$userFields['property_id']] = $userFields;
         }
     }
     $this->pager = $navigator->getPager();
     $result = array('catalogItems' => $this->pages, 'pager' => $this->pager, 'numRows' => $navigator->getNumRowsSql());
     if (count($result['catalogItems']) == 0) {
         //примитивный поиск по названию. 100% соответствие
         $sql = " \n        SELECT id\n        FROM  `" . PREFIX . "product` AS p\n        WHERE title = " . DB::quote($keyword) . " OR code = " . DB::quote($keyword);
         if ($row = DB::fetchAssoc($sql)) {
             $product = new Models_Product();
         }
     }
     $args = func_get_args();
     return MG::createHook(__CLASS__ . "_" . __FUNCTION__, $result, $args);
 }
Beispiel #10
0
$this->totalSumm = $totalSumm;
// Десериализация строки в массив (состав заказа)
foreach ($orders as $k => $order) {
    $orders[$k]['order_content'] = unserialize(stripslashes($order['order_content']));
    if ($orders[$k]['number'] == '') {
        $orders[$k]['number'] = $orders[$k]['id'];
        DB::query("UPDATE `" . PREFIX . "order` SET `number`= " . DB::quote($orders[$k]['number']) . " WHERE `id`=" . DB::quote($orders[$k]['id']) . "");
    }
}
$propertyOrder = MG::getOption('propertyOrder');
$propertyOrder = stripslashes($propertyOrder);
$propertyOrder = unserialize($propertyOrder);
$product = new Models_Product();
$exampleName = $product->getProductByUserFilter(' 1=1 LIMIT 0,1');
$ids = array_keys($exampleName);
$this->exampleName = $exampleName[$ids[0]]['title'];
$this->assocStatus = Models_Order::$status;
$this->assocStatusClass = array('get-paid', 'get-paid', 'paid', 'get-paid', 'dont-paid', 'paid', 'get-paid');
// цветная подсветка статусов
$model = new Models_Order();
$this->assocDelivery = $model->getListDelivery();
$this->assocPay = $model->getListPayment();
$this->orders = $orders;
$this->pager = $navigator->getPager('forAjax');
$this->orderCount = $model->getOrderCount();
$this->countPrintRowsOrder = $countPrintRowsOrder;
$this->displayFilter = $_POST['status_id'] != "null" && !empty($_POST['status_id']) || isset($_POST['applyFilter']);
// так проверяем произошол ли запрос по фильтрам или нет
$this->filter = $filter->getHtmlFilter();
$this->sorterData = $sorterData;
$this->propertyOrder = $propertyOrder;