Версия: 6.x
burger close
Класс Crud
Граф наследования:Crud:
Front AbstractAdmin AbstractModule AbstractController IController Ctrl Ctrl Ctrl Ctrl AbstractDocument BrandCtrl CostCtrl Ctrl CurrencyCtrl InventorizationCtrl InventoryCtrl InventoryMovementCtrl OneClickCtrl PropCtrl UnitCtrl WareHouseCtrl Ctrl AutoTaskRuleCtrl CallHistoryCtrl DealCtrl InteractionCtrl StatusCtrl TaskCtrl Ctrl AuthTokenCtrl LogCtrl Ctrl ResultCtrl BlockedIp ExternalRequestCacheControl FastLinksCtrl License Ctrl Ctrl Ctrl Ctrl PushTokenCtrl ActionTemplatesCtrl ArchiveOrderCtrl BalanceCtrl BonusCardsCtrl CargoCtrl CargoPresetCtrl CdekRegionCtrl DeliveryCtrl DeliveryOrderCtrl DiscountCtrl MarkingTools OrderCtrl OrderShipmentCtrl PaymentCtrl ReceiptsCtrl RegionCtrl ReservationCtrl ReturnsCtrl SavedPaymentMethodsCtrl SubStatusCtrl TaxCtrl TransactionCtrl ZoneCtrl Control CrawlerCtrl SupportCtrl TopicsCtrl BlockCtrl Ctrl CtrlGroup DeleteProfileRequestsCtrl VerificationCtrl

Подробное описание

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

Открытые члены

 __construct (EntityList $api)
 
 actionGetTreeChildsHtml ()
 
 actionTreeMultiEdit ()
 
 actionTreeEdit ()
 
 helperTreeEdit ()
 
 actionTreeClone ()
 
 actionTreeAdd ($primary_key_value=null)
 
 helperTreeAdd ()
 
 actionTreeMove ()
 
 actionTreeDel ()
 
 actionCategoryMultiEdit ()
 
 actionCategoryEdit ()
 
 helperCategoryEdit ()
 
 actionCategoryClone ()
 
 actionCategoryAdd ($primaryKey=null)
 
 helperCategoryAdd ()
 
 actionCategoryMove ()
 
 actionCategoryDel ()
 
 actionIndex ()
 
 actionAdd ($primaryKeyValue=null, $returnOnSuccess=false, $helper=null)
 
 actionEdit ()
 
 actionMove ()
 
 redirectToIndex ()
 
 successSave ()
 
 actionTableOptions ()
 
 getUpdateChunkSize ()
 
 setUpdateChunkSize ($chunk_size)
 
 getTimeout ()
 
 setTimeout ($sec)
 
 helperMultiEdit ()
 
 modifySelectAll ($ids)
 
 buttons ($buttons, $buttons_text=null, $ajax=true)
 
 setHelper ($helper)
 
 getHelper ()
 
 setCrudActions ($actions=null)
 
 exec ($returnAsIs=false)
 
 actionClone ()
 
 actionMarkOneAsViewed ()
 
 actionMarkAllAsViewed ()
 
 getTreeApi ()
 
 getApi ()
 
- Открытые члены унаследованные от Front
 __construct ()
 
 wrapOutput ($bool)
 
 checkAccessRight ()
 
 exec ($returnAsIs=false)
 
- Открытые члены унаследованные от AbstractAdmin
 __construct ($param=[])
 
 checkAccessRight ()
 
- Открытые члены унаследованные от AbstractModule
 __construct ($param=[])
 
 getParam ($key=null, $default=null, $checkempty=false)
 
 setParam ($key, $value=null)
 
 setResource ()
 
 getControllerName ()
 
 addResource ()
 
 init ()
 
 fetch ($tpl, $param_name= 'tpl')
 
 request ($key, $type, $default=null, $strip= '')
 
 getKeyName ($keyname)
 
 comError ($error_text)
 
 checkAccessRight ()
 
 exec ($returnAsIs=false)
 
 getDebugGroup ()
 
 getModTplPath ()
 
 getModuleConfig ()
 
