Класс fcf.NClient.Wrapper

[Client only] Класс обертки шаблона на клиенте

Описание класса

Помимо объявленных методов, объекты Wrapper поддерживают методы обработки изменения аргумента шаблона.


Метод onArg вызывается при каждом изменении аргумента шаблона:

onArg(string a_argName, mixed a_value, fcf.NClient.Wrapper a_editor, bool a_ignoreRedrawing, bool a_innerCall, string a_suffix)


Метод onArg[ARGUMENT_NAME] вызывается при каждом изменении аргумента шаблона и с именем ARGUMENT_NAME:

onArg[ARGUMENT_NAME](mixed a_value, fcf.NClient.Wrapper a_editor, bool a_ignoreRedrawing, bool a_innerCall, string a_suffix)

ARGUMENT_NAME - Имя аргумента начинающиеся с большой буквы.


Аргументы:

string a_argName - Имя аргумента.

mixed a_value - Новое устанавливаемое значение.

fcf.NClient.Wrapper a_editor - Объект на котором был вызван метод setArg. При применении ссылок a_editor и this могут быть не равны

bool a_ignoreRedrawing - Флаг запрещающий перерисовку

bool a_innerCall - Флаг внутреннего вызова из самого шаблона, используется для построения внутренней обработки.

string a_suffix - Путь измененного значения в аргументе.

Пример:

... onArgValue(a_value, a_editor, a_ignoreRedrawing, a_innerCall, a_suffix){ if (this.isChild(a_editor) && this.getArg("defaultFlag")){ this.setArg("defaultFlag", false); } } ...

Методы
attach(object a_options) - Метод вызывается при каждом связывании шаблона с враппером. Данный метод используется в унаследованных классах.
array check() - Выполняет валидацию данных шаблона и возвращает массив объектов с информацией об ошибках
destroy() - Удаляет шаблон и данные с ним связанные
Event emit(object a_data, string|Event a_event) - Отправляет Dom событие врапперу
DomElement getActionDomElement() - Возвращает Dom элемент действий шаблона. Через данный элемент проходят Dom события шаблона.
string getAlias() - Возвращает alias шаблона
mixed getArg(string a_path) - Возвращает значение аргумента шаблона по строковому пути
object getArgs() - Возвращает объект со значениями аргументов шаблона
fcf.NClient.Wrapper getChild(string a_alias) - Возвращает дочерний враппер по имени псевдонима
[fcf.NClient.Wrapper] getChilds() - Возвращает массив дочерних врапперов шаблонов
DomElement getDomElement() - Возвращает Dom элемент шаблона
fcf.NClient.Wrapper getFirstChild() - Возвращает первый дочерний враппер шаблона
string getId() - Возвращает Id шаблона
object getOptions() - Возвращает объект со значениями опций шаблона
fcf.NClient.Wrapper getParent() - Возвращает родительский враппер
string getTemplate() - Возвращает имя шаблона
fcf.Actions initialize() - Выполняет инициализацию объекта. После его выполнения все дочерние элементы также будут проинициализированы и готовы к использованию.
bool isChild(fcf.NClient.Wrapper a_wrapper) - Возвращает true если объект является владельцем a_wrapper
bool isOwn(fcf.NClient.Wrapper a_wrapper) - Возвращает true если проверяемый объект вложен во враппер или является этим объектом
lock() - Выполняет блокировку шаблона
recalculate() - Выполняет упрощенный перерасчет аргументов. Пересчитываются только токенизирующие аргументы объявленные через fcf.argVal()
fcf.Actions refresh() - Выполняет перерисовку шаблона с возвратом аргументов в значения равным начальным fcf.Actions refresh(object a_options) - Выполняет перерисовку шаблона с возвратом аргументов в значения равным начальным
fcf.Actions reload() - Выполняет перерисовку шаблона с полным перерасчетом аргументов. Начальные значения аргументов пересчитываются.
NodeList select(string a_selector) - Выполняет выборку Dom элементов внутри текущего шаблона
fcf.Actions->mixed send(object a_data, [FileList|DomElement{input type=file}] a_files = undefined) - Выполняет действие на стороне сервера, определенное в файле [TEMPLATE].receive.js
unlock() - Выполняет разблокировку шаблона
fcf.Actions update() - Выполняет обновление на базе текущего состояния аргументов. Алгоритм обновления зависит от опции шаблона clientRendering. fcf.Actions update(object a_options) - Выполняет обновление на базе текущего состояния аргументов. Алгоритм обновления зависит от опции шаблона clientRendering.
validate(mixed a_value, object a_options, array a_dsterrors) - Выполняет проверку значения на валидность. Проверка выполняется на базе аргументов шаблона, которые интерпретируются как значения описания поля FSQL.
Методы
attach(object a_options) Метод вызывается при каждом связывании шаблона с враппером. Данный метод используется в унаследованных классах. Аргументы: object a_options - [Since 1.1.55] Параметры вызова привязки DOM элемента.

