Разработка:Принятые соглашения — различия между версиями
Ilya (обсуждение | вклад) (→Принятые соглашения) |
Ilya (обсуждение | вклад) (Добавлены соглашения по комментариям) |
||
Строка 32: | Строка 32: | ||
* Плагины для разных систем именуются согласно [[Разработка:Принятые соглашения#Правила_именования_плагинов_sync | правилам именования плагинов sync ]]. | * Плагины для разных систем именуются согласно [[Разработка:Принятые соглашения#Правила_именования_плагинов_sync | правилам именования плагинов sync ]]. | ||
* Функции синхронизации следует группировать по принципу принадлежности к объекту FDO. Например функции создания персоны в moodle, получения количества входов на портал и получения информации о персоне из moodle должны находится в плагине sync/personstom | * Функции синхронизации следует группировать по принципу принадлежности к объекту FDO. Например функции создания персоны в moodle, получения количества входов на портал и получения информации о персоне из moodle должны находится в плагине sync/personstom | ||
+ | == Комментарии == | ||
+ | В комментариях при описании параметров, содержащих id записей рекомендуется указывать из каких именно таблиц эти записи были взяты. При этом название таблицы можно писать одним словом, без префиксов. | ||
+ | например: | ||
+ | $personid - id пользователя в таблице persons | ||
+ | В данном случае имеется в виду таблица mdl_block_dof_s_persons |
Версия 14:11, 28 июня 2011
Содержание
Принятые соглашения
В этом разделе описываются соглашения, относящиеся больше не к кодированию, а к реализации бизнес-логики: форматы полей для типовых данных, коды статусов и т.п.
Уникальные наименования
Коды программ, дисциплин и т.п. Должны включать в себя только цифры, русские и латинские буквы, дефис. В базу данных код сохраняется всегда только в нижнем регистре. Независимо от того, как был введен в форме.
Правила именования плагинов sync
Все плагины sync, которые производят синхронизацию объектов с moodle должны называться как объект storage и иметь суффикс "tom". Пример: personstom.
Коды и названия статусов.
- future => предстоящий;
- new => новый/заявка;
- deleted => удаленный;
- active => идет/действует;
- completed => завершен;
- canceled => отменен;
- plan => запланирован; (почему все статусы с окончанием "ed", а "plan" без?)
- archives => помещен в архив; (тут либо окончание "ed" как везде, либо просто "archive". Как обосновано множественное число для слова "архив"?)
- suspend => приостановлен; (почему все статусы с окончанием "ed", а "suspend" без?)
- approved=> подтвержден;
- notapproved=> не подтвержден;
- available => доступен;
- notavailable => недоступен;
- draft => черновик;
Права
- Право dof/view (из moodle) действует только на просмотр блока FDO и на просмотр главной страницы. На всех остальных страницах используется собственная система полномочий
- Если в блок dof заходит пользователь с полномочиями администратора (admin или danamanage) и для него нет персоны - то персона создается. Все данные берутся из профиля moodle, статус синхронизации (sync2moodle) равен 1.
Синхронизация
При создании плагина sync следует руководствоваться следующими правилами:
- Функции синхронизации одного объекта FDO (например persons) с двумя разными системами нужно создать два плагина sync для каждой системы.
- Плагины для разных систем именуются согласно правилам именования плагинов sync .
- Функции синхронизации следует группировать по принципу принадлежности к объекту FDO. Например функции создания персоны в moodle, получения количества входов на портал и получения информации о персоне из moodle должны находится в плагине sync/personstom
Комментарии
В комментариях при описании параметров, содержащих id записей рекомендуется указывать из каких именно таблиц эти записи были взяты. При этом название таблицы можно писать одним словом, без префиксов. например:
$personid - id пользователя в таблице persons
В данном случае имеется в виду таблица mdl_block_dof_s_persons