Международная конференция разработчиков
и пользователей свободного программного обеспечения

[org] LVEE engine guide

Роли пользователей для акаунтов на сайте

Роли пользователей бывают трех видов: admin (администратор), editor (редактор контента) и none (непривилегированные пользователи, user). Настраиваются роли в подпункте Users admin пункта Admin; очевидно, что делать это могут только пользователи-администраторы, а у всех остальных такого пункта в меню нет. Права на редактирование всего контента имеют только первые две категории пользователей. Роль непривилегированных пользователей user дает только права на редактирование вики-страниц и своих анкетных данных.

Трехуровневая регистрация

1) В первую очередь создается акаунт на сайте (непривилегированным пользователям при входе на сайт под логином становится доступен раздел вики и ограниченный просмотр сведений об участниках, уже подписавшихся на конференцию, в меню УчастникиСписок).

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

3) Админ может заапрувить участника, подписавшегося на конкретную конференцию. При этом участник получает настраиваемое письмо от робота. По умолчанию в письме предлагается заполнить третью анкету в личном профиле, с уточнением дней приезда и отъезда, необходимости организовать встречу, предпочтениями в диете и др. Помимо уточненных деталей, позволяющих лучше спланировать оргвопросы (в первую очередь доставку и расселение) эта анкета имеет еще один положительный эффект: уменьшает число участников, которые забыли сообщить, что не могут приехать.

Управление контентом

Первичным языком для контента выбран был английский, а остальные языки считаются переводами. Например, на lvee.org переводы в текущий момент – белорусский, украинский, русский, польский, венгерский в разной степени запущенности :)

Перевод как таковой добавляется/удаляется одним кликом. Если часть контента не переведена, показывается английский вариант. Поэтому после ‘добавления’ перевода весь контент соответствующего языка англоязычен, и его еще надо переводить :)

Процесс редактирования контента бывает двух видов: редактирование сообщений и редактирование текстов.

Редактирование сообщений (а также пунктов меню и др. “статики”)

  • Логинимся на сайт под своей учетной записью.
  • Выбираем в главном меню пункт Editor, подпункт Languages editor. Если в меню нет такого пункта – значит у залогиненного пользователя нету прав на редактирование переводов.

После выбора пункта открывается таблица со списком языков:

  • Столбец published показывает, “опубликован” ли язык, т.е. можно ли его выбрать вверху сайта. Опция позволяет временно закрывать часть переводов, когда у команды образовалась вакансия переводчика или сильно устарели переводы контента.
  • Ссылка edit позволяет изменить атрибуты языка (в частности открыть/закрыть его).
  • Ссылка Download позволяет скачать yml-файл с сообщениями для выбранного языка например, для украинского языка скачивается файл uk.yml.
  • Ссылка Upload нужна чтобы закачать отредактированный файл обратно на сайт.

Файлы содержат парные фразы (английский и локализованный вариант), представленные в формате YAML.

Имя файла при закачке не сверяется, так что технически можно подменить один язык другим, щелкнув “не ту” ссылку upload в таблице языков. В этом случае спасением будет использовать резервную копию yml-файла и восстановить “все как было”.

Редактирование информационного контента

Редактировать контент гораздо проще: на каждой странице (кроме некоторых служебных) переводчики видят под текстом ссылку Edit (редактировать перевод) или Translate (перевести). Щелкнув по ней, мы попадаем в форму редактирования текста страницы (используется несложный язык разметки, ссылка на особенности которого каждый раз видна под полем редактирования контента). Перед сохранением изменений можно активировать предварительный просмотр (кнопка Preview).

По поводу редактирования контента нужно иметь в виду 3 вещи:

  • Первичным считается английский язык. Поэтому в “новорожденном” языке при отсутствии перевода все страницы содержат английский текст.
  • Из-за некоторой особенности хранения переводов в виде статей с уникальными номерами… получается, что каждая страница доступна по 2 адресам: скажем, http://lvee.org/ru/reports и http://lvee.org/ru/articles/16.
  • Сохраняется история изменений статей; поэтому нечаянно убитые материалы можно легко восстановить, щелкнув ссылку View changes. По-умолчанию при этом показываются изменения, сделанные по датам; однако можно увидеть исходный код контента за какой-то период, выбрав одну и ту же дату в таблице истории изменений.