- Открытые члены унаследованные от AbstractController
 __construct ()
 
 isViewCacheExpired (string $cache_id_str, string $template, int $lifetime=null)
 
 wrapHtml ($body, $html_template=null)
 
 getAction ()
 
 exec ($returnAsIs=false)
 
 processResult ($result)
 
 presetAct ($act)
 
 e404 ($reason=null)
 
 redirect ($url=null, $status=302)
 
 refreshPage ()
 
 getUrlName ()
 
- Открытые члены унаследованные от IController
 exec ()
 

Поля данных

 $edit_call_action = 'actionAdd'
 
- Поля данных унаследованные от AbstractAdmin
 $change_site_var = 'site_id_context'
 
 $before_site_id
 
- Поля данных унаследованные от AbstractController
const DEFAULT_ERROR_PAGE_TPL = '%THEME%/exception.tpl'
 
 $view
 
 $url
 
 $app
 
 $router
 

Защищенные члены

 getAllowableOrmClasses ()
 
 getIndexTreeElement ()
 
 getIndexTreeFilterControl ()
 
 helperIndex ()
 
 helperAdd ()
 
 helperEdit ()
 
 setTreeApi (TreeList $tree_api, $tree_entity_type_accusative= '')
 
 getCategoryApi ()
 
 setCategoryApi (EntityList $category_api, $category_entity_type_accusative= '')
 
 setApi (EntityList $api)
 
 runLimitedGroupTask ($callback, $ids, $chunk_size, $offset, $timeout, $session_key=null)
 
- Защищенные члены унаследованные от AbstractAdmin
 changeSiteIdIfNeed ($new_site_id)
 
 setSiteIdByOrmObject ($api, $orm_object=null)
 
 restoreSiteId ()
 

Защищенные данные

 $allow_crud_actions
 
 $sqlMultiUpdate = true
 
 $selectAllVar = 'selectAll'
 
 $edit_url_var = 'edit_url'
 
 $sess_where = '_list'
 
 $multiedit_check_func
 
 $user_post_data = []
 
 $api
 
 $tree_api
 
 $tree_entity_type_accusative = ''
 
 $category_api
 
 $category_entity_type_accusative = ''
 
 $update_chunk_size = BULK_OPERATION_CHUNK_SIZE
 
 $timeout = BULK_OPERATION_TIMEOUT
 
- Защищенные данные унаследованные от Front
 $result
 
 $action_var = 'do'
 
 $wrap_output = true
 
 $wrap_template = '%SYSTEM%/admin/body.tpl'
 
 $block_tpl = '%SYSTEM%/admin/block.tpl'
 
 $block_form_tpl = '%SYSTEM%/admin/crud_form.tpl'
 
- Защищенные данные унаследованные от AbstractModule
 $user
 
 $access_right = 1
 
 $default_params = []
 
 $param = []
 
 $mod_name = ''
 
 $controller_name = ''
 
 $mod_css = '/modules/%MODULE%/view/css/'
 
 $mod_js = '/modules/%MODULE%/view/js/'
 
 $mod_img = '/modules/%MODULE%/view/img/'
 
 $mod_tpl = '/modules/%MODULE%/view/'
 
 $mod_relative_tpl = ''
 
- Защищенные данные унаследованные от AbstractController
 $act = null
 
 $action_var = 'Act'
 
 $result
 

Конструктор(ы)

__construct ( EntityList  $api)

Методы

actionAdd (   $primaryKeyValue = null,
  $returnOnSuccess = false,
  $helper = null 
)

Форма добавления элемента

Аргументы
mixed$primaryKeyValue- id редактируемой записи
boolean$returnOnSuccess- Если true, то будет возвращать === true при успешном сохранении, иначе будет вызов стандартного _successSave метода
CrudCollection$helper- текуй хелпер
Возвращает
|bool
actionCategoryAdd (   $primaryKey = null)

Действие добавления элемента списка категорий

Аргументы
int$primaryKey- id объекта
Возвращает
bool|Standard
actionCategoryClone ( )

Действие клонирования элемента списка категорий

Возвращает
Standard|bool
Исключения
\RS\Controller\ExceptionPageNotFound
actionCategoryDel ( )

Действие удаления элемента дерева

Возвращает
mixed
actionCategoryEdit ( )

Действие редактирования элемента списка категорий

