Проигрыватель
=============

.. js:class:: AS.FORMS

    .. js:function:: createPlayer()

        Создать экземпляр проигрывателя

        :return:  ``Object`` экземпляр проигрывателя

        .. code-block:: js

            var player = AS.FORMS.createPlayer();

.. js:function:: AS.FORMS.createPlayer()

    Экземпляр проигрывателя

    .. js:data:: model

        Модель проигрывателя :js:class:`AS.FORMS.PlayerModel`

    .. js:data:: view

        Представление проигрывателя :js:class:`AS.FORMS.PlayerView`

    .. js:function:: showFormByCode(formCode[,version])

        Отобразить форму по ее коду, без создания соответствующего экземпляра asfData

        :param string formCode: Код формы.
        :param number version: Версия формы.

    .. js:function:: showFormData(formUUID[, version[, dataUUID[, dataVersion]]])

        Отобразить форму по идентификатору

        :param string formUUID: Идентификатор формы.
        :param number version: Номер версии формы.
        :param string dataUUID: Идентификатор данных формы.
        :param number dataVersion: Номер версии данных формы.

    .. js:function:: saveFormData(callback)

        Сохранить данные формы

        :param callback: Функция, которая будет вызвана после сохранения данных с параметром asfDataUUID.

    .. js:function:: dataLoaded(definition[,data])

        Построение формы согласно definition и заполнение asfData значением параметра data.
        Вспомогательный метод, вызывающийся при выполнении методов :js:func:`showFormData` и :js:func:`showFormByCode`.

        :param string definition: Описание формы в формате JSON.
        :param string data: Данные формы в форме JSON.

    .. js:function:: destroy()

        Удалить экземпляр проигрывателя

.. js:class:: AS.FORMS.PlayerView

    Отображение проигрывателя

    .. js:data:: views

        Массив отображений страниц :js:class:`AS.FORMS.TableStaticView`

    .. js:data:: editable

        Включен режим редактирования формы

    .. js:function:: appendTo(element)

        Отобразить проигрыватель в указанном компоненте (например 'div')

        :param HTMLElement element:   Элемент в котором необходимо отобразить проигрыватель

    .. js:function:: destroy()

        Очистить экземпляр отображения

    .. js:function:: getViewWithId(cmpId[, tableId[, blockNumber]])

        Получить отображение компонента по его идентификатору

        :param string cmpId:        идентификатор компонента
        :param string tableId:      идентификатор динамической таблицы
        :param number blockNumber:  номер строки динамической таблицы
        :returns:                   :js:class:`AS.FORMS.View`

    .. js:function:: setEditable(editable)

        Включить режим редактирования формы

        :param boolean editable: режим редактирования формы

.. js:class:: AS.FORMS.PlayerModel

    Модель проигрывателя

    .. js:data:: models

        Массив моделей страниц :js:class:`AS.FORMS.TableModel`

    .. js:data:: formId

        Идентификатор формы

    .. js:data:: formCode

        Код формы

    .. js:data:: formName

        Наименование формы

    .. js:data:: asfDataId

        Идентификатор данных формы

    .. js:data:: nodeId

        Идентификатор данных формы в Хранилище

    .. js:data:: hasChanges

        Имеются изменения в значениях компонентов формы

    .. js:data:: errorDataLoad

        Имеются ошибки при загрузке данных формы

    .. js:data:: formats

        Форматы печати

    .. js:data:: defaultPrintFormat

        Формат печати по-умолчанию

    .. js:data:: hasPrintable

        Имеется печатное представление

    .. js:function:: getModelWithId(cmpId[, tableId[, blockNumber]])

        Получить модель компонента по его идентификатору

        :param string cmpId:        идентификатор компонента
        :param string tableId:      идентификатор динамической таблицы
        :param number blockNumber:  номер строки динамической таблицы
        :returns:                   :js:class:`AS.FORMS.Model`
