Решил реализовать на сайте SafeMode, On - не показывать пикантный контент, Off - показывать все! Регистрации на сайте нет, решил реализовать посредством cookies. Только после нажатия в первый раз на кнопку Safe Mode записывается cookie. На локальном сервере все работает отлично, выложил на хостинг - значение cookie переключается как и должно, но код срабатывает, только после обновления страницы.
public function actionIndex()
{
if (isset(Yii::app()->request->cookies['safe_mode']))
$cookie = Yii::app()->request->cookies['safe_mode']->value;
else
$cookie = 1;
$this->render('index',array('cookie'=> $cookie));
}
public function actionSafe()
{
if (isset(Yii::app()->request->cookies['safe_mode']))
{
$cookie = Yii::app()->request->cookies['safe_mode']->value;
if ($cookie)
Yii::app()->request->cookies['safe_mode'] = new CHttpCookie('safe_mode', 0);
else
Yii::app()->request->cookies['safe_mode'] = new CHttpCookie('safe_mode', 1);
} else
Yii::app()->request->cookies['safe_mode'] = new CHttpCookie('safe_mode', 0);
$this->redirect(Yii::app()->request->urlReferrer);
}
По нажатию на кнопку SafeMode из Index’а выполняется Safe Action. Повторяю, что тот же код исправно работает на локалке, на Denwer’e.
Есть у кого какие мысли?