Difference between revisions of "Triggers"

From Memento Database Wiki
Jump to navigation Jump to search
(Created page with "{{Stamp|2016-09-09|4.0.0|1.0.5}} Триггер это скрипт, который запускается при определенных действиях или событ...")
 
Line 1: Line 1:
 
{{Stamp|2016-09-09|4.0.0|1.0.5}}
 
{{Stamp|2016-09-09|4.0.0|1.0.5}}
Триггер это скрипт, который запускается при определенных действиях или событиях. В качестве языка для написания скриптов используется '''[https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/1.7 JavaScript 1.7]'''. Результатом выполнения скрипта может быть изменение или создание записи, выполнение http-запроса, валидация данных и другие действия.
+
Триггер это скрипт, который запускается при определенных действиях или событиях. В качестве языка для написания скриптов используется '''[https://developer.mozilla.org/en-US/docs/Web/JavaScript JavaScript]'''. Результатом выполнения скрипта может быть изменение или создание записи, выполнение http-запроса, создание файла, валидация данных и другие действия.
 +
 
 +
== Создание триггера ==
 +
Каждая библиотека может иметь несколько триггеров, чтобы открыть список триггеров зайдите в библиотеку, откройте меню и выберите пункт '''Триггеры'''.
 +
 
 +
Для создания триггера откройте список триггеров библиотеки и нажмите кнопку '''+'''. После этого необходимо выбрать момент запуска триггера и написать скрипт реализующий ваши потребности.
  
 
== Момент запуска триггера ==
 
== Момент запуска триггера ==
Line 7: Line 12:
 
; Фаза действия : определяет более точный момент срабатывания триггера. Для каждого типа Действия доступны свои фазы.
 
; Фаза действия : определяет более точный момент срабатывания триггера. Для каждого типа Действия доступны свои фазы.
  
== Выполнение скрипта ==
+
=== Выполнение скрипта ===
 
Фаза в которую запускается триггер также определяет то, как будет выполняться скрипт - синхронно или асинхронно.  
 
Фаза в которую запускается триггер также определяет то, как будет выполняться скрипт - синхронно или асинхронно.  
 
; Синхронное выполнение скрипта : приложение приостановить взаимодействие с пользователем на время выполнения скрипта. Не рекомендуется в таких скриптах выполнять длительные операции.
 
; Синхронное выполнение скрипта : приложение приостановить взаимодействие с пользователем на время выполнения скрипта. Не рекомендуется в таких скриптах выполнять длительные операции.
 
; Асинхронное выполнение скрипта :  скрипт запускается в фоновом режиме, приложение не приостанавливает взаимодействие с пользователем. Обычно асинхронно выполняются скрипты в последних фазах действия.
 
; Асинхронное выполнение скрипта :  скрипт запускается в фоновом режиме, приложение не приостанавливает взаимодействие с пользователем. Обычно асинхронно выполняются скрипты в последних фазах действия.
 +
 +
== Безопасность ==
 +
Некоторые функции доступные из скриптов (операции с файлами, выполнение http-запросов, доступ к другим библиотекам) в целях безопасности требуют соответствующих разрешений.
 +
Эти разрешения пользователь должен установить вручную для каждой библиотеки отдельно.
 +
 +
Чтобы открыть диалог установки разрешений для скриптов - откройте список триггеров библиотеки  и нажмите кнопку '''Щит''' на тулбаре. Установка разрешений должна выполняться на каждом устройстве отдельно. Выбранные разрешения не синхронизируются между устройствами.
 +
 +
=== Разрешения для скриптов ===
 +
; Libraries : Определяет какие библиотеки помимо родной будут доступны скрипту. Вы можете предоставить доступ ко всем библиотекам или выбрать определенные библиотеки. Данное разрешение требуется для функции libByName.
 +
; Read files : Предоставляет скрипту доступ на чтение файлов с запоминающего устройства. Данное разрешение требуется для функции file.
 +
; Write files : Предоставляет скрипту доступ на создание и изменение файлов в запоминающем устройстве. Данное разрешение требуется для функции file.
 +
; Network : Предоставляет скрипту право выполнять http запросы. Данное разрешение требуется для функции http.
 +
 +
Установка разрешений должна выполняться на каждом устройстве отдельно. Выбранные разрешения не синхронизируются между устройствами.

Revision as of 11:30, 9 September 2016

« Page as of 2016-09-09, editions Mobile 4.0.0, Desktop 1.0.5 »

Триггер это скрипт, который запускается при определенных действиях или событиях. В качестве языка для написания скриптов используется JavaScript. Результатом выполнения скрипта может быть изменение или создание записи, выполнение http-запроса, создание файла, валидация данных и другие действия.

Создание триггера

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

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

Момент запуска триггера

Момент запуска триггера определяется двумя параметрами:

Действие
это какая-либо выполняемая пользователем операция с записями.
Фаза действия
определяет более точный момент срабатывания триггера. Для каждого типа Действия доступны свои фазы.

Выполнение скрипта

Фаза в которую запускается триггер также определяет то, как будет выполняться скрипт - синхронно или асинхронно.

Синхронное выполнение скрипта
приложение приостановить взаимодействие с пользователем на время выполнения скрипта. Не рекомендуется в таких скриптах выполнять длительные операции.
Асинхронное выполнение скрипта
скрипт запускается в фоновом режиме, приложение не приостанавливает взаимодействие с пользователем. Обычно асинхронно выполняются скрипты в последних фазах действия.

Безопасность

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

Чтобы открыть диалог установки разрешений для скриптов - откройте список триггеров библиотеки и нажмите кнопку Щит на тулбаре. Установка разрешений должна выполняться на каждом устройстве отдельно. Выбранные разрешения не синхронизируются между устройствами.

Разрешения для скриптов

Libraries
Определяет какие библиотеки помимо родной будут доступны скрипту. Вы можете предоставить доступ ко всем библиотекам или выбрать определенные библиотеки. Данное разрешение требуется для функции libByName.
Read files
Предоставляет скрипту доступ на чтение файлов с запоминающего устройства. Данное разрешение требуется для функции file.
Write files
Предоставляет скрипту доступ на создание и изменение файлов в запоминающем устройстве. Данное разрешение требуется для функции file.
Network
Предоставляет скрипту право выполнять http запросы. Данное разрешение требуется для функции http.

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