Разработка:workflows/schtemplates — различия между версиями

Материал из DOF
Перейти к: навигация, поиск
(Новая: ====Возможные статусы:==== * включен * приостановлен * удален)
 
(Возможные статусы)
 
(не показаны 2 промежуточные версии 2 участников)
Строка 1: Строка 1:
====Возможные статусы:====
+
{{Infobox_Plugin
* включен
+
| name = schtemplates
* приостановлен
+
| type = workflows
* удален
+
}}
 +
 
 +
==Возможные статусы==
 +
*  Включен (active) - шаблон активен и используется для создания событий
 +
*  Приостановлен (suspend) - использование шаблона приостановлено по каким-либо причинам
 +
*  Удален (deleted) - шаблон уделен и не используется
 +
 
 +
=== Метастатусы ===
 +
* Активный: active
 +
* Актуальный: active, suspend
 +
* Реальный: active, suspend
 +
* Мусорный: deleted
 +
 
 +
==Маршруты статусов==
 +
Правила описания маршрутов: описания возможностей перехода в новый статус на основании текущего статуса и условия, действительные только при переходе в новый статус из текущего статуса, группируются по текущему статусу, описания возможностей перехода в новый статус не зависящие от текущего статуса группируются по новому статусу.
 +
 
 +
==== Включен ====
 +
Возможные переходы ИЗ этого статуса:
 +
* Приостановлен
 +
* Удален
 +
 
 +
==== Приостановлен ====
 +
Возможные переходы ИЗ этого статуса:
 +
* Включен
 +
* Удален
 +
 
 +
====Удален====
 +
Это конечный статус
 +
 
 +
== API ==
 +
 
 +
==== get_list() ====
 +
Получить список всех возможных статусов для учебного потока
 +
 
 +
''Аргументы:''
 +
* (нет)
 +
''Возвращаемые значения:''
 +
* Массив, со списком всех возможных статусов в формате "обозначение" => "Перевод"
 +
 
 +
==== get_name() ====
 +
Получить название статуса по его обозначению в базе данных
 +
 
 +
''Аргументы:''
 +
* (string) $status - обозначение статуса латинскими буквами
 +
''Возвращаемые значения:''
 +
* (string|bool) - перевод для этого статуса, либо false, если он не обнаружен в списке допустимых
 +
 
 +
==== get_available() ====
 +
Получить список статусов, в которые может перейти указанный поток
 +
 
 +
''Аргументы:''
 +
* $id - id шаблона в таблице [[Разработка:storages/schtemplates|schtemplates]]
 +
''Возвращаемые значения:''
 +
* (array|bool) - массив возможных состояний в формате ('обозначение' => 'первод') или false в случае когда запись не найдена. В случае, когда переход из этого статуса невозможен - возвращается пустой массив.
 +
 
 +
==== change() ====
 +
Сменить статус учебного потока на указанный.
 +
 
 +
''Аргументы:''
 +
* (int) $id - id шаблона в таблице [[Разработка:storages/schtemplates|schtemplates]]
 +
* (string) $status - обозначение статуса латинскими буквами
 +
* (array) $opt - Массив, где содержатся дополнительные параметры для смены статуса. По умолчанию null.
 +
''Возвращаемые значения:''
 +
* (bool) true - если статус удалось изменить, или false в случае ошибки
 +
 
 +
При обращении к функции change() выполняются дополнительные действия, указанные выше, в разделе "[[#Маршруты статусов|Маршруты статусов]]". При каждом изменении статуса данные записываются в таблицу [[Разработка:storages/statushistory|statushistory]].
 +
==== init() ====
 +
Запускается при вставке в таблицу [[Разработка:storages/schtemplates|schtemplates]] новой записи. Автоматически назначает созданному шаблону "Включен" (active).
 +
 
 +
''Аргументы:''
 +
* $id - id только что созданного шаблона в таблице [[Разработка:storages/schtemplates|schtemplates]]
 +
''Возвращаемые значения:''
 +
* (bool) true если статус успешно назначен или false в случае ошибки
 +
 
 +
==Перехватываемые события==
 +
 
 +
{| border="1"
 +
|+ Таблица событий, которые перехватывает этот плагин
 +
! Тип плагина
 +
! Код плагина
 +
! Код события
 +
! Пояснение
 +
|-
 +
|storage
 +
|[[Разработка:storages/schtemplates|schtemplates]]
 +
|insert
 +
|Каждый новый созданный шаблон автоматически переводится в статус "включен" (active), путем вызова функции [[#init()|init()]].
 +
|}

Текущая версия на 11:09, 18 февраля 2014

Плагин
Название schtemplates
Тип workflows


Возможные статусы

  • Включен (active) - шаблон активен и используется для создания событий
  • Приостановлен (suspend) - использование шаблона приостановлено по каким-либо причинам
  • Удален (deleted) - шаблон уделен и не используется

Метастатусы

  • Активный: active
  • Актуальный: active, suspend
  • Реальный: active, suspend
  • Мусорный: deleted

Маршруты статусов

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

Включен

Возможные переходы ИЗ этого статуса:

  • Приостановлен
  • Удален

Приостановлен

Возможные переходы ИЗ этого статуса:

  • Включен
  • Удален

Удален

Это конечный статус

API

get_list()

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

Аргументы:

  • (нет)

Возвращаемые значения:

  • Массив, со списком всех возможных статусов в формате "обозначение" => "Перевод"

get_name()

Получить название статуса по его обозначению в базе данных

Аргументы:

  • (string) $status - обозначение статуса латинскими буквами

Возвращаемые значения:

  • (string|bool) - перевод для этого статуса, либо false, если он не обнаружен в списке допустимых

get_available()

Получить список статусов, в которые может перейти указанный поток

Аргументы:

Возвращаемые значения:

  • (array|bool) - массив возможных состояний в формате ('обозначение' => 'первод') или false в случае когда запись не найдена. В случае, когда переход из этого статуса невозможен - возвращается пустой массив.

change()

Сменить статус учебного потока на указанный.

Аргументы:

  • (int) $id - id шаблона в таблице schtemplates
  • (string) $status - обозначение статуса латинскими буквами
  • (array) $opt - Массив, где содержатся дополнительные параметры для смены статуса. По умолчанию null.

Возвращаемые значения:

  • (bool) true - если статус удалось изменить, или false в случае ошибки

При обращении к функции change() выполняются дополнительные действия, указанные выше, в разделе "Маршруты статусов". При каждом изменении статуса данные записываются в таблицу statushistory.

init()

Запускается при вставке в таблицу schtemplates новой записи. Автоматически назначает созданному шаблону "Включен" (active).

Аргументы:

  • $id - id только что созданного шаблона в таблице schtemplates

Возвращаемые значения:

  • (bool) true если статус успешно назначен или false в случае ошибки

Перехватываемые события

Таблица событий, которые перехватывает этот плагин
Тип плагина Код плагина Код события Пояснение
storage schtemplates insert Каждый новый созданный шаблон автоматически переводится в статус "включен" (active), путем вызова функции init().