Приветствую всех! Уважаемые гуру ICMS нужна ваша помощь. Пытаюсь реализовать вывод определенного блока на страницах содержащих в адресе 'auth'. И наоборот, не отображать на этих же страницах. У меня есть два способа проверки, но каждый из них ведет за собой сложности. Сайт закрыт от не авторизованных пользователей.
1 Способ: Через определения ссылки
, вроде бы работает, но для всех подкатегорий приходится прописывать отдельно, иначе не работает:
<?php if ($_SERVER['REQUEST_URI'] == '/auth/login?back=/' or $_SERVER['REQUEST_URI'] == '/auth/register' or $_SERVER['REQUEST_URI'] == '/auth/restore') { ?>
...блок....
<?php } ?>
И все бы ничего, но появляется проблема после того, как пользователь разлогинивается например со страницы новости и страница имеет вид:
...../auth/login?back=/news
И блок на этой странице уже не показывает.
Как то это муторно для каждого случая делать проверку.
2 Способ: Делаем проверку по контроллеру. Думаю что это вообще каряво, надеюсь поправит кто
<?php $auth = cmsCore::getController('auth'); ?>
<?php if (!empty ($auth)) { ?> .......блок....
<?php } ?>
Этот метод почему то либо закрывает на всех страницах, либо показывает на всех страницах.