Когда выложил этот router.php на форуме компонента, оказалось, что он не работает, если на изображения наложены водяные знаки. Сами разработчики это не предусмотрели, так как ссылки в скриптах выводятся не через роутер.
Поэтому, ещё надо делать хаки в самой JoomGallery, в следующих файлах:
includes/
joom.javascript.phpзаменить в строке 241
$js_imgpath = _JOOM_LIVE_SITE.'index.php?option=com_joomgallery&func=watermark&id='.$id.'&catid='.$catid.'&orig='.$orig.'&no_html=1'.$Itemid_jg;
на
$js_imgpath = JRoute::_('index.php?option=com_joomgallery&func=watermark&id='.$id.'&catid='.$catid.'&orig='.$orig.'&no_html=1'.$Itemid_jg);
includes/
joom.viewdetails.phpзаменить в строке 482
$source_cache[] = _JOOM_LIVE_SITE.$this->joom_componenturl.'&func=watermark&id='
.$row1->id.'&catid='.$this->catid._JOOM_ITEMID;
на
$source_cache[] = JRoute::_($this->joom_componenturl.'&func=watermark&id='
.$row1->id.'&catid='.$this->catid._JOOM_ITEMID);
заменить в строке 194
$this->picture_src = _JOOM_LIVE_SITE.$this->joom_componenturl.
'&func=watermark&catid='.$this->catid.
'&id='.$this->id.str_replace('&','&',_JOOM_ITEMID);
на
$this->picture_src = JRoute::_($this->joom_componenturl.
'&func=watermark&catid='.$this->catid.
'&id='.$this->id.str_replace('&','&',_JOOM_ITEMID));
Не уверен, все ли три замены проводить надо для нормально работы, сильно не вникал.
Потом модифицировал router.php для работы с watermark. Его можно скачать
там или сразу по
этой ссылке. Можете прикрепить в этой теме.
Только если не нужны водяные знаки, тогда лучше использовать ту версию файла, которая прикреплена в первом сообщении темы, чтобы не было проблем с обновлением компонента, да и чтобы чуть быстрее работало.
На открытых сайтах вотермарки не использую, поэтому примеров работы нет.