CP отсюда Выбирая галерею для Drupal 7, остановилась на Media Gallery. Галерея хороша, но очень сырая, как, в принципе, и многие модули для Drupal 7 на данный момент. Сначала все было вроде неплохо, потом, в какой-то момент я заметила, что при редактировании медиа-файлов не отображаются превьюшки, кроме того, мне совсем не понравился внешний вид галереи, и наконец, самое интересное: в настройках прав модуля Media есть только "просмотр медиа" и "редактирование всех медиа", что автоматически переводит эту чудесную галерею в разряд тех, что используются для персонального блога. Ну или же если у вас на сайте все админы. Тут я решила удалить галерею и все модули, однако и это оказалось непросто: отключить модуль Media невозможно, т.к. он необходим для ядра из-за созданных им полей, а поля, в свою очередь, заблокированы модулем и удалить их тоже нельзя. Еще раз пересмотрев и попробовав имеющиеся модули для семерки, я убедилась, что альтернативы собственно и нет, и решила доводить модуль до ума. 1. Разграничение прав - это первоочередной вопрос. Как я поняла из обсуждения на Drupal.org, эта возможность добавлена в ветке 7.x-2.x модуля Media, которая на данный момент нестабильна. Ждать выхода новой версии конечно не хочется, так что добавим патч, который можно скачать здесь. Этот патч подходит для версии 7.x-1.0 модуля Media, и добавляет несколько прав: "редактировать свои медиа", "загружать медиа", "просматривать библиотеку". Последний пункт позволяет скрыть от пользователей вкладку с библиотекой, чтоб они не могли видеть все загруженные медиа-файлы. Только одно замечание к этому патчу: в файле media.browser.inc должны быть строки (у меня под номером 308 и 309), которых в моем модуле нет:
'types' => $types,'multiselect' => $multiselect,Я просто закоментировала их. После этого жизнь стала налаживаться. )) 2. Перелистывание фотографий в Colorbox. Следующее, что я поправила - неприятная особенность работы Colorbox, а именно: нажатие на фотографию при просмотре в Colorbox вместо привычного перехода на следующий файл отрывает страницу просмотра фотографии, в которой вообще особо нет никакого толка, раз нельзя оценивать и комментировать фотографию. Решение уже есть, берем его отсюда.
- В папке вашей темы создайте подпапку js (если ее еще нет) и в ней - файл с названием media_gallery_hack.js следующего содержания:
/*
Redirects lightbox image click to advance to next image instead of opening image details.
Via http://drupal.org/node/1088738#comment-4362570
code from #12
Posted by stephandale on April 10, 2011 at 12:26pm
*/
(function ($) {
Drupal.behaviors.initColorboxDefaultStyle = {
attach: function (context, settings) {
$(document).bind('cbox_complete', function () {
$('.lightbox-stack .gallery-thumb-inner a').click(function(e) {
e.preventDefault();
$.colorbox.next();
});
});
}
};
})(jQuery); - В файл .info вашей темы добавьте строку scripts[] = js/media_gallery_hack.js.
$offset = 0;if (!empty($_POST['page'])) {$page = array_pop(explode(',', $_POST['page']));num_per_page = $gallery->media_gallery_columns[LANGUAGE_NONE][0] ['value'] * $gallery->media_gallery_rows[LANGUAGE_NONE][0]['value'];$offset = $num_per_page * $page;}5. Необходимые библиотеки для plupload и colorbox. Это не проблема, а просто результат невнимательности. Для работы этих модулей необходимы библиотеки, которые в поставку модуля не входят, их нужно отдельно скачивать с сайта. Так что если не работает один из этих модулей - возможно вы забыли скачать библиотеки. 6. Локализация текста ссылки на загрузку оригинального файла. Эту проблему я так и не решила - просто удалила перевод и оставила ссылку англоязычной. Лучше, чем абракадабра. )) Вернусь к этому позже. Вот и все, обнаруженные на данный момент, проблемы - теперь имею вполне работоспособную галерею. По необходимости буду дополнять пост.