Разработка:storages/achievementcats — различия между версиями
(Новая страница: «{{Infobox_Plugin | name = achievementcats | type = storages }} =Таблица в базе данных= ''achievementcats'' - Справочник разделов...») |
(нет различий)
|
Версия 18:39, 31 августа 2016
Плагин | |
Название | achievementcats |
Тип | storages |
Содержание
Таблица в базе данных
achievementcats - Справочник разделов(категорий) шаблонов достижений
Подробный формат полей в таблице:
- id - ID раздела.
- name - Название раздела.
- parentid - ID родительского раздела.
- departmentid - ID подразделения.
- sortorder - Поле для стандартной сортировки разделов.
- createdate - Дата создания раздела.
- status - Статус раздела.
Методы:
Публичные методы:
save( $object = null, $options = [] )
Сохранить раздел
Метод сохранения раздела достижений
Аргументы:
- $fromid(int) - счет, с которого списываем сумму.
- $object(object) - Объект раздела
- Обязательные поля:
- ->name - Имя раздела
- ->departmentid - Подразделение раздела
- Необязательные поля
- ->parentid - ID родительского раздела
- ->sortorder - Вес сортировки
- Обязательные поля:
- $options(array) - Массив дополнительных параметров
Возвращаемые значения:
- bool - В случае ошибки сохранения
- int - ID сохраненного раздела
Пояснения: Метод реализует механизм сохранения(создания или обновления) раздела в системе.
Логика работы
- Проверка входных данных
- Клонирование исходного объекта для безопасной манипуляции с данными
- Нормализация свойств переданного раздела
- Выбор механизма сохранения(создание или обновление)
- Сохранение
- Генерация служебных полей(сортировка, дата создания)
- Добавление записи в БД
- Обновление
- Генерация служебных полей(сортировка)
- Обновление записи в БД
- Сохранение
Приватные методы:
get_sortorder($saveobj)
Генерация поля сортировки раздела
Метод генерации поля сортировки на основе объекта раздела
Аргументы:
- saveobj(object) - Объект раздела
Возвращаемые значения:
- int - Вес раздела
Пояснения: Метод реализует механизм генерации поля сортировки раздела. В данный момент не используется и для всех разделов возвращает 0