Опубликовано bolnikh в Вс, 07/04/2010 - 18:33
Posted in
Как вы помните, на нашем сайте мобильных анекдотов пользователь может менять режим отображения. Грубо говоря, при смене режима отображения - с обычного на мобильный мы меняем Шаблон, и все.
Также пользователь мобильной версии сайта может переключать режим голосования.
Мы по умолчанию определяем режим отображения, а когда пользователь выбрал режим сам - заносим данные об этом в сессию (будет записано в куку и там храниться).
Вот функции переключения режимов в Контроллере codeigniter
/**
* Переключение режимов мобильный и обычный
*
* @param string $mode on|off
* @param unknown_type $url - закодированный урл
*/
function mobile($mode = 'on', $url) {
$this->session->set_userdata('is_mobile', $mode == 'on' ? 'on' : 'off');
$this->common_lib->flash(str_replace('-', '/', $url), 'Режим отображения изменен');
}
/**
* Включить выключить голосование
*
* @param string $switch = 'on' | 'off'
* @param unknown_type $url - закодированный урл
*/
function golos($switch = 'on', $url) {
$this->session->set_userdata('is_golos', $switch == 'on' ? 'on' : 'off');
$this->common_lib->flash(str_replace('-', '/', $url), 'Режим голосования изменен');
}
PHP код функций очень прост - устанавливаем сессионные данные и делаем редирект с помощью flash функции (см. пред. статью). Все.
