Exemplo n.º 1
0
 public function getDatatable()
 {
     $statuslabels = Statuslabel::select(array('id', 'name', 'deployable', 'pending', 'archived', 'color', 'show_in_nav'))->whereNull('deleted_at');
     if (Input::has('search')) {
         $statuslabels = $statuslabels->TextSearch(e(Input::get('search')));
     }
     if (Input::has('offset')) {
         $offset = e(Input::get('offset'));
     } else {
         $offset = 0;
     }
     if (Input::has('limit')) {
         $limit = e(Input::get('limit'));
     } else {
         $limit = 50;
     }
     $allowed_columns = ['id', 'name'];
     $order = Input::get('order') === 'asc' ? 'asc' : 'desc';
     $sort = in_array(Input::get('sort'), $allowed_columns) ? Input::get('sort') : 'created_at';
     $statuslabels->orderBy($sort, $order);
     $statuslabelsCount = $statuslabels->count();
     $statuslabels = $statuslabels->skip($offset)->take($limit)->get();
     $rows = array();
     foreach ($statuslabels as $statuslabel) {
         if ($statuslabel->deployable == 1) {
             $label_type = trans('admin/statuslabels/table.deployable');
         } elseif ($statuslabel->pending == 1) {
             $label_type = trans('admin/statuslabels/table.pending');
         } elseif ($statuslabel->archived == 1) {
             $label_type = trans('admin/statuslabels/table.archived');
         } else {
             $label_type = trans('admin/statuslabels/table.undeployable');
         }
         $actions = '<a href="' . route('update/statuslabel', $statuslabel->id) . '" class="btn btn-warning btn-sm" style="margin-right:5px;"><i class="fa fa-pencil icon-white"></i></a><a data-html="false" class="btn delete-asset btn-danger btn-sm" data-toggle="modal" href="' . route('delete/statuslabel', $statuslabel->id) . '" data-content="' . trans('admin/statuslabels/message.delete.confirm') . '" data-title="' . trans('general.delete') . ' ' . htmlspecialchars($statuslabel->name) . '?" onClick="return false;"><i class="fa fa-trash icon-white"></i></a>';
         if ($statuslabel->color != '') {
             $color = '<div class="pull-left" style="margin-right: 5px; height: 20px; width: 20px; background-color: ' . e($statuslabel->color) . '"></div>' . e($statuslabel->color);
         } else {
             $color = '';
         }
         $rows[] = array('id' => e($statuslabel->id), 'type' => e($label_type), 'name' => e($statuslabel->name), 'color' => $color, 'show_in_nav' => $statuslabel->show_in_nav == '1' ? trans('general.yes') : trans('general.no'), 'actions' => $actions);
     }
     $data = array('total' => $statuslabelsCount, 'rows' => $rows);
     return $data;
 }