Задачу отслеживания изменений в контенте страниц переводчикам должен облегчать RSS-канал LVEE site changes, в который поступают тексты изменившихся статей с цветовой маркировкой собственно изменений. Канал доступен через пункт меню EditorEditor RSS.

Редактирование новостей

Технически редактирование новостей – частный случай редактирования контента.

Редакторы могут создавать новости, щелкнув ссылку All news на главной странице, а затем “Add news” в конце списка. Новость имеет abstract (то, что будет видно под ее заголовком на главной странице) и основной текст (открывается при щелчке по заголовку).

Главное отличие новостей от остального контента – это то, что новость после создания не появляется на главной странице до тех пор, пока не будет опубликована (это дает возможность поработать с текстом). Опубликовать новость можно кнопкой Publish (при этом новость появляется приблизительно через сутки после опубликования, чтобы дать время переводчикам). Администратор может вместо отложенной публикации выбрать кнопку Publish now, после чего новость делается доступной немедленно.

Miscellaneous features

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

Макет бэджей делается автоматом, движком.
Сейчас там “шишечки” LVEE рисуются, и заложен размер под маленький горизонтальный бэдж с прищепкой, размером с визитку. Они самые дешевые и потому наиболее распространенные.

Из контента, типично присутствующего и имеющего пункты в меню – сведения об организаторах, разные оргвопросы типа “о
конференции” и “доставка”, ссылки на прессу и раздел с онлайн-материалами конференции (тезисы/презентации/видео).

Пункты админки

AdminUsers admin показывает статистику по участникам, а также их список с указанием логина, имени, активировал ли участник акаунт после регистрации (ссылкой, присланной на почту – без активации он не сможет повторно войти в аккаунт), в каких прошлых конференциях он участвовал. Здесь же можно удалить акаунт участника, изменить его роль и послать на указанный при регистрации e-mail письмо от имени оргкомитета:

Conferences admin – уже упоминавшееся создание конференций. Здесь же можно получить в виде таблицы csv-экспорт анкет участников, подписавшихся на конференцию и pdf с бэджами заапрувленных участников:

Апрув выполняется на странице conference registrations admin, похожей по виду на users admin, только с возможностью посмотреть, что участник написал в полях анкеты, когда регистрировался на конференцию. В этой же таблице показывается редактируемый тип участия, по умолчанию он у всех normal, но может быть здесь же изменен на organizer (член оргкомитета), reporter (докладчик), sponsor (представитель спонсоров) или press (аккредитованный журналист). Тип участия показывается только здесь, самим участникам не виден и нужен для облегчения работы с данными, к примеру после их экспорта в csv.

Statuses admin позволяет редактировать сообщения робота при смене статуса регистрации участника: new (только что подписался на конференцию), approved (был заапрувлен в conference registrations admin), rejected (получил там же отказ в апруве, по каким-то соображениям организаторов), cancelled (сам отменил свою подписку на участие в конференции в личном профиле):

Sponsors admin позволяет добавлять логотипы спонсоров и партнеров в боковую полосу сайта. Объекты в полосе могут быть одного из следующих типов: organizer, sponsor, technical, information и tech_partner (как называются в разных языках, включая английский, эти категории при отображении на сайте – дело переводчиков).

Меню Editor показывается только переводчикам и админам. Его подпункты – уже упоминавшиеся ранее редакторы языков и новостей, а еще:

Image uploader – интерфейс для заливки любых файлов (не только изображений) на сайт.

Article editor – поименный список статей сайта с возможностью добавлять новые (например, после конференции могут быть добавлены электронные версии тезисов). Наличие ссылки на созданную статью – на совести добавляющего.

Editor rss – rss-канал, в котором отображается вся информация об изменениях в контенте. К сожалению, большинство переводчиков за ним не следит :-)

Как уже упоминалось, этот RSS-канал доступен через пункт меню EditorEditor RSS.