4.2.1. Элементы ввода данных на формах
Data Source Eng Data Source (incomplete)
На каждой, использующейся в административной консоли, форме встречаются элементы ввода. Элементы ввода
являются одним из основных способов редактирования записей из базы данных.
Все упомянутые в данной статье элементы ввода объявлены в шаблоне incs/form_blocks.tpl. Каждый элемент
состоит из 2 частей - левой и правой. В левой части находиться:
название поля;
пометка о том, что поле является обязательным к заполнению;
дополнительные кнопки (напр. открытия
FCKEditor);
В правой части находиться сам элемент ввода. Т.к. элементов и способов ввода информации может быть много, то
на каждый из них создан отдельный блок. В общей форме все такого рода блоки называются inp_edit_<type>,
где <type> - это слово, по которому можно узнать, что за блок будет нарисован.
У всех, из ниже перечисленных блоков есть несколько общих параметров, которые будут перечислены далее.
параметр |
описание |
|---|---|
| prefix (string) | В данном параметре задаётся префикс того unit config, чья запись будет редактироваться на форме. |
| field (string) | Название поля (из базы данных или виртуального), значение которого будет показано или будет редактироваться в этом блоке. |
| title (string) | Название фразы, перевод которой будет отображён в левой части блока в качестве названия поля
для пользователей. Согласно
правилам назначения имён название фразы
должно начинаться с |
| is_last (int) | Данный параметр позволяет указать, что этот элемент на форме является последним. Обычно такие элементы оформляются специальным образом. |
inp_label
Данный блок предназначен для вывода значения какого либо поля, без возможности его редактирования на форме.
параметр |
описание |
|---|---|
| hint_label (string) | Название фразы, перевод которой должен быть показан в качестве подсказки справа от поля ввода. |
| as_label (int) | Если данный параметр установлен, то значение в поле будет интерпретировано как название фразы и будет переведено перед отображением на форме. |
| currency (string) | Для полей, содержащих цену позволяет задать
ISO код валюты, в которой нужно показывать значение
данного поля (значение автоматически пересчитывается в зависимости от куса
указанной валюты к курсу основной валюты сайта).
Также можно передать значение |
| style (string) | Оформление поля с помощью стандартных стилей (HTML элемент). |
| format (string) | Данный параметр позволяет задать другой формат вывода данных для поля. Формат, переданный в блоке, является более приоритетным, чем формат указанный в unit config. |
| nl2br (int) | При передаче данного параметра на выводимое значение будет применена функция nl2br. |
| no_special (int) | Добавлено в версии 5.0.0. При передаче данного параметра на выводимое значение не будет применена функция htmlspecialchars. |
inp_id_label
Данный блок полностью идентичен функциональности блоку inp_label, но результат работы блока будет виден на форме только тогда, когда в поле будет значение. Этот блок обычно используется для отображения значения основного поля (primary key) таблицы.
inp_edit_box
Простой edit box (<input type="text">).
параметр |
описание |
|---|---|
| subfield (string) | Может служить для обработки массива хранящегося в базе данных в сериализованного виде.
Например на форме ввода находиться несколько inp_edit_box но с
разными значениям данного параметра. Написав соответствующий метод для обработки полей,
результат ввода данных можно будет сохранить в одном поле базы данных. Пример можно
найти в In-Portal в секции |
| class (string) | Указывается стилевой класс для отображения поля ввода (HTML элемент). |
| format (string) | Данный параметр позволяет задать другой формат вывода данных для поля. Формат, переданный в блоке, является более приоритетным, чем формат указанный в unit config. |
| maxlength (int) | Максимальное количество символов, вводимых в текстовом поле (HTML элемент). По умолчанию не задано. |
| onblur (string) | Позволяет задать обработчик события |
| size (int) | Ширина поля ввода в символах (HTML элемент). |
| onkeyup (string) | Позволяет задать обработчик события |
| onchange (string) | Позволяет задать обработчик события |
| style (string) | Оформление поля с помощью стандартных стилей (HTML элемент). |
| hint_label (string) | Название фразы, перевод которой должен быть показан в качестве подсказки справа от поля ввода. |
inp_edit_box_ml
Простой edit box, но с кнопкой открытия всплывающего окна (popup) для ввода значения поля на других
языках. Используется для многоязычных сайтов (<input type="text">).
параметр |
описание |
|---|---|
| class (string) | Указывается стилевой класс для отображения поля ввода (HTML элемент). |
| size (int) | Ширина поля ввода в символах (HTML элемент). |
| maxlength (int) | Максимальное количество символов, вводимых в текстовом поле (HTML элемент). По умолчанию не задано. |
| style (string) | Оформление поля с помощью стандартных стилей (HTML элемент). |
| onblur (string) | Позволяет задать обработчик события |
inp_edit_password
Поле для ввода пароля (<input type="password">).
параметр |
описание |
|---|---|
| class (string) | Указывается стилевой класс для отображения поля ввода (HTML элемент). |
| size (int) | Ширина поля ввода в символах (HTML элемент). |
| style (string) | Оформление поля с помощью стандартных стилей (HTML элемент). |
| hint_label (string) | Название фразы, перевод которой должен быть показан в качестве подсказки справа от поля ввода. |
inp_edit_upload
Используется для загрузки (upload) одного файла (<input type="file">).
параметр |
описание |
|---|---|
| class (string) | Указывается стилевой класс для отображения поля ввода (HTML элемент). |
| size (int) | Ширина поля ввода в символах (HTML элемент). |
| style (string) | Оформление поля с помощью стандартных стилей
(HTML элемент).
Для данного блока по умолчанию равно |
| thumbnail (bool) | Добавлено в версии 5.0.0. Показывать пиктограмму загруженного изображения. Параметр имеет смысл использовать, когда заранее известно, что в поле будут загружаться изображения. |
inp_edit_date
Используется для ввода даты, в указанном при настройке поля, формате (<input type="text">).
параметр |
описание |
|---|---|
| class (string) | Указывается стилевой класс для отображения поля ввода (HTML элемент). |
inp_edit_time
Используется для ввода времени, в указанном при настройке поля, формате (<input type="text">).
параметр |
описание |
|---|---|
| class (string) | Указывается стилевой класс для отображения поля ввода (HTML элемент). |
inp_edit_date_time
Используется для ввода даты и времени, в указанном при настройке поля, формате (<input type="text">).
параметр |
описание |
|---|---|
| class (string) | Указывается стилевой класс для отображения поля ввода (HTML элемент). |
inp_edit_textarea
Используется для ввода (<textarea> </textarea>).
параметр |
описание |
|---|---|
| class (string) | Указывается стилевой класс для отображения поля ввода (HTML элемент). |
| format (string) | Данный параметр позволяет задать другой формат вывода данных для поля. Формат, переданный в блоке, является более приоритетным, чем формат указанный в unit config. |
| edit_template (string) | Добавлено в версии 4.3.1. Данный параметр позволяет задавать шаблон, используемый для редактирования данного
поля. По умолчанию равен |
| allow_html (string) | Если значение данного параметра будет равно |
| style (string) | Оформление поля с помощью стандартных стилей
(HTML элемент).
Для данного блока по умолчанию равно |
| control_options (string) | Добавлено в версии 4.2.0. Данный параметр позволяет задать минимальную и максимальную высоту (в пикселях) для
данного элемента в виде |
inp_edit_textarea_ml
Используется для ввода текста, но с кнопкой открытия всплывающего окна (popup) для ввода значения
поля на других языках. Используется для многоязычных сайтов (<textarea> </textarea>).
параметр |
описание |
|---|---|
| class (string) | Указывается стилевой класс для отображения поля ввода (HTML элемент). |
| format (string) | Данный параметр позволяет задать другой формат вывода данных для поля. Формат, переданный в блоке, является более приоритетным, чем формат указанный в unit config. |
| allow_html (string) | Если значение данного параметра будет равно |
| style (string) | Оформление поля с помощью стандартных стилей
(HTML элемент).
Для данного блока по умолчанию равно |
| control_options (string) | Добавлено в версии 4.2.0. Данный параметр позволяет задать минимальную и максимальную высоту (в пикселях) для
данного элемента в виде |
| cols (int) | Позволяет задать количество столбцов в элементе (HTML элемент). |
| rows (int) | Позволяет задать количество строк в элементе (HTML элемент). |
inp_edit_fck
Поле редактируемое с помощью интегрированного FCKEditor.
параметр |
описание |
|---|---|
| bgcolor (string) | Данный параметр позволяет задать
цвет фона окна
редактирования в |
| control_options (string) | Добавлено в версии 4.2.0. Данный параметр позволяет задать минимальную и максимальную высоту (в пикселях) для
данного элемента в виде |
inp_edit_user
Используется для выбора пользователя (в базе будет храниться его ID). Рядом находящаяся кнопка
открывает список пользователей, в котором выбирается требуемый
(<input type="text">).
параметр |
описание |
|---|---|
| class (string) | Указывается стилевой класс для отображения поля ввода (HTML элемент). |
| onkeyup (string) | Позволяет задать обработчик события |
| size (int) | Ширина поля ввода в символах (HTML элемент). |
inp_edit_category
Данный блок позволяет выбрать категорию, используя всплывающее окно (popup) со списком категорий.
В результате в качестве значения поля будет ID выбранной категории, но на
форме будет показываться путь к ней.
inp_edit_options
DropDown (<select> </select>).
параметр |
описание |
|---|---|
| onchange (string) | Позволяет задать обработчик события |
| has_empty (int) | Если задан, то данный параметр говорит о том, что перед списком опций будет автоматически добавлена пустая опция. |
| empty_value (int) | Данный параметр позволяет задать значение ( |
| style (string) | Оформление поля с помощью стандартных стилей (HTML элемент). |
inp_edit_multioptions
Multiple DropDown (<select multiple> </select>).
параметр |
описание |
|---|---|
| onchange (string) | Позволяет задать обработчик события |
| has_empty (int) | Если задан, то данный параметр говорит о том, что перед списком опций будет автоматически добавлена пустая опция. |
| empty_value (int) | Данный параметр позволяет задать значение ( |
| style (string) | Оформление поля с помощью стандартных стилей (HTML элемент). |
inp_edit_radio
Дает возможность сделать выбор значения с помощью Radio Buttons (<input type="radio">).
параметр |
описание |
|---|---|
| onchange (string) | Позволяет задать обработчик события |
| onclick (string) | Позволяет задать обработчик события |
inp_edit_checkbox
Дает возможность сделать выбор значения с помощью CheckBox (<input type="checkbox">).
параметр |
описание |
|---|---|
| onchange (string) | Позволяет задать обработчик события |
| onclick (string) | Позволяет задать обработчик события |
| field_class (string) | Указывается стилевой класс для отображения поля ввода (HTML элемент). |
inp_edit_checkboxes
Дает возможность сделать выбор значений с помощью нескольких CheckBoxes (<input type="checkbox">).
параметр |
описание |
|---|---|
| no_empty (int) | Если передать, то не будет напечатана опция с пустым значением. Позволяет решать проблему с некорректно заданной (в unit config) пустой опцией (в случае, когда раньше вместо этого блока использовался блок inp_edit_options). |
inp_edit_checkbox_allow_html
В Platform не используется, используется в In-Portal при редактировании рецензий товара.
параметр |
описание |
|---|---|
| field_class (string) | Указывается стилевой класс для отображения поля ввода (HTML элемент). |
inp_edit_weight
Используется для ввода веса согласно значению поля UnitSystem в таблице
Language. Если выбрана Американская система, то показывается 2 поля
для ввода lbs и oz, если Европейская то показывается одно поле для ввода kg.
параметр |
описание |
|---|---|
| subfield (string) | Может служить для обработки массива хранящегося в базе данных в сериализованного виде.
Например на форме ввода находиться несколько inp_edit_box но с
разными значениям данного параметра. Написав соответствующий метод для обработки полей,
результат ввода данных можно будет сохранить в одном поле базы данных. Пример можно
найти в In-Portal в секции |
| class (string) | Указавается стилевой класс для отображения поля ввода (HTML элемент). |
| maxlength (int) | Максимальное количество символов, вводимых в текстовом поле (HTML элемент). По умолчанию не задано. |
| size (int) | Ширина поля ввода в символах (HTML элемент). Для данного блока по умолчанию равно «15». |
inp_edit_swf_upload
Используется для загрузки файлов большого размера или большого количества файлов одновременно.
Во время загрузки показывает progress bar c процессом загрузки каждого файла на сервер. Перед использованием
данного блока необходимо убедиться, что подключены файлы js/swfobject.js и js/uploader.js. Если такие
файлы не подключены, то это можно сделать используя следующий код:
<script type="text/javascript" src="js/swfobject.js"></script>
<script type="text/javascript" src="js/uploader.js"></script>
Приведённый выше код следует разместить после объявления панели инструментов (toolbar).
параметр |
описание |
|---|---|
| class (string) | Указывается стилевой класс для отображения поля ввода (HTML элемент). |
| style (string) | Оформление поля с помощью стандартных стилей (HTML элемент). |
inp_edit_picker
Данный блок представляет из себя два поля в одном из которых находятся выбранные элементы,
а во втором все доступные элементы за исключением уже выбранных. Блок позволяет выбрать несколько элементов
одновременно и перенести их во второй список. Более подробная информация об этом блоке доступна
в этой статье.
параметр |
описание |
|---|---|
| style (string) | Оформление поля с помощью стандартных стилей (HTML элемент). Для данного блока по умолчанию равно «width: 225px;». |
| size (int) | Ширина поля ввода в символах (HTML элемент). Для данного блока по умолчанию равно «15». |
| optprefix (string) | Префикс, данные которого будут использованы для заполнения списка доступных и выбранных опций. |
| option_key_field (string) | Поле, объявленное в unit config префикса
опций (указанного в |
| option_value_field (string) | Поле, объявленное в unit config префикса
опций (указанного в |
inp_edit_minput
Блок используется для класса, который предназначен для ввода списка дополнительных данных в схожем
формате, характеризующих основной предмет. Например, человек (people) - это пример основной сущности, а список
его детей (children) - это пример дополнительной сущности. Т.е. ребенок (children) это подчинённый префикс для
главного префикса people. Более подробная информация об этом блоке доступна в
этой статье.
параметр |
описание |
|---|---|
| format (string) | Значением данного параметра является строка, которая может состоять из названий
полей (зарегистрированных в шаблоне при помощи метода |
| style (string) | Оформление поля с помощью стандартных стилей
(HTML элемент).
Для данного блока по умолчанию равно |
| allow_add (int) | Можно разрешить/запретить добавление элементов списка, по умолчанию разрешено. |
| allow_edit (int) | Можно разрешить/запретить редактирование элементов списка, по умолчанию разрешено. |
| allow_delete (int) | Можно разрешить/запретить удаление элементов списка, по умолчанию разрешено. |
| allow_move (int) | Добавлено в версии 4.3.1. Можно разрешить/запретить перемещение элементов вверх и вниз в списке, по умолчанию разрешено. Осторожно В зависимости от того, как будет обрабатываться полученный XML может получиться, что в базе данных ничего перемещаться не будет. |
inp_edit_filler
Данный блок заполняет градиентом свободное пространство во всплывающих окнах (popups).
параметр |
описание |
|---|---|
| control_options (string) | Добавлено в версии 4.2.0. Данный параметр позволяет задать минимальную и максимальную высоту (в пикселях)
для данного элемента в виде |