Готовые решения. Галерея Photoshare

Готовые решения. Галерея Photoshare

Довольно часто на сайтах размещают коллекции фотографий, рисунков, схем и других графических файлов. Для того чтобы такая онлайновая галерея имела презентабельный вид и была удобной в использовании, веб-мастеру приходится проделывать значительный объем работы, ведь коллекцию надо структурировать, предусмотреть возможности по добавлению новых файлов, последующей работе с ними и многое другое.

Конечно, если собрание небольшое, пополняется редко и никаких особенных интерактивных возможностей не требует, можно сверстать простую HTML-страничку, содержащую самостоятельно изготовленные миниатюры, ссылки от которых будут вести к полноразмерным картинкам. В целях ускорения процесса можно воспользоваться программами, способными самостоятельно генерировать такие альбомы. Тот же всенародно любимый пакет ACDSee умеет это делать, да и другие программы не отстают.

Однако такое решение не всегда способно удовлетворить более серьезные запросы. Так, если над формированием одного раздела галереи работают несколько человек, да еще с различными полномочиями, на повестку дня встает вопрос об использовании динамических технологий.
Сейчас для решения обозначенной задачи развертывания онлайновой галереи можно найти целый ряд готовых скриптов, в том числе бесплатных. Это Coppermine Photo Gallery, My eGallery и многие другие, менее известные пакеты. Названные скрипты отличаются некоторыми функциональными возможностями, используемыми технологиями и особенностями работы, что в перспективе требует отдельного рассмотрения. Сегодня мы познакомимся с одним из достойных представителей этого семейства — галереей Photoshare.
Пакет Photoshare позволяет построить достаточно симпатичную галерею с хорошей функциональностью. В ее рамках можно создавать тематические альбомы с разграниченными правами на доступ и редактирование. Допускаются вложенные альбомы. Миниатюры изображений генерируются автоматически. Доступны различные шаблоны оформления и несколько режимов просмотра альбомов. Работает галерея как модуль свободной системы управления контентом сайта PostNuke.

Не так давно вышла четвертая версия данного пакета, после чего быстро появилось дополнение Photoshare 4.01, в котором было оперативно исправлено несколько незначительных недостатков. По сравнению с предыдущими версиями был по-новому решен механизм изменения размера отображаемых миниатюр в зависимости от размера окна, усовершенствованы параметры разделения полномочий доступа (к примеру, пользователь может опубликовать изображения, которые будут видны только одному определенному автором посетителю, при этом в общих списках конфиденциальная информация не видна). Переработан интерфейс администрирования модуля. Исправлены некоторые ошибки предыдущих версий, изменены таблицы стилей и облагорожен HTML-код и пр.

Домашняя страница программы находится на www.elfisk.dk, кроме этого, можно зайти на sourceforge.net/projects/elfisk/. Выложен пакет в виде архива. Размер — чуть больше 200 Кб. Для своей работы Photoshare 4.01 требует PHP версии не ниже 4.06 с расширением GD.
Здесь нужно добавить небольшой комментарий. В документации к пакету оговаривается возможность возникновения в случае некоторых версий PHP проблемы использования функции ImageCreateTrueColor. Для того чтобы избежать неприятностей, рекомендуется использовать GD 2.0 и выше. Другой способ — отыскать и раскомментировать в настроечном файле pnuserapi.php строку $hasTrueColorImage = false;.
Хотелось бы заметить, что в предыдущей, третьей версии пакета свобода выбора технологии обработки изображений была куда шире: кроме GD, были доступны ImageMagik, NetPBM, а можно было и вовсе обойтись без дополнительных пакетов, возложив обработку картинок на браузер клиента. Система в этом случае работала помедленней, но с точки зрения подбора хостинга — демократичней некуда. Это было одной из изюминок, свойственных именно Photoshare. Жаль, что в новой версии автор скрипта Йорн Линд Нильсен отказался от перечисленных возможностей.
Поскольку, как уже было отмечено выше, пакет Photoshare разрабатывался как дополнительный модуль PostNuke, стоит кратко остановиться на технологии добавления таких модулей к сайту, построенному с использованием этой CMS.

Скачанный архив с модулем следует распаковать, после чего скопировать полученный каталог модуля (в нашем случае — photoshare) в каталог mo-dules вашего PostNuke. Затем регистрируемся на сайте с правами администратора, заходим в Центр Администрирования (Administration) — Модули (Modules). Выбираем пункт Перегенерировать (Regenerate). В общем списке модулей теперь появился и Photoshare.
Теперь для Photoshare необходимо выбрать пункт Инициализировать (Initialize). Если все прошло хорошо, и не было сообщений об ошибках, активизируем Photoshare с помощью одноименной опции в списке. Теперь осталось только прописать Photoshare в меню портала. Галерею можно считать благополучно установленной.