Возвращает
mixed
actionCategoryMove ( )

Действие перемещения элемента списка категорий

Возвращает
mixed
actionCategoryMultiEdit ( )

Действие множественного редактирования элементов списка категорий

Возвращает
Standard
Исключения
\SmartyException
actionClone ( )

Метод для клонирования

Возвращает
bool|
Исключения
\RS\Controller\ExceptionPageNotFound
actionEdit ( )

Редактирование элемента

Возвращает
mixed
actionGetTreeChildsHtml ( )

Возвращает HTML для отображения ветвей дерева

Возвращает
Standard
Исключения
\RS\Db\Exception
\RS\Exception
\SmartyException
actionIndex ( )

Отображение списка

actionMarkAllAsViewed ( )

Метод обеспечивает отметку о прочтении всех объектов, если API объекта это поддерживает

Возвращает
Исключения
\RS\Controller\ExceptionPageNotFound
actionMarkOneAsViewed ( )

Метод обеспечивает отметку о прочтении одного объекта, если API объекта это поддерживает

Возвращает
Исключения
\RS\Controller\ExceptionPageNotFound
actionMove ( )

Сортировка в списке

Возвращает
mixed
actionTableOptions ( )

Возвращает диалог настройки таблицы

Возвращает
mixed
Исключения
\Exception
\SmartyException
actionTreeAdd (   $primary_key_value = null)

Действие добавления элемента дерева

Аргументы
int$primary_key_value- id объекта
Возвращает
|bool
actionTreeClone ( )

Действие клонирования элемента дерева

Возвращает
Standard|bool
Исключения
\RS\Controller\ExceptionPageNotFound
actionTreeDel ( )

Действие удаления элемента дерева

Возвращает
mixed
actionTreeEdit ( )

Действие редактирования элемента дерева

Возвращает
mixed
actionTreeMove ( )

Действие перемещения элемента дерева

Возвращает
mixed
Исключения
\RS\Db\Exception
actionTreeMultiEdit ( )

Действие множественного редактирования элементов дерева

Возвращает
Standard
Исключения
\SmartyException
buttons (   $buttons,
  $buttons_text = null,
  $ajax = true 
)

Возвращает массив для элемента html/toolbar со стандартными кнопками и установленными для контроллеров crud параметрами

Аргументы
array | string$buttons- имя кнопок, которые должны присутствовать: add,delete,multiedit,save,cancel
array$buttons_text- массив с текстами для кнопок. например: 'add' => 'Добавить .....'
bool$ajax- Если true, то кнопкам будут спецпараметры для работы в ajax режиме
Возвращает
Toolbar
exec (   $returnAsIs = false)

Выполняет action(действие) текущего контроллера, возвращает результат действия

Аргументы
boolean$returnAsIs- возвращать как есть. Если true, то метод будет возвращать точно то, что вернет действие, иначе результат будет обработан методом processResult
Возвращает
mixed
Исключения
\RS\Controller\Exception
\RS\Controller\ExceptionPageNotFound
\RS\Event\Exception
\RS\Exception
\SmartyException

Event: controller.exec.Короткое имя контроллера.Имя действия Вызывается перед рендерингом страницы. Обработчики данного события могут изменить содержимое helper'а paramtype mixed - helper

getAllowableOrmClasses ( )
protected

Возвращает список orm объектов, с которыми мложет работать данный контроллер, в виде [сокращённое_наименование => экземпляр_orm]

Возвращает
AbstractObject[]
getApi ( )

Возвращает основное api

Возвращает
EntityList
getCategoryApi ( )
protected

Возвращает api списка категорий

Возвращает
EntityList
getHelper ( )

Возвращает установленный helper

Возвращает
Helper
getIndexTreeElement ( )
protected

Возвращает объект с настройками отображения дерева Перегружается у наследника

Возвращает
Tree
getIndexTreeFilterControl ( )
protected

Возвращает объект с настройками фильтра дерева Перегружается у наследника

Возвращает
Filter
getTimeout ( )

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

Возвращает
int
getTreeApi ( )

Возвращает api древовидного списка

Возвращает
TreeList
getUpdateChunkSize ( )

