Files
librenms-librenms/app/Models/Service.php
T

73 lines
1.4 KiB
PHP
Raw Normal View History

2018-05-09 08:05:17 -05:00
<?php
namespace App\Models;
2018-12-16 15:18:17 -06:00
use Illuminate\Database\Eloquent\Builder;
2018-05-09 08:05:17 -05:00
class Service extends BaseModel
{
public $timestamps = false;
protected $primaryKey = 'service_id';
// ---- Query Scopes ----
2018-12-16 15:18:17 -06:00
/**
* @param Builder $query
* @return Builder
*/
public function scopeIsUp($query)
{
return $query->where([
['service_ignore', '=', 0],
['service_disabled', '=', 0],
['service_status', '=', 0],
]);
}
/**
* @param Builder $query
* @return Builder
*/
public function scopeIsDown($query)
{
return $query->where([
['service_ignore', '=', 0],
['service_disabled', '=', 0],
['service_status', '=', 2],
]);
}
/**
* @param Builder $query
* @return Builder
*/
public function scopeIsIgnored($query)
{
return $query->where([
['service_ignore', '=', 1],
['service_disabled', '=', 0],
]);
}
/**
* @param Builder $query
* @return Builder
*/
public function scopeIsDisabled($query)
{
return $query->where('service_disabled', 1);
}
2018-05-09 08:05:17 -05:00
public function scopeHasAccess($query, User $user)
{
return $this->hasDeviceAccess($query, $user);
}
// ---- Define Relationships ----
public function device()
{
return $this->belongsTo('App\Models\Device', 'device_id');
}
}