Имитация ситуации: админ заходит в адинку и жмёт батон в меню "Сайт". Видим: отсутствует личный кабинет, хотя Login() отработала, с PHPSESSID всё ок . Трабла: у админа нет сессии в таблице сессий базы, поэтому $this->template->assert('user_menu', $Login->getUserMenu()); //если в main.php мы дёргаем меню: а в \apps\system\lib\system\user\login.php $user_id = $this->getSessionUserId(); // мы дёргаем из базы и получим 0 а значит user_menu не выведется. имхо: или заводит сессионную в таблицу или возвращаться к getUserId();