boolean updateStatic - Данный аргумент используется когда опция шаблона "static" равна true (не выполняется обновление DOM элементов). В режиме "static" метод attach вызывается при каждом обновлении, для возможности анализа пересчитанных аргументов. Свойство updateStatic равно true (в режиме "static"), когда было обновление обновление DOM элемента, это происходит при перерисовки методом reload.

boolean first - равен true при первом вызове метода attach

array check() Выполняет валидацию данных шаблона и возвращает массив объектов с информацией об ошибках Возвращаемое значение: array Массив объектов с информацией об ошибках валидации данных текущего состояния шаблона

Поля объекта с информацией об ошибке:

  1. string id - идентификатор шаблона
  2. string alias - псевдоним шаблона
  3. ErrorObject error - объект ошибки

destroy() Удаляет шаблон и данные с ним связанные
Event emit(object a_data, string|Event a_event) Отправляет Dom событие врапперу Аргументы: object a_data - Объект со значениями дополнительных полей события string|Event a_event - Наименование события или объект события Возвращаемое значение: Event
DomElement getActionDomElement() Возвращает Dom элемент действий шаблона. Через данный элемент проходят Dom события шаблона. Возвращаемое значение: DomElement Dom элемент действий шаблона
string getAlias() Возвращает alias шаблона Возвращаемое значение: string Alias шаблона
mixed getArg(string a_path) Возвращает значение аргумента шаблона по строковому пути Аргументы: string a_path - Путь к данным аргумента шаблона. Элементы пути могут разделяться точкой или форматом доступа к элементу объекта используя конструкцию ["ELEMENT"]

Примеры:

wrapper.getArg('arg1')

wrapper.getArg('arg1.name')

wrapper.getArg('arg1["name"]')

Возвращаемое значение: mixed
object getArgs() Возвращает объект со значениями аргументов шаблона Возвращаемое значение: object
fcf.NClient.Wrapper getChild(string a_alias) Возвращает дочерний враппер по имени псевдонима Аргументы: string a_alias - Псевдоним дочернего шаблона Возвращаемое значение: fcf.NClient.Wrapper Дочерний враппер
[fcf.NClient.Wrapper] getChilds() Возвращает массив дочерних врапперов шаблонов Возвращаемое значение: [fcf.NClient.Wrapper] Массив дочерних элементов
DomElement getDomElement() Возвращает Dom элемент шаблона Возвращаемое значение: DomElement
fcf.NClient.Wrapper getFirstChild() Возвращает первый дочерний враппер шаблона Возвращаемое значение: fcf.NClient.Wrapper
string getId() Возвращает Id шаблона Возвращаемое значение: string Id шаблона
object getOptions() Возвращает объект со значениями опций шаблона Возвращаемое значение: object Объект со значениями опций шаблона
fcf.NClient.Wrapper getParent() Возвращает родительский враппер Возвращаемое значение: fcf.NClient.Wrapper Родительский враппер
string getTemplate() Возвращает имя шаблона Возвращаемое значение: string Наименование шаблона
fcf.Actions initialize() Выполняет инициализацию объекта. После его выполнения все дочерние элементы также будут проинициализированы и готовы к использованию. Возвращаемое значение: fcf.Actions Объект обещания свидетельствующий о завершении выполнения
bool isChild(fcf.NClient.Wrapper a_wrapper) Возвращает true если объект является владельцем a_wrapper Аргументы: fcf.NClient.Wrapper a_wrapper - Проверяемый объект Возвращаемое значение: bool
bool isOwn(fcf.NClient.Wrapper a_wrapper) Возвращает true если проверяемый объект вложен во враппер или является этим объектом Аргументы: fcf.NClient.Wrapper a_wrapper - Проверяемый объект Возвращаемое значение: bool
lock() Выполняет блокировку шаблона
recalculate() Выполняет упрощенный перерасчет аргументов. Пересчитываются только токенизирующие аргументы объявленные через fcf.argVal()
fcf.Actions refresh() fcf.Actions refresh(object a_options) Выполняет перерисовку шаблона с возвратом аргументов в значения равным начальным Аргументы: object a_options - [Since 1.1.55] Параметры обновления шаблона

