energine
[ class tree: energine ] [ index: energine ] [ all elements ]

Class: Grid

Source Location: /modules/share/components/Grid.class.php

Class Overview

Object
   |
   --DBWorker
      |
      --Component
         |
         --DataSet
            |
            --DBDataSet
               |
               --Grid

Сетка


Author(s):

  • dr.Pavka

Variables

Constants

Methods


Child classes:

UserEditor
Класс - редактор пользователей
RoleEditor
Редактор ролей
DiscountsEditor
Редактор скидок
ProductEditor
Редактор продуктов
ManufacturersEditor
Редактор производителей
ProductStatusEditor
Редактор статусов продуктов
ParamValuesEditor
Редактор значений параметров продукта
CurrencyEditor
Класс предназначен для редактирования перечня валюты
OrderStatuses
Редактор статусов заказов
OrderHistory
История заказов
OrderDetails
Выводит детали заказа вызывается из OrderHistory
ProductTypeEditor
Редатор типов товаров
ProductParamsEditor
Редактор параметров типа продукта
TranslationEditor
Редактор переводов
FeedEditor
Класс для построения редакторов управляющихся из панели управления
FeedbackList
Спсиок сообщений поступивших с формы связи
DivisionEditor
Редактор разделов
TemplateEditor
Редактор шаблонов
LanguageEditor
Редактор переводов

Inherited Constants

Inherited Variables

Inherited Methods

Class: DBDataSet

DBDataSet::__construct()
Конструктор класса
DBDataSet::addFilterCondition()
Добавляет условие к фильтру
DBDataSet::clearFilter()
Сброс фильтра
DBDataSet::createBuilder()
Для мультиязычного грида подменяем построитель
DBDataSet::createDataDescription()
добавлена обработка ключей
DBDataSet::defineParams()
Добавлен параметр tableName
DBDataSet::getDataLanguage()
Возвращает язык на которм берутся данные
DBDataSet::getFilter()
Возвращает значение фильтра
DBDataSet::getFKData()
Возвращает данные о значения в связанной таблицы
DBDataSet::getLimit()
Возвращает ограничения по количеству записей
DBDataSet::getOrder()
Возвращает условия сортровки
DBDataSet::getPK()
Возвращает имя поля - первичного ключа
DBDataSet::getPreviousAction()
Возвращает предыдущее действие
DBDataSet::getTableName()
Возвращает имя таблицы
DBDataSet::getTranslationTableName()
Возвращает имя таблицы переводов
DBDataSet::loadData()
Переопределенный метод загрузки данных
DBDataSet::loadDataDescription()
Переопределенный метод загрузки описания данных Возвращает информацию о колонках в основной таблице и таблице переводов
DBDataSet::multiLoadData()
Загрузка мультиязычных данных
DBDataSet::recordExists()
Определяет существует ли запись с идентификатором переданным в параметре Вызывается из методов где нужно быть уверенным в наличии записи(view, edit,delete)
DBDataSet::setFilter()
Устанавливает значение фильтра
DBDataSet::setLimit()
Устанавливает ограничения по количеству записей
DBDataSet::setOrder()
Устанавливает условие сортровки
DBDataSet::setParam()
Для параметра tableName устанавливаем еще и имя таблицы переводов
DBDataSet::setPK()
DBDataSet::setTableName()
Устанавливает имя таблицы
DBDataSet::view()
Метод выводит форму просмотра

Class: DataSet

DataSet::__construct()
Конструктор класса
DataSet::addToolbar()
Устанавливает объекты тулбара
DataSet::addTranslation()
Добавляет переводы
DataSet::addWYSIWYGTranslations()
Добавляет переводы для тулбара WYSIWYG вызывается в потомках
DataSet::build()
Проверяет наличие пострителя передает ему данные и описание данны
DataSet::buildJS()
Строит описание JS объектов
DataSet::cleanup()
Чистка от лишних и вердоносных html тегов Вызывается в single режиме
DataSet::cleanupHTML()
Удаляет потенциально опасный и лишний HTML код
DataSet::createBuilder()
Создает построитель
DataSet::createData()
Загружает данные
DataSet::createDataDescription()
Создаем объект описания данных
DataSet::createPager()
Создает листалку
DataSet::createToolbar()
Создание панелей инструментов
DataSet::defineParams()
Добавлены: Параметр datasetAction Параметр recordsPerPage
DataSet::downloadFile()
Метод возвращает файл
DataSet::formatDate()
Метод используется для форматирования даты и времени в полях date и datetime Запрашивается через AJAX Получает данные из POST и возвращает строку даты
DataSet::getData()
Возвращает объект данных
DataSet::getDataDescription()
Возвращает описание данных
DataSet::getDataSetAction()
Возвращает адрес обработчика формы
DataSet::getTitle()
Возвращает название компонента
DataSet::getToolbar()
Возвращает набор тулбаров
DataSet::getType()
Возвращает тип компонента
DataSet::loadData()
Абстрактный метод загрузки данных
DataSet::loadDataDescription()
Абстрактный метод загрузки описания данных Используется для загрузки внешнего описания данных (не из конфигурации)
DataSet::prepare()
Подготовительные действия перед вызовом основного действия.
DataSet::setData()
Устанавливает данные
DataSet::setDataDescription()
Устанавливает описание данных
DataSet::setDataSetAction()
Устанавливает адрес обработчика формы
DataSet::setTitle()
Устанавливает название компонента
DataSet::setType()
Устанавливает тип компонента

