mirror of
https://github.com/avecms/AVE.cms.git
synced 2025-01-22 07:20:07 +00:00
Fixes
This commit is contained in:
parent
75f7031ca0
commit
f9731913bf
@ -1419,6 +1419,12 @@
|
||||
return $cache_id = 'requests/settings/' . $cache_id;
|
||||
}
|
||||
|
||||
//-- Если это условия запроса, то меняем расположение
|
||||
if (substr($cache_id, 0, 3) == 'rqc') {
|
||||
$cache_id = str_replace('rqc_', '', $cache_id);
|
||||
return $cache_id = 'requests/settings/' . $cache_id;
|
||||
}
|
||||
|
||||
// -- Навигация
|
||||
if (substr($cache_id, 0, 3) == 'nav') {
|
||||
$cache_id = explode('_', $cache_id);
|
||||
|
@ -11,6 +11,37 @@
|
||||
* @license GPL v.2
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* Возвращает меню навигации
|
||||
*
|
||||
* @param int $id идентификатор меню навигации
|
||||
* @return string|mixed объект с навигацией по id, либо массив всех навигаций
|
||||
*/
|
||||
function get_navigations($navi_id = null)
|
||||
{
|
||||
global $AVE_DB;
|
||||
|
||||
$sql = "
|
||||
SELECT
|
||||
# NAVIGATION = $navi_id
|
||||
*
|
||||
FROM
|
||||
" . PREFIX . "_navigation
|
||||
WHERE
|
||||
navigation_id = '" . $navi_id . "'
|
||||
OR
|
||||
alias = '" . $navi_id . "'
|
||||
";
|
||||
|
||||
$navigation = $AVE_DB->Query($sql, -1, 'nav_' . $navi_id, true, '.navigation')->FetchRow();
|
||||
|
||||
$navigation->user_group = explode(',',$navigation->user_group);
|
||||
|
||||
return $navigation;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Функция обработки навигации
|
||||
*
|
||||
@ -26,20 +57,9 @@
|
||||
|
||||
Debug::startTime('NAVIAGTION_' . $navi_id);
|
||||
|
||||
// Достаем для проверки тип меню
|
||||
$sql = "
|
||||
SELECT
|
||||
# NAVIGATION = $navi_id
|
||||
expand_ext
|
||||
FROM
|
||||
".PREFIX."_navigation
|
||||
WHERE
|
||||
navigation_id = '" . $navi_id . "'
|
||||
OR
|
||||
alias = '" . $navi_id . "'
|
||||
";
|
||||
$navi_menu = get_navigations($navi_id);
|
||||
|
||||
$expnad_ext = $AVE_DB->Query($sql, -1, 'nav_' . $navi_id, true, '.naviagtion')->GetCell();
|
||||
$expnad_ext = $navi_menu->expand_ext;
|
||||
|
||||
// извлекаем level из аргумента
|
||||
$navi_print_level = (! empty($navi_tag[2]))
|
||||
@ -48,30 +68,6 @@
|
||||
|
||||
$navi = '';
|
||||
|
||||
$cache_file = BASE_DIR . '/tmp/cache/sql/navigations/' . $navi_id . '/template.cache';
|
||||
|
||||
// Если включен DEV MODE, то отключаем кеширование запросов
|
||||
if (defined('DEV_MODE') AND DEV_MODE || $expnad_ext != 1)
|
||||
$cache_file = null;
|
||||
|
||||
if (! is_dir(dirname($cache_file)))
|
||||
mkdir(dirname($cache_file), 0766, true);
|
||||
|
||||
// получаем меню навигации по id,
|
||||
// и если такой не существует, выводим сообщение
|
||||
|
||||
if (file_exists($cache_file))
|
||||
{
|
||||
$navi_menu = unserialize(file_get_contents($cache_file));
|
||||
}
|
||||
else
|
||||
{
|
||||
$navi_menu = get_navigations($navi_id);
|
||||
|
||||
if ($cache_file)
|
||||
file_put_contents($cache_file, serialize($navi_menu));
|
||||
}
|
||||
|
||||
if (! $navi_menu)
|
||||
{
|
||||
echo 'Menu ', $navi_id, ' not found!';
|
||||
@ -108,7 +104,7 @@
|
||||
|
||||
// запрос для выборки по текущему алиасу
|
||||
$sql_doc_active_alias = '';
|
||||
|
||||
|
||||
$url_suff = '';
|
||||
|
||||
if (defined('URL_SUFF') AND URL_SUFF)
|
||||
@ -214,7 +210,7 @@
|
||||
|
||||
$cache_items = BASE_DIR . '/tmp/cache/sql/navigations/' . $navi_id . '/items.cache';
|
||||
|
||||
$navi_items = array();
|
||||
$navi_items = [];
|
||||
|
||||
// Если включен DEV MODE, то отключаем кеширование запросов
|
||||
if (defined('DEV_MODE') AND DEV_MODE || $expnad_ext != 1)
|
||||
@ -329,7 +325,7 @@
|
||||
* @param int $parent (исследуемый родитель, изначально 0 - верхний уровень)
|
||||
* @return string $navi - готовый код навигации
|
||||
*/
|
||||
function printNavi($navi_menu, $navi_items, $navi_active_way, $navi_item_tpl, $parent = 0)
|
||||
function printNavi ($navi_menu, $navi_items, $navi_active_way, $navi_item_tpl, $parent = 0)
|
||||
{
|
||||
// выясняем уровень
|
||||
$navi_item_level = $navi_items[$parent][0]['level'];
|
||||
@ -499,63 +495,13 @@
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Возвращает меню навигации
|
||||
*
|
||||
* @param int $id идентификатор меню навигации
|
||||
* @return string|mixed объект с навигацией по id, либо массив всех навигаций
|
||||
*/
|
||||
function get_navigations($id = null)
|
||||
{
|
||||
global $AVE_DB;
|
||||
|
||||
$navigations = array();
|
||||
|
||||
if ($id)
|
||||
{
|
||||
$sql = $AVE_DB->Query("
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
" . PREFIX . "_navigation
|
||||
WHERE
|
||||
" . (is_numeric($id) ? 'navigation_id' : 'alias') . " = '" . $id . "'
|
||||
");
|
||||
}
|
||||
else
|
||||
{
|
||||
$sql = $AVE_DB->Query("
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
" . PREFIX . "_navigation
|
||||
");
|
||||
}
|
||||
|
||||
while ($row = $sql->FetchRow())
|
||||
{
|
||||
$row->user_group = explode(',', $row->user_group);
|
||||
|
||||
if ($id)
|
||||
$navigations[$id] = $row;
|
||||
else
|
||||
$navigations[$row->navigation_id] = $row;
|
||||
}
|
||||
|
||||
if ($id)
|
||||
return $navigations[$id];
|
||||
else
|
||||
return $navigations;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Проверка прав доступа к навигации по группе пользователя
|
||||
*
|
||||
* @param int $id идентификатор меню навигации
|
||||
* @return boolean
|
||||
*/
|
||||
function check_navi_permission($id)
|
||||
function check_navi_permission ($id)
|
||||
{
|
||||
$navigation = get_navigations($id);
|
||||
|
||||
|
@ -61,8 +61,9 @@
|
||||
$from = [];
|
||||
$where = [];
|
||||
|
||||
$sql_ak = $AVE_DB->Query("
|
||||
SELECT *
|
||||
$sql = "
|
||||
SELECT
|
||||
*
|
||||
FROM
|
||||
" . PREFIX . "_request_conditions
|
||||
WHERE
|
||||
@ -70,8 +71,10 @@
|
||||
AND
|
||||
condition_status = '1'
|
||||
ORDER BY
|
||||
condition_position ASC
|
||||
");
|
||||
condition_position ASC;
|
||||
";
|
||||
|
||||
$sql_ak = $AVE_DB->Query($sql, -1, 'rqc_' . $id, true, '.conditions');
|
||||
|
||||
// Обрабатываем выпадающие списки
|
||||
|
||||
@ -102,8 +105,12 @@
|
||||
}
|
||||
}
|
||||
|
||||
// ./Обрабатываем выпадающие списки
|
||||
|
||||
$i = 0;
|
||||
|
||||
$numeric = [];
|
||||
|
||||
while ($row_ak = $sql_ak->FetchRow())
|
||||
{
|
||||
// id поля рубрики
|
||||
|
Loading…
x
Reference in New Issue
Block a user