Связь между двумя экземплярами модуля

Обсуждение CMS Made Simple в России.

Moderators: iturbay, wdwp

Post Reply
skyboy
Forum Members
Forum Members
Posts: 39
Joined: Mon Dec 01, 2008 11:41 am

Связь между двумя экземплярами модуля

Post by skyboy »

Есть модуль Banners. В нем категория баннеров. У меня на странице выводятся одновременно два баннера из одной категории. Но случается, что отображается один и тот же баннер в разных позициях. Это проблема.
Одним из решений данной проблемы был бы учет выведенных в пределах текущей страницы баннеров. Но экземпляр модуля имеет непосредственно информацию только о параметрах вызова себя. Есть ли возможность получить разделяемый только между экземплярами модуля набор переменных? Или же придется использовать доступные глобально переменные?
З.Ы. Вроде, по-русски пишу, но как-то сбивчиво выходит.
skyboy
Forum Members
Forum Members
Posts: 39
Joined: Mon Dec 01, 2008 11:41 am

Re: Связь между двумя экземплярами модуля

Post by skyboy »

Уточню, что интересует обобщенное решение. Модуль Banners упомянул только, чтоб подвести обоснование использования разделяемых переменных.
von-hamster
Power Poster
Power Poster
Posts: 339
Joined: Thu Nov 01, 2007 3:11 pm

Re: Связь между двумя экземплярами модуля

Post by von-hamster »

Если я не ошибусь, то можно использовать не глобальные переменные, а свойства класса модуля... Например, после получения данных из БД - записываем айдишники в массив, например, $this->active_items = $array_of_ids;..., а в запросе , во время селекта Select .... where id not in ($this->active_items) (написал схематично)....
skyboy
Forum Members
Forum Members
Posts: 39
Joined: Mon Dec 01, 2008 11:41 am

Re: Связь между двумя экземплярами модуля

Post by skyboy »

а свойства класса модуля...
хм. я с чего-то решил, что для каждого обращения к плагину(при встрече в шаблоне конструкции {cms_module .... }), создается новый экземпляр плагина. соответственно, поля объекта у каждого будут иметь свои значения. может, я и ошибся. если же не ошибся, то, в принципе, могут помочь статические поля класса. скорее всего.
Post Reply

Return to “Russian - русский”