Возвращает размер одной порции обновления элементов. Деление на порции необходимо, чтобы уложиться в лимит max_execution_time

Возвращает
integer
helperAdd ( )
protected

Подготавливает Helper объекта для добавления

Возвращает
Helper
helperCategoryAdd ( )

Форма добавления элесента списка категорий

Возвращает
mixed
helperCategoryEdit ( )

Форма редактирования элемента списка категорий

Возвращает
CrudCollection
helperEdit ( )
protected

Подготавливает Helper объекта для редактирования

Возвращает
Helper
helperIndex ( )
protected

Вызывается перед действием Index и возвращает коллекцию элементов, которые будут находиться на экране.

helperMultiEdit ( )

Возвращает helper формирования страницы мультиредактирования элементов

Возвращает
CrudCollection
helperTreeAdd ( )

Форма добавления элемента дерева

Возвращает
CrudCollection
helperTreeEdit ( )

Форма редактирования элемента дерева

Возвращает
CrudCollection
modifySelectAll (   $ids)

Если был выделен checkbox "Выделить все на всех страницах", то добываем все id, которые были на странице, иначе возвращаем, входящий параметр

Аргументы
array$ids
Возвращает
array
redirectToIndex ( )

Перенаправляет пользователя на главную страницу контроллера или на страницу указанного в параметре redirect действия

runLimitedGroupTask (   $callback,
  $ids,
  $chunk_size,
  $offset,
  $timeout,
  $session_key = null 
)
protected

Метод позволяет выполнить действие над массой объектов с учетом лимита на время выполнения.

Разбивает список ids на части по chunk_size, и вызывает для каждой части callback. Как только наступит timeout, возвращает следующее смещение offset.

Ошибку, необходимо бросать через внутри callback.

Аргументы
callback$callbackФункция, выполняемая для одного куска ids
array$idsПолный набор id элементов, к которым нужно выполнить callback
integer$chunk_sizeРазмер одного куска ids
integer$offsetКол-во кусков, которые необходимо пропустить
integer$timeoutТаймаут в секундах
Возвращает
bool|integer Возвращает true, в результате успешного исполнения callback для всех ids, либо число - смещение offset, которое нужно передать в следующем вызове данного метода
setApi ( EntityList  $api)
protected

Устанавливает основное api

Аргументы
EntityList$api- объект api
Возвращает
void
setCategoryApi ( EntityList  $category_api,
  $category_entity_type_accusative = '' 
)
protected

Устанавливает api списка категорий

Аргументы
EntityList$category_api- api списка категорий
string$category_entity_type_accusative- тип сущности в винительном падеже
Возвращает
void
setCrudActions (   $actions = null)

Устанавливает какие действия могут быть запущены именно из данного класса.

Аргументы
string | array$actions,$actions,....
Возвращает
void
setHelper (   $helper)

Устанавливает произвольный helper, который потом может использоваться в Action

Аргументы
Helper\CrudCollection$helper- объект crud coolection
Возвращает
Helper
setTimeout (   $sec)

Устанавливает количество секунд, за которое следует выполнять одну итерацию массовых операций

Аргументы
$sec
setTreeApi ( TreeList  $tree_api,
  $tree_entity_type_accusative = '' 
)
protected

Устанавливает api древовидного списка

Аргументы
TreeList$tree_api- api древовидного списка
string$tree_entity_type_accusative- тип сущности в винительном падеже
Возвращает
void
setUpdateChunkSize (   $chunk_size)

Устанавливает размер одной порции обновления элементов

Аргументы
integer$chunk_size
successSave ( )

Успешное сохранение объекта и редирект

Поля

$allow_crud_actions
protected
$api
protected
$category_api
protected
$category_entity_type_accusative = ''
protected
$edit_call_action = 'actionAdd'
$edit_url_var = 'edit_url'
protected
$multiedit_check_func
protected
$selectAllVar = 'selectAll'
protected
$sess_where = '_list'
protected
$sqlMultiUpdate = true
protected
$timeout = BULK_OPERATION_TIMEOUT
protected
$tree_api
protected
$tree_entity_type_accusative = ''
protected
$update_chunk_size = BULK_OPERATION_CHUNK_SIZE
protected
$user_post_data = []
protected