74 lines
2.0 KiB
PHP
74 lines
2.0 KiB
PHP
|
<?php
|
||
|
|
||
|
namespace App\Models;
|
||
|
|
||
|
use Exception;
|
||
|
use Datatables, DB;
|
||
|
use Illuminate\Http\Request;
|
||
|
use App\Http\Controllers\Controller;
|
||
|
use Illuminate\Support\Facades\Http;
|
||
|
use Yajra\DataTables\DataTables as DT;
|
||
|
|
||
|
use Illuminate\Database\Eloquent\Model;
|
||
|
use Illuminate\Foundation\Auth\User as Authenticatable;
|
||
|
|
||
|
class roleModel extends Model
|
||
|
{
|
||
|
protected $primaryKey = 'id';
|
||
|
protected $table = 'groups_admin';
|
||
|
public $timestamps = false;
|
||
|
|
||
|
public function initData($request,$route)
|
||
|
{
|
||
|
// INIT DB
|
||
|
$data['title'] = 'Role User';
|
||
|
$data['actButton'] = ['edit','active'];
|
||
|
$data['tableHead'] =
|
||
|
array(
|
||
|
["Role User","all","description"],
|
||
|
["Status","all","is_active"],
|
||
|
["Act","all","action"]
|
||
|
);
|
||
|
|
||
|
|
||
|
$data['db'] = $this->table;
|
||
|
$data['db_key'] = $this->primaryKey;
|
||
|
$data['route'] = $route;
|
||
|
|
||
|
$dtable = \DB::select("SELECT * from groups_admin order by id desc");
|
||
|
|
||
|
// LIST DATA TABLE
|
||
|
$data['data_table'] = $dtable;
|
||
|
$cGlobal = new Controller();
|
||
|
// FORM FIELD FOR STORE
|
||
|
$data['set_field'] = [
|
||
|
'name' => $cGlobal->cleanString($request->post('description')),
|
||
|
'description' => $request->post('description'),
|
||
|
'is_active' => $request->post('is_active')
|
||
|
];
|
||
|
|
||
|
// GET DATA FOR EDIT
|
||
|
if ($request->post('id')) {
|
||
|
$data['get_data_edit'] = collect(\DB::select("SELECT * FROM groups_admin where id = ?",[$request->post('id')]))->first();
|
||
|
}
|
||
|
|
||
|
foreach($data['tableHead'] as $v){
|
||
|
$arrHead[] = $v[2];
|
||
|
}
|
||
|
$data['head'] = implode(",",$arrHead);
|
||
|
|
||
|
return $data;
|
||
|
}
|
||
|
|
||
|
public function getDT($data,$init)
|
||
|
{
|
||
|
$dt = DT::of($data);
|
||
|
$dt->editColumn('is_active',function($data) {
|
||
|
return ($data->is_active == true) ? '<span class="label label-success label-inline mr-2">Active</span>':'<span class="label label-danger label-inline mr-2">Non-Active</span>';
|
||
|
});
|
||
|
|
||
|
return $dt;
|
||
|
}
|
||
|
|
||
|
}
|