Перейти к основному содержимому

Конфигуратор YouGile

Пользовательские скрипты в YouGile

Пользователи YouGile с правами администратора могут гибко модифицировать работу системы под нужды команды с помощью простых скриптов на JavaScript.

В YouGile предусмотрена встроенная среда разработки (Конфигуратор), поэтому для добавления и использования скриптов не требуется установка дополнительных инструментов — всё необходимое уже доступно в системе.

Открыть Конфигуратор можно нажав сочетание клавиш Ctrl + ~

Конфигуратор

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

В левой части интерфейса отображается список скриптов, доступных в компании.

Создание и редактирование скриптов выполняется в этом же разделе.
При нажатии на название скрипта открывается встроенный JavaScript-редактор.

Пример интерфейса редактора:

Конфигуратор

Подключенный скрипт выполняется один раз при каждом входе любого пользователя в систему.

Навигатор по объектам

Помимо стандартных функций javascript в скриптах подключена библиотека для работы с YouGile — она позволяет менять параметры системы, выполнять свой код на различные события в системе и удобно создавать свои элементы интерфейса или изменять существующие.

Список всех доступных объектов и функций этой библиотеки содержатся в панели справа от редактора кода. При нажатии на объект откроется справка по нему с примерами. Любой объект можно потянуть мышкой в редактор — тогда будет вставлен пример кода, который работает с этим объектом.

В панели справа присутствует вкладка с навигацией по всем объектам системы (пользователи, проекты, доски, задачи). Их тоже можно перетаскивать мышкой в редактор:

Конфигуратор

Описание библиотеки YouGile

Все доступные функции и свойства разбиты по набору объектов:

  • Items — работа с содержимым компании: проектами, досками, колонками, задачами
  • Stickers — управление стикерами
  • Chat — работа с чатами
  • Users — работа с пользователями, приглашенными в компанию
  • Current — текущее состояние системы (открытый чат, открытая доска, текущий пользователь)
  • Texts — модификация стандартных текстов интерфейсов
  • UI — создание собственных интерфейсов
  • Events — события ввода/вывода (клавиатура, мышь)
  • App — набор функций, относящийся к системе в целом (например, экспортировать таблицу в Excel)
  • Notifier — содержит различные способы нотификации пользователя

Эти объекты содержат поля трёх типов:

  • Свойства (properties) позволяют получать информацию о состоянии системы.
    Пример: Current.user — возвращает текущего пользователя.
    Некоторые свойства можно изменять, однако часть свойств доступна только для чтения (read-only). Информация о возможности изменения указана в навигаторе по API.

  • Функции (methods) вызываются для выполнения определённых действий.
    Пример: Notifier.error('Text') — отображает пользователю уведомление с указанным текстом.

  • События (events) — это функции, которые автоматически вызываются при наступлении определённой ситуации в системе.
    Пример: функция Current.onBoardChange вызывается при переходе пользователя на другую доску. По умолчанию событиям назначены пустые функции (без реализации), однако в пользовательском скрипте их можно переопределить:

Current.onBoardChange = function (oldBoard, newBoard) {
console.log(oldBoard, newBoard);
};

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

Короткие видео с примерами реализации скриптов: https://help.yougile.com/books/baza-znanii-yougile/page/kak-dorabotat-sistemu

Примеры скриптов:
https://help.yougile.com/books/baza-znanii-yougile/page/primery-skriptov-konfiguratora