Ямерт
The Old One
Отличить JS pop-up от главного окна
Привет!
Есть следующая проблема.
В системе предусмотрено динамическое подключение графического дизайна. В сессию запихивается код графической схемы ($_SESSION['myscheme'] = 'blue_footer'), и компонент View, учитывая эту текущую схему, подключает нужные шаблоны. Сделано это для партнёрских программ - то есть у одного, скажем, на экране будет синий футер, у другого вообще нет ни хэдэра ни футера. Всё замечательно и сказочно.
Но. Заказчики теперь хотят, чтобы в этой же системе открывалось поп-ап окошко, в котором будет она же, но только тоже с другим дизайном. И вот тут проблема. Если в поп-апе я поставлю $_SESSION['myscheme'] = 'popup_style', то это также будет установлено и в главном окне. А этого надо избежать. Можно, конечно, таскать имя схемы в УРЛе, но для этого придётся переколбашивать СТОЛЬКО кода, что просто аллес капут. У меня всё идёт через index.php, партнёрские программы идут на другой PHP, который после установки необходимой инфы в сессию редиректит всё на тот же index.php, где таскается только код контроллера запроса.
Поэтому наиболее простой вариант - это как-то отличать поп-ап от главного окна. Главная проблема в том, что домен-то один и тот же.
У меня такие идеи:
1) через JS ставить в pop-up'e COOKIE - document.setcookie. Таким образом, поставится он только в поп-апе, не так ли?
2) начинать в поп-апе новую сессию. Только вот сохранится ли старая в главном окне?
У кого какие есть идеи?
Привет!
Есть следующая проблема.
В системе предусмотрено динамическое подключение графического дизайна. В сессию запихивается код графической схемы ($_SESSION['myscheme'] = 'blue_footer'), и компонент View, учитывая эту текущую схему, подключает нужные шаблоны. Сделано это для партнёрских программ - то есть у одного, скажем, на экране будет синий футер, у другого вообще нет ни хэдэра ни футера. Всё замечательно и сказочно.
Но. Заказчики теперь хотят, чтобы в этой же системе открывалось поп-ап окошко, в котором будет она же, но только тоже с другим дизайном. И вот тут проблема. Если в поп-апе я поставлю $_SESSION['myscheme'] = 'popup_style', то это также будет установлено и в главном окне. А этого надо избежать. Можно, конечно, таскать имя схемы в УРЛе, но для этого придётся переколбашивать СТОЛЬКО кода, что просто аллес капут. У меня всё идёт через index.php, партнёрские программы идут на другой PHP, который после установки необходимой инфы в сессию редиректит всё на тот же index.php, где таскается только код контроллера запроса.
Поэтому наиболее простой вариант - это как-то отличать поп-ап от главного окна. Главная проблема в том, что домен-то один и тот же.
У меня такие идеи:
1) через JS ставить в pop-up'e COOKIE - document.setcookie. Таким образом, поставится он только в поп-апе, не так ли?
2) начинать в поп-апе новую сессию. Только вот сохранится ли старая в главном окне?
У кого какие есть идеи?