Распишите подробнее и по пунктам, что куда должно передаватся и что необходимо получить.
Извиняюсь за предыдущую сумбурность, описываю:
Имеем шаблон от YooTheme и ZOO. Как известно, в их шаблонах переопределяется вывод модуля поиска (mod_search) и сам компонент поиска (com_search). Для реализации поиска по ZOO имеется плагин zoosearch. Модуль поиска получает результат поиска через AJAX запрос. Необходимо реализовать поиск только по текущему приложению компонента ZOO. Т.е. если посетитель находится в ZOO блоге, то введя поисковый запрос в AJAX модуль поиска, возвращается результат поиска только по блогу, если посетитель находится в справочнике, то получает результат поиска только по справочнику и т.д.
В SQL запрос плагина zoosearch добавляю дополнительное условие поиска (." AND a.application_id = " . $this->app->zoo->getApplication()->id):
$select = "DISTINCT a.*";
$from = ZOO_TABLE_ITEM." AS a"
." LEFT JOIN ".ZOO_TABLE_SEARCH." AS b ON a.id = b.item_id"
." LEFT JOIN ".ZOO_TABLE_TAG." AS c ON a.id = c.item_id";
$conditions = array("(".$where.")"
." AND a.searchable = 1"
." AND a.application_id = " . $this->app->zoo->getApplication()->id
." AND " . $this->app->user->getDBAccessString()
." AND (a.state = 1"
." AND (a.publish_up = ".$null." OR a.publish_up <= ".$now.")"
." AND (a.publish_down = ".$null." OR a.publish_down >= ".$now."))");
На выходе получаем не текущий id приложения ZOO, а id приложения, на главной странице.
Задача получить id текущего приложения компонента ZOO.
Посмотрите детальнее функцию getApplication(), она задекларирована в admin/helpers/zoo.php
Посмотрел функцию getApplication(), но так и не понял, как с её помощью можно извлечь id из сессии.