forked from FrozenNode/Laravel-Administrator
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathviewComposers.php
38 lines (32 loc) · 1.42 KB
/
viewComposers.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<?php
use Admin\Libraries\ModelHelper;
use Admin\Libraries\Fields\Field;
use Admin\Libraries\Column;
use Admin\Libraries\Sort;
//View Composers
//admin index view
View::composer('administrator::index', function($view)
{
//get a model instance that we'll use for constructing stuff
$modelInstance = ModelHelper::getModel($view->modelName);
$baseUrl = URL::to_route('admin_index');
$route = parse_url($baseUrl);
$columns = Column::getColumns($modelInstance);
$editFields = Field::getEditFields($modelInstance);
//add the view fields
$view->modelTitle = Config::get('administrator::administrator.models.'.$view->modelName.'.title', $view->modelName);
$view->modelSingle = Config::get('administrator::administrator.models.'.$view->modelName.'.single', $view->modelTitle);
$view->columns = $columns['columns'];
$view->includedColumns = $columns['includedColumns'];
$view->primaryKey = $modelInstance::$key;
$view->sort = Sort::get($modelInstance)->toArray();
$view->rows = ModelHelper::getRows($modelInstance, $view->sort);
$view->editFields = $editFields['arrayFields'];
$view->dataModel = $editFields['dataModel'];
$view->filters = Field::getFilters($modelInstance);
$view->baseUrl = $baseUrl;
$view->route = $route['path'].'/';
$view->expandWidth = ModelHelper::getExpandWidth($modelInstance);
$view->modelInstance = $modelInstance;
$view->model = isset($view->model) ? $view->model : false;
});