Состоялся DrupalCodeSprint#9

В центре Новосибирска, 26 сентября состоялся DrupalCodeSprint#9 и, как всегда, собрал множество любителей программирования.

DrupalCodeSprint - регулярное мероприятие, где программисты совместно создают свободный для распространения софт. Drupal, как популярная Open Source платформа, поддерживается разработчиками по всему миру. Сибирские любители Drupal потратили часы своего труда на создание бесплатных решений и усовершенствование его модулей.

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

А теперь расскажем подробнее про спринт. Были запланированы следующие задачи:

  1. Доработка модулей Be sure, Notify Log, CERF.
  2. Доработка модулей интеграции с amoCRM .
  3. Разработка модулей для платформы организации мероприятий Timepad, разработка модуля для Почты России.
  4. Помощь команде локализаторов Drupal.

А сейчас мы хотим вам рассказать о задачах, которые решили за время спринта.
Вот список:

И еще список разрабатываемых модулей:

Расскажем немного подробнее про каждую задачу.

Михаил Крайнюк доработал модуль Drush Language Commands.

Самый быстрый путь для настройки сайтов на Drupal - это консольные команды в специальной программе Drush. Однако на текущий момент нет консольной команды, которая позволяет быстро добавить перевод какой-то фразы на мультиязычном сайте.

Приходится либо входить на сайт под администратором и добавлять перевод на специальной странице, либо создавать файл перевода  из 1 фразы и импортировать его с помощью команды в консоли.

Минусы этого пути:
- создавать файл перевода для 1 фразы, поднимать его на нужный сервер и выполнять команду перевода слишком накладно, много лишних действий;
- часто у нас нет доступа для входа на сайт из-под администратора, есть только консольный доступ на сервер;
- если фраза новая и нигде прежде не выводилась, то для добавления её перевода с помощью страницы переводов, эту фразу нужно хотя бы 1 раз увидеть на сайте;
- если фраза выводится на трудно воспроизводимой странице, приходится проводить эмуляцию её вывода прежде чем добавлять для нее перевод на странице переводов.

Консольный же метод перевода позволят добавлять переводы для новых фраз, которые еще нигде не выводились на сайте.
Михаил создал команду для добавления перевода через консоль. Модуль интегрируется с переводами как через “locale” (стандартный способ переводов Drupal), так и через “i18n” (специальный модуль для расширенного управления переводами на сайте).

Григорий Шляпкин решил несколько задач для двух модулей Spambot и Be sure

Первый нужен для того, чтобы защищать сайт от спамеров на уровне формы регистрации. Помимо этого, там есть дополнительные возможности, например интеграция со Stop Forum Spam, где представлена доступная для пополнения база спамеров.

Be sure - модуль позволяющий быть уверенным в том, что на Drupal-сайте все хорошо. Он предоставляет сводную информацию об основных слабых моментах, их статусе и состоянии.

Дмитрий Киселев разработал amoCRM Contact (https://www.drupal.org/project/amocrm_contact )  - модуль интеграции amoCRM с модулем формы обратной связи в Drupal. После установки и настройки в amoCRM будут автоматически создаться контакты на каждый заполненный и отправленный через форму обратной связи контакт.

Татьяна Киселева разработала модуль TimePad - интеграция Drupal с популярным инструментом для организации мероприятий “TimePad”. Теперь можно создавать события на сервисе сразу из Drupal.

Антон Шлома в команде с Евгением Юдкиным и Андреем Троеглазовым разработали модуль интеграции Drupal с известным сервисом для автоматического перевода сайтов MotionPoint.

Нововведение позволяет добавлять интерфейс для автоматического перевода слов на Drupal сайте.

Внутри админки создается клон стандартной страницы, но с правками, предназначенными для работы с сервисом. После нажатия кнопки “перевести”, автоматически отправляется запрос в MotionPoint. В течение некоторого времени приходит перевод всех строк страницы, сделанный вручную сотрудниками этого сервиса.

Основной смысл - сделать таким образом качественный перевод всего сайта для выхода на международные рынки. Хотя модуль на сайте не сможет создать многоязычность, этого можно добиться стандартными средствами Drupal.

Андрей Михайлов добавил возможность получать уведомления от сервиса www.adyen.com. По умолчанию, модуль платежной системы Commerce Adyen делает редирект во время процедуры оплаты.  Когда с карты списываются деньги, этот модуль шлет сигнал об успешной оплате. Разработчик добавил функцию уведомления о возврате денег. Теперь можно использовать готовое решение!

Spambot for custom form Артема Ковалевича помогает защищаться от спама ещё эффективнее. Изначально этот модуль предоставлял возможность блокировать от спама только стандартные формы регистрации. Патч Артема даёт возможность сохранить в безопасности абсолютно любую форму на сайте, так как чаще всего на сайте много именно уникальных форм, например для комментариев. Теперь боты не смогут вставлять  в них рекламу или ссылки на другие ресурсы. Пока что этой возможностью может воспользоваться только программист, так как функция реализуется только в коде.

Модуль Ajax Facets - позволяет создавать фасетные фильтры, работающие по технологии AJAX. Евгений Ильин исправил ошибку, возникшую после обновления 7.x.-3.2. Проблема заключалась в отказе функции ограничения количества отображаемых фильтров.

Ярослав Лушников связал две функции: функционал кросспостинга, дающий возможность отправить изображения вместе с текстом, и встроенный механизм обработки изображений, изменения их размера и добавление визуальных эффектов. В результате появилась возможность отправлять уже обработанные изображения.

Так же он исправил техническую ошибку в модуле Be sure. Раньше при отключении главного модуля не отключался его побочный функционал. А в Be sure menu location теперь создаются пункты меню там, где их ожидает увидеть пользователь модуля.

Ярослав исправил дублирование кнопки "Закрыть всё" при появлении всплывающих окон с уведомлением об ошибках во время совершении некоторых действий на странице.

Мы успели решить гораздо больше запланированного, чему несказанно рады!
Кроме всех задач за время спринта мы также успели разработать инструмент тестирования сайтов, который автоматически делает скриншоты до и после внесения разработчиком изменений, а затем сравнивает их, выискивая “баги”.

Мероприятия сопровождало чаепитие с традиционной пиццой на обед и нетрадиционными призами по завершении.
Мы решили подарить лучшим контрибьюторам сертификаты в магазины цифровой техники, а остальным участникам футболки. Именные сертификаты в память о спринте достались всем!
Участники поделились своими впечатлениями. Как оказалось, в этот день всех объединила любовь к Open Source и приятная возможность сделать свой вклад в Drupal.
Ребятам понравилось дружелюбная атмосфера и многие высказали намерение участвовать в других мероприятиях ДрупалСиб: выступать на кафе, участвовать в спринтах и школе.
Мы рады пригласить вас вступить в стройные ряды нашего Drupal-сообщества. Ждем всех на мероприятиях!

По всем вопросам с нами можно связаться по почте или телефону +7 961 222-20-17.

Фотогалерея