phpvms/app/Models/Award.php
2018-04-01 14:32:01 -05:00

53 lines
1.1 KiB
PHP
Executable File

<?php
namespace App\Models;
use App\Interfaces\Model;
/**
* The Award model
* @property mixed id
* @property mixed ref_model
* @property mixed|null ref_model_params
* @package Award\Models
*/
class Award extends Model
{
public $table = 'awards';
protected $fillable = [
'name',
'description',
'image_url',
'ref_model',
'ref_model_params',
];
public static $rules = [
'name' => 'required',
'description' => 'nullable',
'image_url' => 'nullable',
'ref_model' => 'required',
'ref_model_params' => 'nullable'
];
/**
* Get the referring object
* @param Award|null $award
* @param User|null $user
* @return null
*/
public function getReference(Award $award = null, User $user = null)
{
if (!$this->ref_model) {
return null;
}
try {
return new $this->ref_model($award, $user);
} catch (\Exception $e) {
return null;
}
}
}