Как прочитать критерии завершения из API настроения для использования в приложении?

Я использую core_course_get_contents. Я хочу знать критерии ограничения активности.

Я получаю что-то вроде этого в наличии

{\"op\":\"&\",\"showc\":[true],\"c\":[{\"type\":\"завершение\",\"cm\":10889 ,\"е\":1}]}

{\"op\":\"&\",\"showc\":[true],\"c\":[{\"type\":\"завершение\",\"cm\":9989 ,\"е\":1}]}

{\"op\":\"&\",\"c\":[{\"type\":\"grade\",\"id\":3410,\"min\":100}

Как это прочитать? Что это значит?

Это всегда разные параметры у других?

Какова общая структура параметра доступности?


person Nick    schedule 17.04.2017    source источник


Ответы (1)


Вы получаете строку JSON с парами ключ/значение. Эта строка сообщает вам, какие условия доступности должны быть удовлетворены.

Первая пара — "op": &. Это означает: логический оператор — AND. Другим значением могло быть ИЛИ.

Оператор сообщает вам, как условия доступности должны соотноситься друг с другом: либо все они должны быть действительными (И), либо хотя бы одно из них (ИЛИ).

Вторая пара "showc": true. Значит, я полагаю (не уверен): Показать условия доступности: верно. Другое значение могло быть, конечно, ложным.

Третья пара это: "c" (условие): array Клавиша "с" дает вам, насколько я понимаю, подробное описание условий доступности. Давайте углубимся в детали, здесь:

Ключ «type» сообщает вам, какой тип поля вы собираетесь оценивать: в вашем первом и втором примере это идентификатор модуля курса («cm») со значениями, соответственно, 10889 и 9989. Это означает: «что следующее имеет отношение к модулю курса 10889".

Однако я не знаю, что означает пара ключ/значение "e":1. Это может означать: «этот курс-модуль должен быть пройден». Попробуйте сами: вы могли изменить условия доступности какого-то модуля курса и посмотреть, что получится.

Кстати, вы можете прочитать этот JSON-объект прямо из поля availability вашей таблицы БД mdl_course_modules (или your_prefix_course_modules).

В вашем третьем примере типом является оценка («оценка»), идентификатор оценки — «3410», а «минимум» (я полагаю, минимальное значение) — «100».

Обратите внимание, что могут быть и другие типы: например: "type": "date" или "type": "grouping". Однако я не знаю списка возможных доступных типов.

person Aldo Paradiso    schedule 18.04.2017
comment
И что это значит &!\ ? - person Nick; 20.04.2017
comment
Полагаю, имеется в виду отрицание & (И), то есть: И НЕ. - person Aldo Paradiso; 20.04.2017
comment
Большой. Достаточно ли причин, чтобы принять ответ? - person Aldo Paradiso; 03.05.2017