Completed
Push — master ( bd2348...f2f7cf )
by Renato
02:33
created

Comment::user()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
eloc 2
nc 1
nop 0
1
<?php
2
/**
3
 * GitScrum v0.1.
4
 *
5
 * @author  Renato Marinho <[email protected]>
6
 * @license http://opensource.org/licenses/GPL-3.0 GPLv3
7
 */
8
9
namespace GitScrum\Models;
10
11
use Illuminate\Database\Eloquent\Model;
12
use Illuminate\Database\Eloquent\SoftDeletes;
13
use Carbon\Carbon;
14
15
class Comment extends Model
16
{
17
    use SoftDeletes;
18
19
    /**
20
     * The database table used by the model.
21
     *
22
     * @var string
23
     */
24
    protected $table = 'comments';
25
26
    /**
27
     * Attributes that should be mass-assignable.
28
     *
29
     * @var array
30
     */
31
    protected $fillable = ['commentable_type', 'commentable_id', 'user_id', 'comment'];
32
33
    /**
34
     * The attributes excluded from the model's JSON form.
35
     *
36
     * @var array
37
     */
38
    protected $hidden = [];
39
40
    /**
41
     * The attributes that should be casted to native types.
42
     *
43
     * @var array
44
     */
45
    protected $casts = [];
46
47
    protected $dates = ['deleted_at'];
48
49
    protected static function boot()
50
    {
51
        parent::boot();
52
    }
53
54
    public function user()
55
    {
56
        return $this->belongsTo(\GitScrum\Models\User::class, 'user_id', 'id');
57
    }
58
59
    public function issue()
60
    {
61
        return $this->belongsTo(\GitScrum\Models\Issue::class, 'commentable_id', 'id');
62
    }
63
64
    public function statuses()
0 ignored issues
show
Documentation introduced by
The return type could not be reliably inferred; please add a @return annotation.

Our type inference engine in quite powerful, but sometimes the code does not provide enough clues to go by. In these cases we request you to add a @return annotation as described here.

Loading history...
65
    {
66
        return $this->morphMany(\GitScrum\Models\Status::class, 'statusesable')
67
            ->orderby('created_at', 'DESC');
68
    }
69
70
    public function getDateforhumansAttribute()
71
    {
72
        return Carbon::createFromFormat('Y-m-d H:i:s', $this->attributes['created_at'])->diffForHumans();
73
    }
74
}
75