Разработка:storages/pridepends — различия между версиями
Nickkang (обсуждение | вклад) (Новая страница: «{{Infobox_Plugin | name = pridepends | type = storages }} ===Таблица в базе данных=== ''pridepends'' - содержит записи зависи...») |
Jek312 (обсуждение | вклад) (→check_pridepends( $psbcid, $targetpritemid )) |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 5: | Строка 5: | ||
===Таблица в базе данных=== | ===Таблица в базе данных=== | ||
− | ''pridepends'' - содержит записи зависимостей дисциплин друг от друга с указанием характера зависимости (по коду типа зависимости запускается заранее | + | ''pridepends'' - содержит записи зависимостей дисциплин друг от друга с указанием характера зависимости (по коду типа зависимости запускается заранее созданный метод) |
====Подробный формат полей в таблице:==== | ====Подробный формат полей в таблице:==== | ||
− | * programmitemid - дисциплина в таблице [[Разработка:storages/programmitems | programmitems ]]. Здесь указывается дисциплина, для которой будет указываться зависимость. Т.е. эта дисциплина будет | + | * programmitemid - дисциплина в таблице [[Разработка:storages/programmitems | programmitems ]]. Здесь указывается дисциплина, для которой будет указываться зависимость. Т.е. эта дисциплина будет зависеть от того, что указано в следующих полях. |
− | * type - тип зависимости, строковое поле. По содержащемуся здесь коду при проверке зависимости | + | * type - тип зависимости, строковое поле. По содержащемуся здесь коду при проверке зависимости запускается соответствующий метод |
* value - параметр зависимости, строковое поле. В частности поле может содержать id дисциплины, которая будет выступать зависимостью. | * value - параметр зависимости, строковое поле. В частности поле может содержать id дисциплины, которая будет выступать зависимостью. | ||
Строка 32: | Строка 32: | ||
===='''check_pridepends( $psbcid, $targetpritemid )'''==== | ===='''check_pridepends( $psbcid, $targetpritemid )'''==== | ||
− | Метод возвращает список невыполненных предусловий, которые должны быть | + | Метод возвращает список невыполненных предусловий, которые должны быть выполнены для записи на переданную параметром дисциплину. |
''Аргументы:'' | ''Аргументы:'' | ||
Строка 46: | Строка 46: | ||
* для каждой записи вызвать метод, код которого указан в поле type в таблице зависимостей | * для каждой записи вызвать метод, код которого указан в поле type в таблице зависимостей | ||
* этот метод смотрит пройдена ли дисц, если да, то вернет true, иначе false | * этот метод смотрит пройдена ли дисц, если да, то вернет true, иначе false | ||
− | |||
===='''get_list_by_id( $id )'''==== | ===='''get_list_by_id( $id )'''==== |
Текущая версия на 13:45, 28 апреля 2011
Плагин | |
Название | pridepends |
Тип | storages |
Содержание
Таблица в базе данных
pridepends - содержит записи зависимостей дисциплин друг от друга с указанием характера зависимости (по коду типа зависимости запускается заранее созданный метод)
Подробный формат полей в таблице:
- programmitemid - дисциплина в таблице programmitems . Здесь указывается дисциплина, для которой будет указываться зависимость. Т.е. эта дисциплина будет зависеть от того, что указано в следующих полях.
- type - тип зависимости, строковое поле. По содержащемуся здесь коду при проверке зависимости запускается соответствующий метод
- value - параметр зависимости, строковое поле. В частности поле может содержать id дисциплины, которая будет выступать зависимостью.
Дополнительные методы:
get_cfg($key=null)
Позволяет обращаться к конфигурационному файлу данного плагина.
Аргументы:
- string[optional] $key=null Ключ в массиве, т.е. искомый параметр. Если параметр не передан, то возвращается весь массив.
Возвращаемые значения:
- Параметр или null (если конфигурационный файл не найден или если параметр не найден в файле или если он найден и его значение null, это стоит учитывать)
Структура работы:
- Для работы требуется переменная класса для хранения массива параметров из файла, т.е. обращение в файл производится только при первой попытке.
- Ищет конфигурационный файл (в соответствии с логикой работы dof - $this->dof->plugin_path($this->type(),$this->code(),'/cfg/cfg.php'))
- Возвращает значение по ключу (если ключ не указан, то возвращает весь массив параметров из файла). к примеру return @$mas['a'], т.е. если нет значения, то не генерируется ошибка, а возвращается null.
check_pridepends( $psbcid, $targetpritemid )
Метод возвращает список невыполненных предусловий, которые должны быть выполнены для записи на переданную параметром дисциплину.
Аргументы:
- int $targetpritemid id дисциплины
- int $psbcid id подписки на программу
Возвращаемые значения:
- Массив объектов с полями:
- тип зависимости
- текст ошибки
- параметр невыполненного предусловия.
Структура работы
- взять список по $targetpritemid
- для каждой записи вызвать метод, код которого указан в поле type в таблице зависимостей
- этот метод смотрит пройдена ли дисц, если да, то вернет true, иначе false
get_list_by_id( $id )
Метод возвращает массив зависимостей для дисциплины (массив из id дисциплин)
Аргументы:
- int $targetpritemid id дисциплины
Возвращаемые значения:
- Массив объектов с полями:
- тип зависимости
- текст ошибки
- параметр предусловия.
requirepritem( $targetpritid, $psbcid, $dependpritid )
Функция предусловия. Базовая. Проверяет, получен ли студентом зачет по данной дисциплине
Аргументы:
- int $targetpritid id целевой дисциплины (для универсальности интерфейса)
- int $psbcid id подписки на программу
- int $dependitid id дисциплины , необходимой для подписания на целевую дисциплину
Возвращаемые значения:
- Массив объектов с полями:
- тип зависимости
- текст ошибки
- параметр предусловия.