Студия разработки сайтов и приложений

Netspark.ru

Заметки и разработки

Drupal

Новости модулей за 24 января — 7 февраля

Готов выпуск новостей модулей для Drupal 6 за прошедшие две недели. В него попало восемь интересных модулей: Linkit Picker, Views embed filter, Vocabulary Permissions Per Role, User picture API, Fancy Insert, Taxonomy Additions, Privatemsg Bulkmail и Transport,

Кроме того, во имя прогресса, добра и света решено писать обзоры и для модулей Drupal 7. Новых их делают пока совсем немного (видимо, все заняты портированием старых), но в обзор попало целых четыре: Twitter Block, Comment Access, Views PHP, User revision.

Ну и сам я Drupal 7 тоже поставил и посмотрел. Думаю, что вскоре на домовой странице появятся о нем интересные материалы.

Drupal 6

Linkit Picker
Linkit Picker предоставляет модулю Linkit возможность выводить данные, используемые для расстановки внутренних ссылок на ноды, пользователей, термины таксономии и т.п. в небольшом «браузере»:

Данные генерируются с помощью представления Views, так что их вывод при желании можно менять и улучшать.

Views embed filter
Несмотря на крайне мутное описание, удалось выяснить: данный модуль — это фильтр, позволяющий нам вставлять в текст ноды представления Views. Вот, например, на рисунке я вставил в текст ноды представление, выводящее список заметок за последний месяц:

А ведь можно вывести заметки с какими-нибудь похожими терминами, или, скажем, grid с набором изображений. Вставлять надо вот так:
[viewsembfilter]имя_представления[\viewsembfilter]
Автор, кстати, похоже русский, в качестве спонсора работы указывает «Аэрофлот».

Vocabulary Permissions Per Role
Модуль дает возможность администратору выдавать ролям разрешение на добавление, редактирование и удаление терминов того или иного словаря. Таким образом, можно позволить пользователям редактировать только заданные словари, не выдавая разрешения на полное администрирование таксономии. Удобно.

User picture API
Для модуля User picture API автор забыл указать номера совместимых версий Друпала, однако я надеюсь, что шестерку вниманием он все же не обойдет. Модуль задуман как расширенный API для работы с аватарками. В частности планируется:

  • поддержка разных провайдеров аватарок: обычная загрузка, Gravatar, Libravatar;
  • возможность для пользователя — выбирать провайдера аватарки;
  • кеширование аватарок от внешних провайдеров с интеграцией в ImageCache;
  • поддержка режима, в котором сайт на Друпале сам становится настоящим сервисом аватарок.

Fancy Insert
Модуль Fancy Insert предоставляет нам удобный интерфейс для вставки в текст изображений. Если точнее, модуль преобразует виджет поля CCK ImageField в плавающее (и перетаскиваемое) окошко, располагающееся над полем набора текста. В окошке содержатся изображения для вставки. Один щелчок мышкой на нужной картинке — и соответствующий тег будет вставлен в текст на позиции курсора.

Taxonomy Additions
Набор расширений для таксономии. Фичи:

  • в список терминов словаря добавляется ссылка на удаление термина;
  • добавлена возможность запретить создавать в словаре одинаковые термины;
  • добавлен обработчик аргументов Views, позволяющий выводить в представлении не только ноды с заданным термином, но и ноды с родственными терминами.
  • добавлена функция-аналог taxonomy_get_term_by_name(), но с дополнительным параметром (ID словаря), ограничивающим поиск до заданного словаря;
  • добавлена функция-эквивалент taxonomy_node_get_terms_by_vocabulary(), делающая на один запрос базы данных меньше, так как она ищет термины прямо в объекте $node;
  • добавлен аналог функции taxonomy_get_tree(), размещающий термины-наследники в массивах (относительно родителя) для удобства доступа.

Privatemsg Bulkmail
Модуль позволяет администратору осуществлять рассылку личных сообщений (например, важных уведомлений) всем пользователям сайта. Сообщения обслуживаются, понятное дело, модулем Privatemsg.

Transport
Очередной протокол для передачи содержимого между разными Drupal-сайтами. Авторы сообщают, что модуль работает (будет работать) на уровне «дайте мне ноду X с сайта Y» и помимо ноды автоматически получает (будет получать) объект пользователя-автора, прикрепленные файлы, термины таксономии и комментарии к данной ноде. Для заинтересовавшихся в архиве содержится демонстрационный модуль.

Drupal 7

Twitter Block
Этот небольшой модуль позволяет создавать блоки, содержащие твиты заданного пользователя. Так, по крайней мере, задумал разработчик модуля. В настоящий момент уже можно вывести блок с твитами дефолтного пользователя. Также запланирована поддержка поиска по словам и хэш-тегам.

Comment Access
Модуль позволяет разрешить пользователям администрировать (удалять, продвигать, редактировать) комментарии только к созданным ими нодам. Что удобно, например, для выдачи пользователям прав на администрирование комментариев в собственных блогах.
Разрешения настраиваются отдельно для каждого типа содержимого.

Views PHP
С помощью модуля Views PHP можно добавлять к представлениям Views поля, фильтры и сортировки, использующие PHP-код.
Таким образом администратор может создавать в представлении составные поля, значения которых генерируются PHP-кодом, фильтровать и сортировать строки представления по результатам PHP-кода, а также задавать сниппеты, управляющие доступом и сроком жизни кэша представления.
Следует также отметить, что, несмотря на простоту подхода, разработчик модуля рекомендует, насколько это возможно, не пользоваться PHP-хэндлерами и плагинами, а использовать встроенные (и даже писать свои).

User revision
Модуль вводит систему ревизий для пользователей сайта, аналогичную системе ревизий нод. В модуле есть:

  • ревизии создания/редактирования пользователей;
  • ревизии пользовательских полей;
  • отображение списка ревизий;
  • откат к той или иной ревизии;
  • удаление ревизий;
  • выдача разрешений на просмотр, изменение и удаление ревизий;
  • базовая интеграция во Views.

Планируется:

  • углубленная интеграция во Views;
  • интеграция с Diff.

Отсутствует: ревизия пользовательских паролей. Хотя возможно автор ее и добавит впоследствии.

Комментарии