Вернувшись на страницу Центра Администрирования, можно увидеть, что там появилась новая иконка, с помощью которой можно получить доступ к странице настроек Photoshare. Давайте посмотрим, что можно сделать с ее помощью.
Основные параметры сосредоточены на закладке Main Setup. Среди них — место хранения изображений — в специально созданном вами на сервере каталоге или в базе данных. Если был выбран каталог, то следующий пункт служит для указания пути к нему. Далее прописывается путь к каталогу для временных файлов. Необходимо помнить, что вам потребуются права на запись в упомянутые каталоги. Следующие несколько пунктов задают настройки отображаемых миниатюр: их геометрические размеры в пикселях, а также максимально допустимый размер загружаемых изображений в байтах. С помощью соответствующих пунктов выбираем, будут ли новые альбомы по умолчанию видны всем посетителям и смогут ли пользователи самостоятельно создавать свои альбомы. Следующий пункт — способ демонстрации галереи — позволяет выбрать вариант сохранения обычной структуры интерфейса PostNuke или же вывода галереи в полноэкранном режиме. Далее можно указать тему, к которой по умолчанию будут относиться создаваемые альбомы.
Разберемся со стилями оформления альбомов. Вариант Gallery демонстрирует альбом в режиме просмотра слайдов, при этом все изображения и вложенные альбомы представляются в виде закладок на специальной панели внизу главного окна. Это позволяет быстро переходить от одного изображения к другому. Режим Slideshow — последовательный показ изображений с некоторой задержкой, которую можно регулировать. При выборе Thumbnails альбом представляется набором миниатюр.

Наконец определяемся со способом отображения списка альбомов. Flat — все альбомы показываются в едином списке; Nested — перейти к вложенным альбомам можно через главный альбом; Original — родительские альбомы отображаются в табличном виде с показом информации об авторе альбома, его теме, дате создания и количестве изображений.
Давайте создадим тестовый альбом. Для этого надо зарегистрироваться на сайте с необходимыми правами, перейти на страницу Photoshare и выбрать пункт Add Album. Задаем ему имя, сочиняем краткое описание и указываем другие настройки, которые мы уже обсуждали ранее.
Теперь необходимо наполнить альбом изображениями. Добавление файлов производится несколькими способами: по одному с помощью специальной формы либо, если мы обладаем полномочиями администратора, "оптом", указав каталог, в котором находятся отобранные заранее файлы. После окончательного редактирования содержимого альбома его необходимо опубликовать командой Publish Album, определив при этом полномочия на доступ к нему и его модификацию. Если мы не хотим показывать альбом всем желающим, можно отправить e-mail с приглашением и паролем некоторым избранным пользователям.
Остановимся на вопросах русификации Photoshare. На сайте пакета можно скачать русскую версию Photoshare 3.1.1. В свете уже упомянутых системных требований "четверки", доступных не всем, это в ряде случаев может быть оптимальным выбором.
Есть и другой, универсальный вариант, применимый и для самых новых версий галереи. Это самостоятельный перевод, что не так сложно при условии владения английским языком. Как известно, все языковые настройки модулей PostNuke, а Photoshare здесь не исключение, хранятся в каталоге lang (pnlang) модуля.

Если вы избрали такой путь, в названном каталоге lang (или pnlang) модуля создайте подкаталог rus, скопируйте туда все файлы из каталога eng, после чего, открывая их каким-нибудь текстовым редактором, замените английские значения русским переводом. После этого при выборе в PostNuke русского языка интерфейса модуль также будет работать на этом языке. Аналогичным способом реализуется и поддержка любого другого необходимого вам языка, не предусмотренного разработчиком.
Добавление онлайновой галереи является достаточно серьезной доработкой портала PostNuke, поэтому разумным решением будет тестовая эксплуатация пакета на локальном сервере перед его установкой на реальный сайт. Так вы сможете освоиться с управлением галереей, попробовать различные режимы работы и безопасно выявить возможные проблемные моменты.
Завершая рассмотрение пакета Photoshare, хотелось бы сказать, что даже если вы решите написать скрипт галереи для своего сайта самостоятельно, знакомство с готовыми решениями, в том числе Photoshare, не будет лишним. Это поможет определиться с необходимой функциональностью, познакомиться с подходами коллег-предшественников, а также избежать их ошибок.

Алексей Кутовенко, alteridem@tut.by


Компьютерная газета. Статья была опубликована в номере 17 за 2004 год в рубрике soft :: интернет

©1997-2024 Компьютерная газета