<?php
namespace QxCMS\Modules\Client\Models\Settings\Roles;
use Illuminate\Database\Eloquent\Model;
class Role extends Model
{
protected $connection = 'client';
protected $table = 'roles';
public $module_id = 2;
public $developer_id = 1;
public $administrator_id = 2;
public $editor_id = 3;
public $field_officer_id = 4;
/*
* The attributes that are mass assignable.
*
* @var array
*/
protected $guarded = [];
protected $appends = ['hashid'];
/*
* Model Accessors
*/
public function getHashidAttribute()
{
return hashid($this->id);
}
public function permissions()
{
return $this->hasMany('QxCMS\Modules\Client\Models\Settings\Roles\Permission');
}
public function users()
{
return $this->hasMany('QxCMS\Modules\Likod\Models\Clients\User');
}
/*
* Model Custom Functions
*/
public function role_access($role_id = 1)
{
if ($role_id == 1) {
return $this->all();
} else {
return $this->where('id', '<>', 1)->get();
}
}
public function getDefaultIDs()
{
return $defaultIDs = array(
$this->developer_id,
$this->administrator_id,
$this->editor_id,
$this->field_officer_id
);
}
public function hiddenRoleIds()
{
return [
$this->developer_id
];
}
}