В 2007 году компания Google, стала официальным партнером Московского дома фотографии и конкурса «Серебряная камера». В рамках сотрудничества был запущен сайт www.silvercam.ru, интегрированный с Google Picasa и Картами Google. Цель сайта - создать для конкурса интерактивную площадку, упрощающую процесс приема работ, предоставляющую посетителям возможность оценивать выставленные работы, привлечь новых участников и сделать конкурс более доступным. В данный момент конкурс завершен (год в названии– предшествующий году проведения, т е. итоги «Серебряная камера-2007» были подведены в 2008). Также на сайте опубликованы работы-участники конкурса «Серебряная камера - 2006».
12 типов страниц (главная, статические страницы и страницы справки, раздел «Серебряная камера – 2006» (серии фотографий добавлены МДФ), раздел «Серебряная камера – 2007» (формируется пользователями), страница серии фотографий с картой и комментариями, рейтинг, страницы форума, теги и лента фото с выбранным тегом, регистрация, профиль пользователя, лента друзей пользователя, формы участия в конкурсе, страницы модерации)
Какое Вы имеете отношение к проекту?Разработчик
Одно из главных главное достоинств Drupal - гибкость, Drupal API позволяет делать все необходимые для реализации проекта вещи правильно и красиво, а не изменяя исходный код CMS – а это означает возможность более легкого повторного использования кода и облегчает дальнейшую поддержку проекта. Также очень приятно, что для большинства задач есть огромное количество готовых модулей, из которых можно выбрать подходящий (или доработать один из существующих). Кроме того, вокруг Drupal сформировалось активное коммьюнити, усилиями которого он постоянно совершенствуется и развивается. Drupal ориентирован на создание сайтов, предполагающих пользовательскую активность и очень удобен как CMS\CMF для нестандартных проектов. Для простых сайтов он наверно излишне сложен как в плане архитектуры, так и в плане освоения интерфейса административной части простыми пользователями.
Drupal 5.3 (актуальная на момент начала разработки)
Никто не ограничивал в выборе CMS, были мысли о написании собственного движка на основе Zend Framework из-за его компонентов для работы с Google Data APIs, но программистская лень подсказала более простой и разумный путь :)
Разработка необходимых модулей – пару недель, сайт в целом – около двух месяцев из-за некоторых особенностей организационного процесса.
Один человек из МДФ – следит за порядком на сайте, модерирует публикуемые работы и форум.
Полезными оказалась возможность легкого изменения собственными модулями формы регистрации пользователей, наличие готовых модулей для работы с голосованиями и добавлением друзей. При поддержке пригодилась возможность гибкого разделения прав на основе ролей – для модератора в административной части видны только необходимые ему функции.
Так как проект предполагал нестандартную функциональность, потребовалась разработка собственных дополнений: модуля для показа на сайте альбомов Picasa, созданных МДФ, в разделе «Серебряная камера – 2006», практически аналогичного модуля для размещения пользовательских альбомов Picasa как серий фотографий в разделе «Серебряная камера – 2007», вывода страниц их рейтинга и интерфейса модерации, а также модуля с мелкими дополнениями – изменениями формы регистрации пользователей и т.п. Из готовых были использованы модули для работы со списками друзей (Buddylist) , голосования (Voting API + Fivestar), вывода облака тегов (Tagadelic), WYSIWYG редактора (FCKeditor).
Самой интересной была интеграция с сервисами Google. Для участия в конкурсе пользователю было необходимо разместить свою серию фотографий в Picasa, а затем опубликовать ее на сайте «Серебряная камера» выбрав из списка своих веб-альбомов. Для работы с Picasa был создан модуль, определяющий соответствующий тип содержимого и осуществляющий необходимые манипуляции с ним. В Drupal хранится список фото, гео-метка, теги, а сами фото остаются на Picasa. Для регулярных проверок статуса альбомов используется стандартный вызов Drupal API (hook_cron). При удалении альбома пользователя с Picasa серия фотографий депубликуется. Синхронизации комментариев на сайте и на Picasa не происходит, хотя это технически возможно. Для работы с Google Data APIs использованы компоненты Zend_Gdata из Zend Framework. (Подробнее о взаимодействии Drupal с сервисами Google я рассказывала на конференции РИТ-2008. http://sterno.ru/rit2008/ - видео, презентация, примеры исходного кода)
О CMS Magazine:Полезный ресурс при выборе основы для сайта, если буду делать что-то, не совпадающее с по концепции с Drupal – обязательно воспользуюсь :)