Difference between revisions of "Triggers"
Line 32: | Line 32: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
− | ! Действие !! | + | ! Действие !! Фаза !! Выполнение |
|- | |- | ||
− | | Создание записи | + | | rowspan="3" | Создание записи |
+ | | открытие формы создания || синхронное | ||
|- | |- | ||
− | | | + | | перед сохранением записи || синхронное |
|- | |- | ||
− | | | + | | после сохранения записи || асинхронное |
|- | |- | ||
− | | | + | | rowspan="3" | Изменение записи |
+ | | открытие формы изменения записи || синхронное | ||
|- | |- | ||
− | | | + | | перед сохранением записи || синхронное |
|- | |- | ||
− | | Удаление записи из избранного | + | |после сохранения записи || асинхронное |
+ | |- | ||
+ | | rowspan="2" | Удаление записи | ||
+ | | перед удалением записи || синхронное | ||
+ | |- | ||
+ | | после удаления записи || асинхронное | ||
+ | |- | ||
+ | | rowspan="2" | Открытие карточки записи | ||
+ | | перед отображением окна || синхронное | ||
+ | |- | ||
+ | | после отображения окна || асинхронное | ||
+ | |- | ||
+ | | rowspan="2" | Добавление записи в избранное | ||
+ | | перед операцией || синхронное | ||
+ | |- | ||
+ | | после операции || асинхронное | ||
+ | |- | ||
+ | | rowspan="2" | Удаление записи из избранного | ||
+ | | перед операцией || синхронное | ||
+ | |- | ||
+ | | после операции || асинхронное | ||
|} | |} | ||
Revision as of 05:48, 10 September 2016
Триггер это скрипт, который запускается при определенных действиях или событиях. В качестве языка для написания скриптов используется JavaScript. Результатом выполнения скрипта может быть изменение или создание записи, выполнение http-запроса, создание файла, валидация данных и другие действия.
Создание триггера
Каждая библиотека может иметь несколько триггеров, чтобы открыть список триггеров зайдите в библиотеку, откройте меню и выберите пункт Триггеры.
Для создания триггера откройте список триггеров библиотеки и нажмите кнопку +. После этого необходимо выбрать момент запуска триггера и написать скрипт реализующий ваши потребности.
Момент запуска триггера
Момент запуска триггера определяется двумя параметрами:
- Действие
- это какая-либо выполняемая пользователем операция с записями.
- Фаза действия
- определяет более точный момент срабатывания триггера. Для каждого типа Действия доступны свои фазы.
Выполнение скрипта
Фаза в которую запускается триггер также определяет то, как будет выполняться скрипт - синхронно или асинхронно.
- Синхронное выполнение скрипта
- приложение приостановить взаимодействие с пользователем на время выполнения скрипта. Не рекомендуется в таких скриптах выполнять длительные операции.
- Асинхронное выполнение скрипта
- скрипт запускается в фоновом режиме, приложение не приостанавливает взаимодействие с пользователем. Обычно асинхронно выполняются скрипты в последних фазах действия.
Безопасность
Некоторые функции доступные из скриптов (операции с файлами, выполнение http-запросов, доступ к другим библиотекам) в целях безопасности требуют соответствующих разрешений. Эти разрешения пользователь должен установить вручную для каждой библиотеки отдельно.
Чтобы открыть диалог установки разрешений для скриптов - откройте список триггеров библиотеки и нажмите кнопку Щит на тулбаре. Установка разрешений должна выполняться на каждом устройстве отдельно. Выбранные разрешения не синхронизируются между устройствами.
Разрешения для скриптов
- Libraries
- Определяет какие библиотеки помимо родной будут доступны скрипту. Вы можете предоставить доступ ко всем библиотекам или выбрать определенные библиотеки. Данное разрешение требуется для функции libByName.
- Read files
- Предоставляет скрипту доступ на чтение файлов с запоминающего устройства. Данное разрешение требуется для функции file.
- Write files
- Предоставляет скрипту доступ на создание и изменение файлов в запоминающем устройстве. Данное разрешение требуется для функции file.
- Network
- Предоставляет скрипту право выполнять http запросы. Данное разрешение требуется для функции http.
Действия
Действие | Фаза | Выполнение |
---|---|---|
Создание записи | открытие формы создания | синхронное |
перед сохранением записи | синхронное | |
после сохранения записи | асинхронное | |
Изменение записи | открытие формы изменения записи | синхронное |
перед сохранением записи | синхронное | |
после сохранения записи | асинхронное | |
Удаление записи | перед удалением записи | синхронное |
после удаления записи | асинхронное | |
Открытие карточки записи | перед отображением окна | синхронное |
после отображения окна | асинхронное | |
Добавление записи в избранное | перед операцией | синхронное |
после операции | асинхронное | |
Удаление записи из избранного | перед операцией | синхронное |
после операции | асинхронное |
Скрипты
Через скрипты можно получить доступ к записям библиотек, к файлам на устройстве, а также выполнять http-запросы. Некоторые функции требуют включения для библиотеки соответствующих разрешений.