Repository URL to install this package:
|
Version:
3.3.1 ▾
|
<?php
namespace Evsmash\Widgets;
use Evsmash\Core\Database\Eloquent;
use Evsmash\Core\Database\SoftDeleting;
use Evsmash\Core\Simpy\Params;
use Evsmash\Widgets\Schemas\Ratings as Schema;
class Rating extends Eloquent {
use SoftDeleting;
// validate
static public function validate() {
return Schema::validate();
}
// belongs to user
public function user() {
return $this->belongsTo('Evsmash\Core\Users\User');
}
// params
public function scopeParams($query, $params = false) {
$scope = new Params();
$scope->scope($query, $params);
$scope->order(['created_at' => 'desc']);
return $scope->query;
}
// summary
static public function summary($rel) {
// get
$ratings = Rating::where('rel', $rel)->pluck('rate');
// init
$output = new \stdClass;
// avarage
if($ratings->count()) {
$output->avarage = round($ratings->avg(), 1);
$output->total = $ratings->count();
} else {
$output->avarage = '-';
$output->total = 0;
}
// output
return $output;
}
}