ApiMainDataDescriptionIfForm » История » Версия 5
Артем, 08.12.2017 17:26
1 | 1 | Артем | h1. Формат данных ifForm |
---|---|---|---|
2 | |||
3 | ifTable содержит в себе элементы для создания формы выбора или ввода каких-данных посетителем сайта |
||
4 | |||
5 | --- |
||
6 | |||
7 | h2. Пример вывода |
||
8 | |||
9 | --- |
||
10 | |||
11 | 2 | Артем | !https://static.ilcats.ru/images/helpsystem/catalogsApi/apiHelpExampleIfFormFieldsHtml.png! |
12 | 1 | Артем | |
13 | --- |
||
14 | |||
15 | h2. Описание возвращаемых данных |
||
16 | |||
17 | --- |
||
18 | |||
19 | 3 | Артем | Массив *ifForm* состоит из четырех элементов: |
20 | 1 | Артем | |
21 | 4 | Артем | p(. 1) *format = ifForm* |
22 | |||
23 | p(. 2) Массив значений *fields*, который содержит элементы формы. Каждый элемент, в свою очередь, массив из 4 элементов: |
||
24 | |||
25 | p((. 2.1) *id* - ID поля формы |
||
26 | |||
27 | p((. 2.2) *name* - заголовок поля формы |
||
28 | |||
29 | p((. 2.3) *type* - тип поля формы. На данный момент поддерживается два типа: *selectable* - выборка из нескольких значений и *inputable* - вводимое значение. |
||
30 | |||
31 | p((. 2.4) *values* - массив возможных значений. Каждый элемент массива - массив из двух или трех элементов: обязательных *value* - значение, *name* - название в локали каталога, и необязательного *isSelected* - маркера выбранного в текущий момент элемента (*true* или *1* - элемент выбран). Если поле типа *inputable*, то массив *values* содержит единственный элемент. |
||
32 | 1 | Артем | |
33 | 4 | Артем | p(. 3) Массив *parameters* - одномерный массив, содержащий описание правил передачи в API данных из формы. Линейный массив, описывающий параметры формы. Состоит из элементов: |
34 | |||
35 | p((. *fpMethod* - метод передачи параметров формы. На данный момент поддерживается только метод *get* |
||
36 | |||
37 | p((. *fpFormFieldsDelimeter* - разделитель полей формы[1] |
||
38 | |||
39 | p((. *fpFormValuesDelimeter* - разделитель названия параметра и его значения[1] |
||
40 | |||
41 | p((. *fpEncodeMethod* - метод кодирования параметров формы при передаче[2] |
||
42 | |||
43 | p((. *formDataUrlParamName* - имя параметра, через который передаются данные формы |
||
44 | |||
45 | 5 | Артем | fn1. Данные формы при методе GET должны передаваться в одном $_GET параметре. Для примера на изображении ниже значение передаваемого формой параметра (без кодирования из *fpEncodeMethod*), например, будет выглядеть следующим образом: |
46 | 1 | Артем | |
47 | 5 | Артем | bq. &modification=...|...|...|...|...|DT=L |
48 | 1 | Артем | |
49 | 5 | Артем | , где "..." это скрытые на скриншоте значения. |
50 | 1 | Артем | |
51 | 5 | Артем | fn2. После конкатенации (по правилу из предыдущего абзаца) параметров формы в строку вида param1=value1|param2=value2|....|paramN=valueN полученная строка кодируется указанным в *fpEncodeMethod* |
52 | 1 | Артем | |
53 | |||
54 | 5 | Артем | p(. 4) Массив *urlParams*, содержащий список GET параметров вызова следующего метода. При этом значение параметра с индексом из *formDataUrlParamName* заменяется результат из п.3 |
55 | |||
56 | 1 | Артем | |
57 | --- |
||
58 | |||
59 | h2. Пример возвращаемых данных |
||
60 | |||
61 | --- |
||
62 | |||
63 | |||
64 | 2 | Артем | !https://static.ilcats.ru/images/helpsystem/catalogsApi/apiHelpExampleIfFormFields.png! |