Class: Component

Component::__construct()
Конструктор класса.
Component::build()
Строит результат работы компонента используя определённый построитель.
Component::defineParams()
Определяет допустимые параметры компонента и их значения по-умолчанию в виде массива array(paramName => defaultValue).
Component::determineAction()
Определяет текущее действие
Component::disable()
Отключает отображение компонента
Component::enable()
Включает отображение компонента
Component::enabled()
Возвращает активность компонента
Component::generateError()
Генерирует ошибку и добавляет её в список ошибок компонента.
Component::getAction()
Определяет имя текущего действия компонента.
Component::getActionParams()
Возвращает параметры действия.
Component::getBuilder()
Возвращает построитель компонента.
Component::getMethodRights()
Возвращает уровень прав пользователя, необходимых для запуска текущего действия компонента.
Component::getName()
Возвращает имя компонента.
Component::getParam()
Возвращает значение параметра компонента, или null, если такого параметра не существует.
Component::getProperty()
Возвращает значение свойства компонента.
Component::handleErrors()
Обрабатывает ошибки, произошедшие во время работы компонента.
Component::isActive()
Возвращает флаг активности компонента
Component::main()
Действие по-умолчанию.
Component::prepare()
Метод подготовки данных.
Component::removeProperty()
Удаляет свойство компонента.
Component::run()
Запускает компонент на исполнение.
Component::setBuilder()
Устанавливает построитель компонента.
Component::setParam()
Устанавливает значение параметра компонента, если такой существует.
Component::setProperty()
Устанавливает значение свойства компонента.

Class: DBWorker

DBWorker::__construct()
Конструктор класса.
DBWorker::dateToString()
Дата прописью Обертка над DBWorker::_dateToString
DBWorker::translate()
Нестатический метод-обёртка над DBWorker::_translate - для удобства использования внутри производных классов.
DBWorker::_dateToString()
Возвращает дату в виде строки прописью
DBWorker::_translate()
Возвращает перевод текстовой константы из таблицы переводов для указанного языка. Если язык явно не указан - используется текущий язык.

Class: Object

Object::__construct()
Пустой конструктор
Object::getConfigValue()
Нестатический метод-обёртка над Object::_getConfigValue - для удобства использования внутри производных классов.
Object::getTimer()
Возвращает значение счетчика времени выполнения.
Object::resetTimer()
Сбрасывает счетчик времени, возвращает предыдущее значение счетчика
Object::startTimer()
Запускает счетчик времени выполнения.
Object::stopTimer()
Останавливает счетчик времени выполнения.
Object::_getConfigValue()
Возвращает значение указанного параметра конфигурации.

Class Details

[line 20]
Сетка



Tags:

author:   dr.Pavka


[ Top ]


Class Variables

$fileLibrary =

[line 51]

Компонент: библиотека изображений



Tags:

access:   private

Type:   FileLibrary


[ Top ]

$imageManager =

[line 43]

Компонент: менеджер изображений



Tags:

access:   private

Type:   ImageManager


[ Top ]

$orderColumn =  false

[line 67]

Имя колонки для определения порядка пользовательскорй сортировки



Tags:

access:   private

Type:   string


[ Top ]

$saver =

[line 59]

сейвер



Tags:

access:   protected

Type:   Saver


[ Top ]



Class Methods


constructor __construct [line 79]

Grid __construct( string $name, string $module, Document $document, [ $params = null])

Конструктор класса



Tags:

access:   public


Overridden in child classes as:

UserEditor::__construct()
Конструктор класса
RoleEditor::__construct()
Конструктор класса
DiscountsEditor::__construct()
Конструктор класса
ProductEditor::__construct()
Конструктор класса
ManufacturersEditor::__construct()
Конструктор класса
ProductStatusEditor::__construct()
Конструктор класса
ParamValuesEditor::__construct()
Конструктор класса
CurrencyEditor::__construct()
Конструктор класса
OrderStatuses::__construct()
Конструктор класса
OrderHistory::__construct()
Конструктор класса
UserOrderHistory::__construct()
Конструктор класса
OrderDetails::__construct()
Конструктор класса
ProductTypeEditor::__construct()
Конструктор класса
ProductParamsEditor::__construct()
Конструктор класса
TranslationEditor::__construct()
Конструктор класса
FeedEditor::__construct()
Конструктор класса
GalleryEditor::__construct()
Конструктор класса
NewsEditor::__construct()
Конструктор класса
FeedbackList::__construct()
Конструктор класса
DivisionEditor::__construct()
Конструктор класса
TemplateEditor::__construct()
Конструктор класса
LanguageEditor::__construct()
Конструктор класса

Overrides DBDataSet::__construct() (Конструктор класса)

Parameters:

string   $name  
string   $module  
Document   $document  
array   $params  

[ Top ]

method add [line 121]

void add( )

Метод выводящий форму добавления



Tags:

access:   protected


Overridden in child classes as:

ManufacturersEditor::add()
ProductStatusEditor::add()
При добавлении віставляем уровень прав в минимально возможный видимый
LanguageEditor::add()
При создании нового языка не даем возможности сделать его дефолтным

[ Top ]

method addAttFilesField [line 990]

void addAttFilesField( $tableName, [ $data = true])

Строит список дополнительных файлов Используется в тех случаях когда необходимо создать дополнительную вкладку с приаттачеными к записи файлами

Сохранение приаттаченных данных должно происходить в методе saveData на общих основаниях




Tags:

see:   DivisionEditor
see:   ProductEditor
access:   protected


Parameters:

   $tableName  
   $data  

[ Top ]

method addToolbarTranslations [line 967]

void addToolbarTranslations( )

Добавляет переводы для WYSIWYG при необходимости



Tags:

access:   private


[ Top ]

method applyUserFilter [line 869]

void applyUserFilter( )

Метод применеющий фильтр



Tags:

access:   protected


[ Top ]

method build [line 489]

void build( )

Переопределенный метод построения Перед построением - добавляется перевод После построения добавляется информация о закладках



Tags:

access:   public


Overridden in child classes as:

RoleEditor::build()
Переопределенный метод Для формы редактирования, если чекбоксы ролей по умолчанию отмечены делает их неактивными
ProductEditor::build()
Для метода showTree вызывается свой билдер
OrderHistory::build()
Выводим детали заказа
ProductTypeEditor::build()
Для метода showParams вызывается свой билдер
FeedEditor::build()
Для метода main убираем вызов построителя
DivisionEditor::build()
Для метода setPageRights если раздел который редактируется - системный то дизейблятся вкладки с правами Для метода show слешатся имена разделов Для формы редактирования делается неактивным переключатель smap_default
LanguageEditor::build()
Переопределенный метод Для формы редактирования, если чекбокс языка по умолчания отмечен делает его неактивным

Overrides DataSet::build() (Проверяет наличие пострителя передает ему данные и описание данны)

[ Top ]

method buildAttachedFiles [line 1016]

DOMNode buildAttachedFiles( $data $data)



Tags:

access:   private


Parameters:

$data   $data   Данные

[ Top ]

method changeOrder [line 789]

JSON changeOrder( string $direction)

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



Tags:

return:   String
access:   protected


Overridden in child classes as:

FeedEditor::changeOrder()
DivisionEditor::changeOrder()
Изменяет порядок следования

Parameters:

string   $direction   - направление

[ Top ]

method createDataDescription [line 347]

DataDescription createDataDescription( )

Если поле OrderColumn присутствует в списке, убираем его



Tags:

access:   protected


Overridden in child classes as:

UserEditor::createDataDescription()
Для методов add и edit добавляется поле роли
RoleEditor::createDataDescription()
Добавляется fake поле user_div_rights в котором находятся данные
ProductEditor::createDataDescription()
Для поля smap_id формируется Дерево разделов Добавляются поля product_price, curr_id
ParamValuesEditor::createDataDescription()
В зависимости от типа продукта выставляется тип поля ppv_value
CurrencyEditor::createDataDescription()
OrderHistory::createDataDescription()
Формат даты создания заказа
ProductParamsEditor::createDataDescription()
Поле pp_type сделано selectом
FeedEditor::createDataDescription()
Для форм поле smap_id віводим как string
DivisionEditor::createDataDescription()
Для setRole создаем свое описание данных Для поля smap_pid формируется Дерево разделов
TemplateEditor::createDataDescription()
LanguageEditor::createDataDescription()
Добавляем паттерн и сообщение об ошибке для описания поля lang_abbr. Поле должно содержать две маленькие латинские буквы

Overrides DBDataSet::createDataDescription() (добавлена обработка ключей)

[ Top ]

method defineParams [line 94]

int defineParams( )

Переопределен параметр configFilename



Tags:

access:   protected


Overridden in child classes as:

ParamValuesEditor::defineParams()
Добавлен параметр идентификатор продукта
OrderDetails::defineParams()
Добавляет параметр идентификатор заказа
ProductParamsEditor::defineParams()
Добавлены: Параметр productTypeID
FeedEditor::defineParams()
Добавляем параметр - имя связанного компонента

Overrides DBDataSet::defineParams() (Добавлен параметр tableName)

[ Top ]

method delete [line 180]

mixed delete( )

Внешний метод удаления



Tags:

see:   Grid::save()
access:   protected


[ Top ]

method deleteData [line 215]

void deleteData( int $id)

Внутренний метод удаления записи



Tags:

access:   protected


Overridden in child classes as:

UserEditor::deleteData()
Переопределенный родительский метод проверяет а не пытаемся ли мы удалить текущего пользователя
RoleEditor::deleteData()
При удалении происходит проверка не удаляется ли дефолтная группа
ProductStatusEditor::deleteData()
Не даем удалить дефолтную запись
DivisionEditor::deleteData()
Не позволяет удалить раздел по умолчанию а также системные разделы
LanguageEditor::deleteData()
Переопределенный родительский метод

Parameters:

int   $id   идентификаотр записи

[ Top ]

method down [line 775]

void down( )

Метод для изменения порядка следования - вниз



Tags:

access:   protected


[ Top ]

method edit [line 135]

void edit( )

Метод выводящий форму редактирования



Tags:

access:   protected


Overridden in child classes as:

ProductStatusEditor::edit()
Дизейблится дефолтное значение
CurrencyEditor::edit()
OrderHistory::edit()
Для метода вывода информации о заказе доавбляем инфу о данных заказа
DivisionEditor::edit()

[ Top ]

method exportCSV [line 909]

void exportCSV( )

Выводит список в файл в формате CSV



Tags:

access:   protected


[ Top ]

method fileLibrary [line 687]

void fileLibrary( )

Выводит компонент: библиотека изображений



Tags:

access:   protected


[ Top ]

method generateError [line 373]

void generateError( string $errorType, string $errorMessage, [mixed $errorCustomInfo = false])

Переписан родительский метод генерации ошибки, поскольку для AJAX такая не подходит



Tags:

access:   protected


Overrides Component::generateError() (Генерирует ошибку и добавляет её в список ошибок компонента.)

Parameters:

string   $errorType   тип ошибки
string   $errorMessage   сообщение об ошибке
mixed   $errorCustomInfo   необязательная дополнительная информация об ошибке

[ Top ]

method generateThumbnail [line 707]

имя generateThumbnail( $sourceFileName $sourceFileName, $destFieldName $destFieldName, $width $width, $height $height, $filter $filter, [$rewrite $rewrite = true])

Метод генерящий thumbnail и сохраняющий его в БД



Tags:

return:   файла - превьюхи
access:   protected


Parameters:

$sourceFileName   $sourceFileName   string имя исходного файла
$destFieldName   $destFieldName   string имя поля
$width   $width   int ширина
$height   $height   int высота
$filter   $filter   array фильтр
$rewrite   $rewrite   boolean переписывать ли если уже существует

[ Top ]

method getDataLanguage [line 241]

int getDataLanguage( )

переписан родительский метод



Tags:

access:   protected


Overrides DBDataSet::getDataLanguage() (Возвращает язык на которм берутся данные)

[ Top ]

method getOrderColumn [line 751]

string getOrderColumn( )

Возвращает имя колонки для пользовательской сортировки



Tags:

access:   protected


[ Top ]

method getRawData [line 261]

void getRawData( [ $baseMethod = self::DEFAULT_ACTION_NAME])

Выводит данные в JSON формате для AJAX



Tags:

access:   protected


Overridden in child classes as:

