Инструкция по добавлению новых типов всплывающих оконФайл mavikthumbnails.xml
Для Joomla 1.5:
Найти фрагмент
<param name="popuptype" type="list" default="slimbox" label="PLG_MAVIKTHUMBNAILS_POPUPTYPE" description="PLG_MAVIKTHUMBNAILS_POPUPTYPE_DESCRIPTION">
<option value="none">None</option>
<option value="slimbox">Slimbox</option>
<option value="highslide">Highslide (for non-commercial sites)</option>
<option value="modal">Joomla Modal</option>
</param>
и дописать еще один option с названием скрипта всплывающих окон.
Для Joomla 1.6:
Найти фрагмент
<field name="popuptype" type="list" default="slimbox" label="PLG_MAVIKTHUMBNAILS_POPUPTYPE" description="PLG_MAVIKTHUMBNAILS_POPUPTYPE_DESCRIPTION">
<option value="none">None</option>
<option value="slimbox">Slimbox</option>
<option value="highslide">Highslide (for non-commercial sites)</option>
<option value="modal">Joomla Modal</option>
</field>
и также дописать option с названием скрипта всплывающих окон.
В папке mavikthumbnails создать файл название которого совпадает со значением value в option и расширением php.
Образец содержимого файла смотрим в файлах: highslide.php, modal.php, slimbox.php
Название класса: plgContentMavikThumbnailsDecorator<Значение value в option>
У класса всего 3 метода:
addHeader() - вызывается один раз для каждой страницы, сдесь вы можете подключить необходимые ява-скрипты и стили;
item() - вызывается для каждой статьи, модуля и т.п. (в больщинстве случаев не требуется);
decorate() - вызывается для каждого изображения.
Вместо передачи параметров используется доступ к объекту плагина $this->plugin из которого можно получить любые данные.
Основные из них:
$this->plugin->img - объект изображения (это не строка, а именно объект с уже разобраными аттрибутами, значения атрибутов можно получить через метод getAttribute);
$this->plugin->originalSrc - исходное значение аттрибута src (в объекте img там уже ссылка на превьюшку);
Чтобы получить из объекта img строку используется метода toString().