boolean updateStatic - Если равен true, то выполняется обновление DOM элементов для шаблонов с установленной опцией "static"

Возвращаемое значение: fcf.Actions
fcf.Actions reload() Выполняет перерисовку шаблона с полным перерасчетом аргументов. Начальные значения аргументов пересчитываются. Возвращаемое значение: fcf.Actions
NodeList select(string a_selector) Выполняет выборку Dom элементов внутри текущего шаблона Аргументы: string a_selector - Правила выборки определенные методом document.querySelectorAll() Возвращаемое значение: NodeList
fcf.Actions->mixed send(object a_data, [FileList|DomElement{input type=file}] a_files = undefined) Выполняет действие на стороне сервера, определенное в файле [TEMPLATE].receive.js Аргументы: object a_data - Данные отправляемые на сервер [FileList|DomElement{input type=file}] a_files - Массив с объектами FileList хранящие файлы отправляемые на сервер или DOM элементы input имеющий тип file Возвращаемое значение: fcf.Actions->mixed Возвращает fcf.Actions с результатом обработки данных на стороне сервера
setArg(string a_path, mixed a_value, bool a_ignoreCallbacks = false, bool a_ignoreRedrawing = false, bool a_innerCall = false) Устанавливает значение аргумента шаблона Аргументы: string a_path - Путь к данным аргумента шаблона. Элементы пути могут разделяться точкой или форматом доступа к элементу объекта используя конструкцию ["ELEMENT"]

Примеры:

wrapper.setArg('arg1', 'new value')

wrapper.setArg('arg1.name', 'new value')

wrapper.setArg('arg1["name"]', 'new value')

mixed a_value - Задаваемое значение аргумента bool a_ignoreCallbacks - Если установлен в true, то обработчики изменения аргумента onArg не вызываются bool a_ignoreRedrawing - Если равен true, то обновление шаблона не выполняется bool a_innerCall - Параметр передается в обработчик аргумента шаблона onArg для определения внутреннего вызова из кода враппера
unlock() Выполняет разблокировку шаблона
fcf.Actions update() fcf.Actions update(object a_options) Выполняет обновление на базе текущего состояния аргументов. Алгоритм обновления зависит от опции шаблона clientRendering. Аргументы: object a_options - [Since 1.1.55] Параметры обновления шаблона

boolean updateStatic - Если равен true, то выполняется обновление DOM элементов для шаблонов с установленной опцией "static"

Возвращаемое значение: fcf.Actions
validate(mixed a_value, object a_options, array a_dsterrors) Выполняет проверку значения на валидность. Проверка выполняется на базе аргументов шаблона, которые интерпретируются как значения описания поля FSQL. Аргументы: mixed a_value - Проверяемое значение object a_options - Объект дополнительных параметров валидации.

Поля объекта

  1. bool secondPriority = false - Если равен true ограничения notNull не учитываются

array a_dsterrors - Массив в который записываются объекты с информацией об ошибках о валидации.

Поля объекта с информацией об ошибке:

  1. string id - идентификатор шаблона
  2. string alias - псевдоним шаблона
  3. ErrorObject error - объект ошибки