@@ -3,7 +3,7 @@ discard block |
||
| 3 | 3 | 'id' => $dataManager->managerId, |
| 4 | 4 | 'class' => 'dataManager', |
| 5 | 5 | 'data-params' => $params, |
| 6 | - 'data-modelname' => ($model ? get_class($model) : $dataManager->modelName) . ($model && $model->pk() ? ':' . $model->pk() : ''), |
|
| 6 | + 'data-modelname' => ($model ? get_class($model) : $dataManager->modelName).($model && $model->pk() ? ':'.$model->pk() : ''), |
|
| 7 | 7 | 'data-managername' => $dataManager->managerName, |
| 8 | 8 | 'data-cols' => $dataManager->cols, |
| 9 | 9 | 'data-options' => array_merge($dataManager->managerOptions, ['actions'=>$dataManager->getActions()]) |
@@ -22,7 +22,7 @@ discard block |
||
| 22 | 22 | 'style' => '' |
| 23 | 23 | ]; |
| 24 | 24 | if (!empty($dataManager->managerOptions['categorys'])) { |
| 25 | - $mainCol['style'].='margin-left:260px;'; |
|
| 25 | + $mainCol['style'] .= 'margin-left:260px;'; |
|
| 26 | 26 | echo '<div class ="pull-left dataManager-categorys" style = "width:250px;">'; |
| 27 | 27 | $this->widget('Ui\DataManager/categorys', compact('dataManager')); |
| 28 | 28 | echo '</div>'; |
@@ -1,9 +1,9 @@ discard block |
||
| 1 | 1 | <?php |
| 2 | 2 | $aditionalInputs = []; |
| 3 | 3 | $showedInput = false; |
| 4 | -if(!empty($options['createBtn'])){ |
|
| 4 | +if (!empty($options['createBtn'])) { |
|
| 5 | 5 | $optionsHtml = '<option disabled onclick="'.$options['createBtn']['onclick'].'">'.$options['createBtn']['text'].'</option>'; |
| 6 | -}else { |
|
| 6 | +} else { |
|
| 7 | 7 | $optionsHtml = ''; |
| 8 | 8 | } |
| 9 | 9 | |
@@ -17,7 +17,7 @@ discard block |
||
| 17 | 17 | } |
| 18 | 18 | if ( |
| 19 | 19 | (!is_array($primaryValue) && ($key === $primaryValue || (isset($form->userDataTree[$name]) && $form->userDataTree[$name] === $key))) || |
| 20 | - (is_array($primaryValue) && (in_array($key,$primaryValue) || (isset($form->userDataTree[$name]) && in_array($key,$form->userDataTree[$name])))) |
|
| 20 | + (is_array($primaryValue) && (in_array($key, $primaryValue) || (isset($form->userDataTree[$name]) && in_array($key, $form->userDataTree[$name])))) |
|
| 21 | 21 | ) { |
| 22 | 22 | $selected = ' selected="selected"'; |
| 23 | 23 | } |
@@ -27,7 +27,7 @@ discard block |
||
| 27 | 27 | $showedInput = count($aditionalInputs) - 1; |
| 28 | 28 | $aditionValue = !empty($options['aditionalValue']) ? $options['aditionalValue'] : ''; |
| 29 | 29 | } |
| 30 | - $optionsHtml .= "<option data-aditionalInput='" . ( count($aditionalInputs) - 1) . "' value ='{$key}'{$selected}>{$value['text']}</option>"; |
|
| 30 | + $optionsHtml .= "<option data-aditionalInput='".(count($aditionalInputs) - 1)."' value ='{$key}'{$selected}>{$value['text']}</option>"; |
|
| 31 | 31 | } else { |
| 32 | 32 | $optionsHtml .= "<option value ='{$key}'{$selected}>{$value}</option>"; |
| 33 | 33 | } |
@@ -44,14 +44,14 @@ discard block |
||
| 44 | 44 | |
| 45 | 45 | if ($key !== $showedInput) { |
| 46 | 46 | $input['options']['disabled'] = true; |
| 47 | - $input['options']['class'] = !empty($input['options']['class']) ? $input['options']['class'] . ' hidden' : 'hidden'; |
|
| 47 | + $input['options']['class'] = !empty($input['options']['class']) ? $input['options']['class'].' hidden' : 'hidden'; |
|
| 48 | 48 | } else { |
| 49 | 49 | $input['options']['value'] = empty($input['options']['value']) ? $aditionValue : $input['options']['value']; |
| 50 | 50 | } |
| 51 | 51 | if ($input['type'] == 'select') { |
| 52 | 52 | $input['options']['values'] = \Ui\ActiveForm::getOptionsList($input); |
| 53 | 53 | } |
| 54 | - $form->input($input['type'], empty($input['name']) ? $name . '[aditional]' : $input['name'], false, $input['options']); |
|
| 54 | + $form->input($input['type'], empty($input['name']) ? $name.'[aditional]' : $input['name'], false, $input['options']); |
|
| 55 | 55 | } |
| 56 | 56 | ?> |
| 57 | 57 | <?= empty($options['noContainer']) ? '</div>' : ''; ?> |
| 58 | 58 | \ No newline at end of file |
@@ -40,7 +40,7 @@ |
||
| 40 | 40 | if (!empty($modelName)) { |
| 41 | 41 | $inputOptions['createBtn'] = [ |
| 42 | 42 | 'text' => 'Создать элемент', |
| 43 | - 'onclick' => 'inji.Ui.forms.popUp(\'' . addslashes($modelName) . '\',{},function(elem){' |
|
| 43 | + 'onclick' => 'inji.Ui.forms.popUp(\''.addslashes($modelName).'\',{},function(elem){' |
|
| 44 | 44 | . 'return function(data,modal){inji.Ui.forms.submitAjax($(elem).closest(\'form\')[0], {notSave: true});}}(this))' |
| 45 | 45 | ]; |
| 46 | 46 | } |
@@ -58,7 +58,7 @@ discard block |
||
| 58 | 58 | $this->name = $this->managerOptions['name']; |
| 59 | 59 | } |
| 60 | 60 | |
| 61 | - $this->managerId = str_replace('\\', '_', 'dataManager_' . $this->modelName . '_' . $this->managerName . '_' . \Tools::randomString()); |
|
| 61 | + $this->managerId = str_replace('\\', '_', 'dataManager_'.$this->modelName.'_'.$this->managerName.'_'.\Tools::randomString()); |
|
| 62 | 62 | } |
| 63 | 63 | |
| 64 | 64 | /** |
@@ -102,13 +102,13 @@ discard block |
||
| 102 | 102 | if (!empty($this->managerOptions['filters'])) { |
| 103 | 103 | $buttons[] = [ |
| 104 | 104 | 'text' => 'Фильтры', |
| 105 | - 'onclick' => ' var modal = $("#' . $this->managerId . '_filters"); |
|
| 105 | + 'onclick' => ' var modal = $("#'.$this->managerId.'_filters"); |
|
| 106 | 106 | modal.modal("show");', |
| 107 | 107 | ]; |
| 108 | 108 | } |
| 109 | 109 | $buttons[] = [ |
| 110 | 110 | 'text' => 'Добавить элемент', |
| 111 | - 'onclick' => 'inji.Ui.dataManagers.get(this).newItem("' . str_replace('\\', '\\\\', $modelName) . '",' . json_encode($formParams) . ');', |
|
| 111 | + 'onclick' => 'inji.Ui.dataManagers.get(this).newItem("'.str_replace('\\', '\\\\', $modelName).'",'.json_encode($formParams).');', |
|
| 112 | 112 | ]; |
| 113 | 113 | |
| 114 | 114 | return $buttons; |
@@ -138,7 +138,7 @@ discard block |
||
| 138 | 138 | 'className' => $action |
| 139 | 139 | ]; |
| 140 | 140 | } |
| 141 | - $return[$key]['className'] = strpos($return[$key]['className'], '\\') === false && class_exists('Ui\DataManager\Action\\' . $return[$key]['className']) ? 'Ui\DataManager\Action\\' . $return[$key]['className'] : $return[$key]['className']; |
|
| 141 | + $return[$key]['className'] = strpos($return[$key]['className'], '\\') === false && class_exists('Ui\DataManager\Action\\'.$return[$key]['className']) ? 'Ui\DataManager\Action\\'.$return[$key]['className'] : $return[$key]['className']; |
|
| 142 | 142 | if (!class_exists($return[$key]['className']) || ($onlyGroupActions && !$return[$key]['className']::$groupAction)) { |
| 143 | 143 | unset($return[$key]); |
| 144 | 144 | } |
@@ -170,7 +170,7 @@ discard block |
||
| 170 | 170 | <?php |
| 171 | 171 | foreach ($actions as $action => $actionParams) { |
| 172 | 172 | if (class_exists($actionParams['className']) && $actionParams['className']::$groupAction) { |
| 173 | - echo "<li><a role='button' href ='#' onclick='inji.Ui.dataManagers.get(this).groupAction(\"" . str_replace('\\', '\\\\', $action) . "\");return false;'>{$actionParams['className']::$name}</a></li>"; |
|
| 173 | + echo "<li><a role='button' href ='#' onclick='inji.Ui.dataManagers.get(this).groupAction(\"".str_replace('\\', '\\\\', $action)."\");return false;'>{$actionParams['className']::$name}</a></li>"; |
|
| 174 | 174 | } |
| 175 | 175 | } |
| 176 | 176 | ?> |
@@ -221,7 +221,7 @@ discard block |
||
| 221 | 221 | return []; |
| 222 | 222 | } |
| 223 | 223 | if (!$this->checkAccess()) { |
| 224 | - $this->drawError('you not have access to "' . $this->modelName . '" manager with name: "' . $this->managerName . '"'); |
|
| 224 | + $this->drawError('you not have access to "'.$this->modelName.'" manager with name: "'.$this->managerName.'"'); |
|
| 225 | 225 | return []; |
| 226 | 226 | } |
| 227 | 227 | $modelName = $this->modelName; |
@@ -237,7 +237,7 @@ discard block |
||
| 237 | 237 | $queryParams['start'] = $this->page * $this->limit - $this->limit; |
| 238 | 238 | } |
| 239 | 239 | if (!empty($params['categoryPath']) && $modelName::$categoryModel) { |
| 240 | - $queryParams['where'][] = ['tree_path', $params['categoryPath'] . '%', 'LIKE']; |
|
| 240 | + $queryParams['where'][] = ['tree_path', $params['categoryPath'].'%', 'LIKE']; |
|
| 241 | 241 | } |
| 242 | 242 | if (!empty($params['appType'])) { |
| 243 | 243 | $queryParams['appType'] = $params['appType']; |
@@ -296,7 +296,7 @@ discard block |
||
| 296 | 296 | if (!empty($params['filters'][$col]['max'])) { |
| 297 | 297 | if ($colInfo['colParams']['type'] == 'dateTime' && !strpos($params['filters'][$col]['max'], ' ')) { |
| 298 | 298 | |
| 299 | - $date = $params['filters'][$col]['max'] . ' 23:59:59'; |
|
| 299 | + $date = $params['filters'][$col]['max'].' 23:59:59'; |
|
| 300 | 300 | } else { |
| 301 | 301 | $date = $params['filters'][$col]['max']; |
| 302 | 302 | } |
@@ -323,16 +323,16 @@ discard block |
||
| 323 | 323 | } |
| 324 | 324 | switch ($params['filters'][$col]['compareType']) { |
| 325 | 325 | case 'contains': |
| 326 | - $queryParams['where'][] = [$col, '%' . $params['filters'][$col]['value'] . '%', 'LIKE']; |
|
| 326 | + $queryParams['where'][] = [$col, '%'.$params['filters'][$col]['value'].'%', 'LIKE']; |
|
| 327 | 327 | break; |
| 328 | 328 | case 'equals': |
| 329 | 329 | $queryParams['where'][] = [$col, $params['filters'][$col]['value']]; |
| 330 | 330 | break; |
| 331 | 331 | case 'starts_with': |
| 332 | - $queryParams['where'][] = [$col, $params['filters'][$col]['value'] . '%', 'LIKE']; |
|
| 332 | + $queryParams['where'][] = [$col, $params['filters'][$col]['value'].'%', 'LIKE']; |
|
| 333 | 333 | break; |
| 334 | 334 | case 'ends_with': |
| 335 | - $queryParams['where'][] = [$col, '%' . $params['filters'][$col]['value'], 'LIKE']; |
|
| 335 | + $queryParams['where'][] = [$col, '%'.$params['filters'][$col]['value'], 'LIKE']; |
|
| 336 | 336 | break; |
| 337 | 337 | } |
| 338 | 338 | break; |
@@ -371,7 +371,7 @@ discard block |
||
| 371 | 371 | $item = $relation['relModel']::get([[$item->index(), $item->id], [$model->index(), $model->id]]); |
| 372 | 372 | } |
| 373 | 373 | $row = []; |
| 374 | - $row[] = '<input type ="checkbox" name = "pk[]" value =' . $item->pk() . '>'; |
|
| 374 | + $row[] = '<input type ="checkbox" name = "pk[]" value ='.$item->pk().'>'; |
|
| 375 | 375 | $row[] = $item->pk(); |
| 376 | 376 | foreach ($this->managerOptions['cols'] as $key => $colName) { |
| 377 | 377 | if (!empty($params['download'])) { |
@@ -417,16 +417,16 @@ discard block |
||
| 417 | 417 | $managerParams = ['relation' => $modelName::$cols[$colName]['relation']]; |
| 418 | 418 | $count = $item->{$modelName::$cols[$colName]['relation']}(array_merge($params, ['count' => 1])); |
| 419 | 419 | $count = $count ? $count : 'Нет'; |
| 420 | - return "<a class = 'btn btn-xs btn-primary' onclick = 'inji.Ui.dataManagers.popUp(\"" . str_replace('\\', '\\\\', $modelName) . ":" . $item->pk() . "\"," . json_encode(array_merge($params, $managerParams)) . ")'>{$count}</a>"; |
|
| 420 | + return "<a class = 'btn btn-xs btn-primary' onclick = 'inji.Ui.dataManagers.popUp(\"".str_replace('\\', '\\\\', $modelName).":".$item->pk()."\",".json_encode(array_merge($params, $managerParams)).")'>{$count}</a>"; |
|
| 421 | 421 | case 'many': |
| 422 | 422 | $managerParams = ['relation' => $modelName::$cols[$colName]['relation']]; |
| 423 | 423 | $count = $item->{$modelName::$cols[$colName]['relation']}(array_merge($params, ['count' => 1])); |
| 424 | 424 | $count = $count ? $count : 'Нет'; |
| 425 | - return "<a class = 'btn btn-xs btn-primary' onclick = 'inji.Ui.dataManagers.popUp(\"" . str_replace('\\', '\\\\', $modelName) . ":" . $item->pk() . "\"," . json_encode(array_merge($params, $managerParams)) . ")'>{$count}</a>"; |
|
| 425 | + return "<a class = 'btn btn-xs btn-primary' onclick = 'inji.Ui.dataManagers.popUp(\"".str_replace('\\', '\\\\', $modelName).":".$item->pk()."\",".json_encode(array_merge($params, $managerParams)).")'>{$count}</a>"; |
|
| 426 | 426 | default : |
| 427 | 427 | if ($item->{$modelName::$cols[$colName]['relation']}) { |
| 428 | 428 | if (\App::$cur->name == 'admin') { |
| 429 | - $href = "<a href ='/admin/" . str_replace('\\', '/view/', $relations[$modelName::$cols[$colName]['relation']]['model']) . "/" . $item->{$modelName::$cols[$colName]['relation']}->pk() . "'>"; |
|
| 429 | + $href = "<a href ='/admin/".str_replace('\\', '/view/', $relations[$modelName::$cols[$colName]['relation']]['model'])."/".$item->{$modelName::$cols[$colName]['relation']}->pk()."'>"; |
|
| 430 | 430 | if (!empty($modelName::$cols[$colName]['showCol'])) { |
| 431 | 431 | $href .= $item->{$modelName::$cols[$colName]['relation']}->{$modelName::$cols[$colName]['showCol']}; |
| 432 | 432 | } else { |
@@ -456,18 +456,18 @@ discard block |
||
| 456 | 456 | case 'many': |
| 457 | 457 | $managerParams = ['relation' => $modelName::$cols[$colName]['relation']]; |
| 458 | 458 | $count = $item->{$modelName::$cols[$colName]['relation']}(array_merge($params, ['count' => 1])); |
| 459 | - return "<a class = 'btn btn-xs btn-primary' onclick = 'inji.Ui.dataManagers.popUp(\"" . str_replace('\\', '\\\\', $modelName) . ":" . $item->pk() . "\"," . json_encode(array_merge($params, $managerParams)) . ")'>{$count} " . \Tools::getNumEnding($count, ['Элемент', 'Элемента', 'Элементов']) . "</a>"; |
|
| 459 | + return "<a class = 'btn btn-xs btn-primary' onclick = 'inji.Ui.dataManagers.popUp(\"".str_replace('\\', '\\\\', $modelName).":".$item->pk()."\",".json_encode(array_merge($params, $managerParams)).")'>{$count} ".\Tools::getNumEnding($count, ['Элемент', 'Элемента', 'Элементов'])."</a>"; |
|
| 460 | 460 | default: |
| 461 | 461 | return $item->$colName; |
| 462 | 462 | } |
| 463 | 463 | } elseif (!empty($modelName::$cols[$colName]['type'])) { |
| 464 | - if (\App::$cur->name == 'admin' && $originalCol == 'name' || ( $dataManager && !empty($dataManager->managerOptions['colToView']) && $dataManager->managerOptions['colToView'] == $originalCol)) { |
|
| 464 | + if (\App::$cur->name == 'admin' && $originalCol == 'name' || ($dataManager && !empty($dataManager->managerOptions['colToView']) && $dataManager->managerOptions['colToView'] == $originalCol)) { |
|
| 465 | 465 | $formName = $dataManager && !empty($dataManager->managerOptions['editForm']) ? $dataManager->managerOptions['editForm'] : 'manager'; |
| 466 | - $redirectUrl = !empty($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '/admin/' . str_replace('\\', '/', get_class($originalItem)); |
|
| 467 | - return "<a href ='/admin/" . str_replace('\\', '/view/', get_class($originalItem)) . "/{$originalItem->id}?formName={$formName}&redirectUrl={$redirectUrl}'>{$item->$colName}</a>"; |
|
| 466 | + $redirectUrl = !empty($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '/admin/'.str_replace('\\', '/', get_class($originalItem)); |
|
| 467 | + return "<a href ='/admin/".str_replace('\\', '/view/', get_class($originalItem))."/{$originalItem->id}?formName={$formName}&redirectUrl={$redirectUrl}'>{$item->$colName}</a>"; |
|
| 468 | 468 | } elseif (\App::$cur->name == 'admin' && $colName == 'name') { |
| 469 | - $redirectUrl = !empty($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '/admin/' . str_replace('\\', '/', get_class($originalItem)); |
|
| 470 | - return "<a href ='/admin/" . str_replace('\\', '/view/', get_class($item)) . "/{$item->id}?redirectUrl={$redirectUrl}'>{$item->$colName}</a>"; |
|
| 469 | + $redirectUrl = !empty($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '/admin/'.str_replace('\\', '/', get_class($originalItem)); |
|
| 470 | + return "<a href ='/admin/".str_replace('\\', '/view/', get_class($item))."/{$item->id}?redirectUrl={$redirectUrl}'>{$item->$colName}</a>"; |
|
| 471 | 471 | } else { |
| 472 | 472 | return \Model::resloveTypeValue($item, $colName); |
| 473 | 473 | } |
@@ -502,7 +502,7 @@ discard block |
||
| 502 | 502 | return []; |
| 503 | 503 | } |
| 504 | 504 | if (!$this->checkAccess()) { |
| 505 | - $this->drawError('you not have access to "' . $this->modelName . '" manager with name: "' . $this->managerName . '"'); |
|
| 505 | + $this->drawError('you not have access to "'.$this->modelName.'" manager with name: "'.$this->managerName.'"'); |
|
| 506 | 506 | return []; |
| 507 | 507 | } |
| 508 | 508 | if (!empty($params['limit'])) { |
@@ -516,7 +516,7 @@ discard block |
||
| 516 | 516 | ]; |
| 517 | 517 | $modelName = $this->modelName; |
| 518 | 518 | if (!empty($params['categoryPath']) && $modelName::$categoryModel) { |
| 519 | - $queryParams['where'][] = ['tree_path', $params['categoryPath'] . '%', 'LIKE']; |
|
| 519 | + $queryParams['where'][] = ['tree_path', $params['categoryPath'].'%', 'LIKE']; |
|
| 520 | 520 | } |
| 521 | 521 | if (!empty($this->managerOptions['userGroupFilter'][\Users\User::$cur->group_id]['getRows'])) { |
| 522 | 522 | foreach ($this->managerOptions['userGroupFilter'][\Users\User::$cur->group_id]['getRows'] as $colName => $colOptions) { |
@@ -570,7 +570,7 @@ discard block |
||
| 570 | 570 | if (!empty($params['filters'][$col]['max'])) { |
| 571 | 571 | if ($colInfo['colParams']['type'] == 'dateTime' && !strpos($params['filters'][$col]['max'], ' ')) { |
| 572 | 572 | |
| 573 | - $date = $params['filters'][$col]['max'] . ' 23:59:59'; |
|
| 573 | + $date = $params['filters'][$col]['max'].' 23:59:59'; |
|
| 574 | 574 | } else { |
| 575 | 575 | $date = $params['filters'][$col]['max']; |
| 576 | 576 | } |
@@ -597,16 +597,16 @@ discard block |
||
| 597 | 597 | } |
| 598 | 598 | switch ($params['filters'][$col]['compareType']) { |
| 599 | 599 | case 'contains': |
| 600 | - $queryParams['where'][] = [$col, '%' . $params['filters'][$col]['value'] . '%', 'LIKE']; |
|
| 600 | + $queryParams['where'][] = [$col, '%'.$params['filters'][$col]['value'].'%', 'LIKE']; |
|
| 601 | 601 | break; |
| 602 | 602 | case 'equals': |
| 603 | 603 | $queryParams['where'][] = [$col, $params['filters'][$col]['value']]; |
| 604 | 604 | break; |
| 605 | 605 | case 'starts_with': |
| 606 | - $queryParams['where'][] = [$col, $params['filters'][$col]['value'] . '%', 'LIKE']; |
|
| 606 | + $queryParams['where'][] = [$col, $params['filters'][$col]['value'].'%', 'LIKE']; |
|
| 607 | 607 | break; |
| 608 | 608 | case 'ends_with': |
| 609 | - $queryParams['where'][] = [$col, '%' . $params['filters'][$col]['value'], 'LIKE']; |
|
| 609 | + $queryParams['where'][] = [$col, '%'.$params['filters'][$col]['value'], 'LIKE']; |
|
| 610 | 610 | break; |
| 611 | 611 | } |
| 612 | 612 | break; |
@@ -640,7 +640,7 @@ discard block |
||
| 640 | 640 | $tableCols[] = !empty($colOptions['label']) ? $colOptions['label'] : $colName; |
| 641 | 641 | } |
| 642 | 642 | $tableCols[] = ''; |
| 643 | - $this->table->class .=' datamanagertable'; |
|
| 643 | + $this->table->class .= ' datamanagertable'; |
|
| 644 | 644 | $this->table->setCols($tableCols); |
| 645 | 645 | } |
| 646 | 646 | |
@@ -663,12 +663,12 @@ discard block |
||
| 663 | 663 | return false; |
| 664 | 664 | } |
| 665 | 665 | if (!$this->checkAccess()) { |
| 666 | - $this->drawError('you not have access to "' . $this->modelName . '" manager with name: "' . $this->managerName . '"'); |
|
| 666 | + $this->drawError('you not have access to "'.$this->modelName.'" manager with name: "'.$this->managerName.'"'); |
|
| 667 | 667 | return []; |
| 668 | 668 | } |
| 669 | 669 | $tree = new Tree(); |
| 670 | 670 | $tree->ul($this->managerOptions['categorys']['model'], 0, function($category) { |
| 671 | - $path = $category->tree_path . ($category->pk() ? $category->pk() . "/" : ''); |
|
| 671 | + $path = $category->tree_path.($category->pk() ? $category->pk()."/" : ''); |
|
| 672 | 672 | $cleanClassName = str_replace('\\', '\\\\', get_class($category)); |
| 673 | 673 | return "<a href='#' onclick='inji.Ui.dataManagers.get(this).switchCategory(this);return false;' data-index='{$category->index()}' data-path ='{$path}' data-id='{$category->pk()}' data-model='{$this->managerOptions['categorys']['model']}'> {$category->name}</a> |
| 674 | 674 | |