X   Сообщение сайта
(Сообщение закроется через 2 секунды)

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Определение префикса модуля
wormen
сообщение 2014-04-16, 14:45
Сообщение #1
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


Частенько при разработках модулей, возникает необходимость определить, нужно ли для ссылок этого модуля устанавливать префикс, долго думал как лучше и проще сделать..... в итоге написал такой вариант

public static function CheckPrefix(){
        $mc=$GLOBALS['Eleanor']->module['config'];
        Eleanor::LoadOptions('site');

        $R=Eleanor::$Db->Query('SELECT `sections` FROM '.P.'modules WHERE `id`='.Eleanor::$vars['prefix_free_module']);
        $a=$R->fetch_assoc();

        $sections = unserialize($a['sections']);
        $prefix = $mc['n'].'/';

        foreach($sections as $s){
            if($s[''][0] == $mc['n']) $prefix = '';
        }

        return$prefix;
    }

этот код я обычно вставляю в api.php своих модулей... Данная функция проверяет, является ли текущий модуль установленным без префикса, и возвращает готовую строку для вставки в URL

... может кому пригодится....

Сообщение отредактировал wormen - 2014-04-17, 0:26
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2014-04-16, 19:11
Сообщение #2
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 260
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


Цитата (wormen @ 2019-06-19 23:31)
SELECT *
Зачем извлекать все записи из строки, если нас интересует только sections ?
Перейти в начало страницы
+Цитировать сообщение
wormen
сообщение 2014-04-16, 22:40
Сообщение #3
Опытный
Иконка группы

Группа: Eleanor user
Сообщений: 800
Регистрация: 2012-09-13

Репутация:   нет  
Всего: нет


исправил

Сообщение отредактировал wormen - 2014-04-17, 1:45
Перейти в начало страницы
+Цитировать сообщение

Ответить в данную темуНачать новую тему
0 чел. читают эту тему (гостей: 0, скрытых пользователей: 0)
Пользователей: 0

 
RSS Текстовая версия 0.0372 сек.    12 запросов    GZIP включен    Сейчас: 2019-06-19, 22:31