Разработка:storages/cov — различия между версиями
Ibragim (обсуждение | вклад) м (→Подробный формат полей в таблице:) |
Ibragim (обсуждение | вклад) м (→save_option($plugintype, $plugincode, $objectid, $code, $value=null, $substorage=null)) |
||
Строка 19: | Строка 19: | ||
Если запись с переданными параметрами есть, а в качестве $value передали NULL, то запись будет удалена | Если запись с переданными параметрами есть, а в качестве $value передали NULL, то запись будет удалена | ||
''Аргументы:'' | ''Аргументы:'' | ||
+ | |||
* $plugintype - тип плагина, к объекту которого привязана дополнительная опция(почти всегда - storage) | * $plugintype - тип плагина, к объекту которого привязана дополнительная опция(почти всегда - storage) | ||
* $plugincode - код плагина, к объекту которого привязана дополнительная опция | * $plugincode - код плагина, к объекту которого привязана дополнительная опция |
Версия 20:48, 20 марта 2014
Содержание
Таблица в базе данных
cov - Custom Options Values - Значения Дополнительных Опций. В справочник сохраняются значения дополнительных полей для существующих плагинов.
Подробный формат полей в таблице:
- id - уникальный идентификатор записи
- plugintype - тип плагина, к объекту которого привязана дополнительная опция (почти всегда - storage)
- plugincode - код плагина, к объекту которого привязана дополнительная опция
- substorage - код подхранилища: не актуально для storage, поэтому почти всегда пустая строка, но в перспективе, может понадобится (аналогично похожему полю в реестре синхронизаций)
- objectid - id объекта, к которому привязывается дополнительная опция
- code - код дополнительной переменной (имя поля). Пока подчиняется такому же правилу, как и имена полей в БД. Потом с помощью слешей добавим возможность добавлять вложенные поля (пока не реализуем).
- value - значение дополнительной опции
Дополнительные методы:
save_option($plugintype, $plugincode, $objectid, $code, $value=null, $substorage=null)
Метод сохраняет настройку в справочник. Создает запись, если с такими параметрами записи еще нет. Обновляет запись, если она есть с такими параметрами, и переданный $value !== NULL Если запись с переданными параметрами есть, а в качестве $value передали NULL, то запись будет удалена Аргументы:
- $plugintype - тип плагина, к объекту которого привязана дополнительная опция(почти всегда - storage)
- $plugincode - код плагина, к объекту которого привязана дополнительная опция
- $objectid - id объекта, к которому привязывается дополнительная опция
- $code - код дополнительной переменной (имя поля)
- $value - значение дополнительной опции
- $substorage - код подхранилища: не актуально для storage, поэтому почти всегда пустая строка, но в перспективе, может понадобится (аналогично похожему полю в реестре синхронизаций)
get_option($plugintype, $plugincode, $objectid, $code, $substorage=null)
Метод возвращает одно значение из таблицы настроек по переданным параметрам. Аргументы:
- $plugintype - тип плагина, к объекту которого привязана дополнительная опция(почти всегда - storage)
- $plugincode - код плагина, к объекту которого привязана дополнительная опция
- $objectid - id объекта, к которому привязывается дополнительная опция
- $code - код дополнительной переменной (имя поля)
- $substorage - код подхранилища: не актуально для storage, поэтому почти всегда пустая строка, но в перспективе, может понадобится (аналогично похожему полю в реестре синхронизаций)
Возвращаемые значения:
- mixed: NULL - если значение не найдено|string значение - если найдено
add_options_to_custom_object($plugintype, $plugincode, $objectid, stdClass $customobj=null, $substorage=null)
Метод получает из справочника опции по переданным параметрам и добавляет их в качестве свойств к переданному объекту $customobj. Если не передали объект $customobj, полученные значения будут присоединены к новому stdClass(). Метод возвращает получившийся $customobj. Аргументы:
- $plugintype - тип плагина, к объекту которого привязана дополнительная опция(почти всегда - storage)
- $plugincode - код плагина, к объекту которого привязана дополнительная опция
- $objectid - id объекта, к которому привязывается дополнительная опция
- $customobj - объект, к которому будут присоединены полученные из справочника опции.
- $substorage - код подхранилища: не актуально для storage, поэтому почти всегда пустая строка, но в перспективе, может понадобится (аналогично похожему полю в реестре синхронизаций)
Возвращаемые значения:
- stdClass - переданные в метод объект, дополненный дополнительными опциями из справочника