DivisionEditor::getRawData()

Parameters:

   $baseMethod  

[ Top ]

method getSaver [line 387]

Saver getSaver( )

Возвращает объект Saver Есть смысл вызывать эту функцию только внутри save/saveSata во всех остальных случаях она возвращает false



Tags:

final:  
access:   protected


[ Top ]

method imageManager [line 675]

void imageManager( )

Выводит компонент: менеджер изображений



Tags:

access:   protected


[ Top ]

method loadData [line 516]

mixed loadData( )

Для действия main не выводим данные Для действия save определяем другой формат данных



Tags:

access:   protected


Overridden in child classes as:

UserEditor::loadData()
Для метода редактирования убирается пароль
RoleEditor::loadData()
Переопределенный метод сохранения
ProductEditor::loadData()
Для метода edit добавляем данные о полях из внешней таблицы
ParamValuesEditor::loadData()
Всегда выводятся все присвоенные этому типу параметра значения
UserOrderHistory::loadData()
Для вывода списка - вызываем дедовский метод загрузеи данных, поскольку в родиетльском работает AJAX
OrderDetails::loadData()
Загружает данные
DivisionEditor::loadData()
Добавляет данные об УРЛ
LanguageEditor::loadData()
Переопределенный метод сохранения

Overrides DBDataSet::loadData() (Переопределенный метод загрузки данных)

[ Top ]

method main [line 165]

void main( )

Добавлены переводы для фильтра



Tags:

access:   protected


Overridden in child classes as:

FeedEditor::main()
Убираем все лишнее
DivisionEditor::main()
Добавлен перевод для корня дерева разделов

Overrides Component::main() (Действие по-умолчанию.)

[ Top ]

method prepareCSVString [line 946]

string prepareCSVString( $result $result, $nextValue)

Формирует стоку в формате CSV из массива Callback для array_reduce



Tags:

see:   Grid::exportCSV()
access:   private


Parameters:

$result   $result   результирующая строка
$nextValue   $nextValue   array

[ Top ]

method printData [line 896]

void printData( )

Метод выводящий данные для печати



Tags:

access:   protected


[ Top ]

method save [line 302]

void save( )

Внешний метод сохранения Вызывает внутренний метод сохранения saveData(), который и производит собственно все действия



Tags:

access:   protected


Overridden in child classes as:

DivisionEditor::save()
Переопределенный внешний метод сохранения добавлено значение урла страницы Вызывает внутренний метод сохранения saveData(), который и производит собственно все действия

[ Top ]

method saveData [line 406]

mixed saveData( )

Внутренний метод сохранения



Tags:

access:   protected


Overridden in child classes as:

UserEditor::saveData()
Сохранение данных о ролях пользователя
RoleEditor::saveData()
Сохранение данных о уровне прав на разделы
ProductEditor::saveData()
При сохранении генерим thumbnail
ManufacturersEditor::saveData()
ProductStatusEditor::saveData()
Снимаем признак дефолтного значения
CurrencyEditor::saveData()
ProductParamsEditor::saveData()
Добавлена инфа о типе продукта для вставки
TranslationEditor::saveData()
FeedEditor::saveData()
Выставляем smap_id в текущее значение
DivisionEditor::saveData()
Переопределенный метод сохранения Для того чтобы реализовать уникальность smap_default
LanguageEditor::saveData()
При добавлении нового языка создаем задизейбленые разделы

[ Top ]

method setOrderColumn [line 739]

void setOrderColumn( $columnName)

Устанавливает имя колонки для пользовательской сортировки



Tags:

access:   protected


Parameters:

   $columnName  

[ Top ]

method setSaver [line 395]

void setSaver( Saver $saver)



Tags:

access:   protected


Parameters:

Saver   $saver  

[ Top ]

method up [line 762]

void up( )

Метод для изменения порядка следования - вверх



Tags:

access:   protected


[ Top ]

method upload [line 609]

void upload( )

Метод для заливки файла Вызывается в невидимом фрейме и должен отдать HTML страницу включающаю скрипт



Tags:

final:  
access:   protected


[ Top ]

method uploadVideo [line 556]

void uploadVideo( )



Tags:

access:   protected


[ Top ]


Class Constants

DIR_DOWN =  '>'

[line 30]

Направление вниз


[ Top ]

DIR_UP =  '<'

[line 25]

Направление вверх


[ Top ]

RECORD_PER_PAGE =  30

[line 35]

Количество записей в гриде по умолчанию


[ Top ]


В создании документации нам помог: phpDocumentor