Глобальный перехватчик

подскажите, как заставлять какой-ибо скрипт выполняться при любом переходе на любюю страницу, не прописывая этот скрипт непосредственно в index.php? Существует ли какой-либо перехватчик на глобальном уровне, ну в общем откуда я могу словить какое либо событие…

вобщем суть - мне надо запоминать последнюю дату посещения сайта авторизованным пользователем, естесственно что он будет переходдить на разные страницы, и поэтому в каждом контроллере колбасить код не прикалывает, вобщем подскажите решения :)

а если для всех контроллеров сделать базовым свой(а он в свою очередь будет наследовать CController), и в нем прописать обработчик события?!

Еще можно создать компоненту, которую подгружать через preload в конфиге.

А в методе Init() этой компоненты проводить нужные действия.

http://www.yiiframework.com/doc/api/CApplicationComponent

эх…неохота такое городить…да и не умею…

Самый простой способ для вас - это то что вы сами и описали. Наследуйте все контроллеры от какого то базового, к примеру TestController. А его уже от CController.

И в этом самом TestController создайте метод init:


public function init() {

   // тут ваш код что надо исполнять!! 

   // ....

   // тут ваш код что надо исполнять!! 

   parent::init();

}

и то что вы напишите в init-е будет выполняться в любом экшине