Разработка:Принятые соглашения — различия между версиями

Материал из DOF
Перейти к: навигация, поиск
(Добавлены соглашения по комментариям)
м (Коды и названия статусов.)
Строка 14: Строка 14:
 
* active => идет/действует;
 
* active => идет/действует;
 
* completed => завершен;
 
* completed => завершен;
* canceled => отменен;'''
+
* canceled => отменен;
* plan => запланирован;''' (почему все статусы с окончанием "ed", а "plan" без?)
+
* plan => запланирован;
* archives => помещен в архив; (тут либо окончание "ed" как везде, либо просто "archive". Как обосновано множественное число для слова "архив"?)
+
* archive => помещен в архив;  
* suspend => приостановлен; '''(почему все статусы с окончанием "ed", а "suspend" без?)'''
+
* suspend => приостановлен;  
* approved=> подтвержден;
+
* approved => подтвержден;
* notapproved=> не подтвержден;
+
* notapproved => не подтвержден;
 
* available => доступен;
 
* available => доступен;
 
* notavailable => недоступен;
 
* notavailable => недоступен;
 
* draft => черновик;
 
* draft => черновик;
 +
=== Мета-статусы ===
 +
Объединяют в себе несколько статусов, и используются для того чтобы указать общее состояние объекта
 +
 
== Права ==
 
== Права ==
  

Версия 14:51, 8 сентября 2011

Принятые соглашения

В этом разделе описываются соглашения, относящиеся больше не к кодированию, а к реализации бизнес-логики: форматы полей для типовых данных, коды статусов и т.п.

Уникальные наименования

Коды программ, дисциплин и т.п. Должны включать в себя только цифры, русские и латинские буквы, дефис. В базу данных код сохраняется всегда только в нижнем регистре. Независимо от того, как был введен в форме.

Правила именования плагинов sync

Все плагины sync, которые производят синхронизацию объектов с moodle должны называться как объект storage и иметь суффикс "tom". Пример: personstom.

Коды и названия статусов.

  • future => предстоящий;
  • new => новый/заявка;
  • deleted => удаленный;
  • active => идет/действует;
  • completed => завершен;
  • canceled => отменен;
  • plan => запланирован;
  • archive => помещен в архив;
  • 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