1
0
Fork 0
forked from mirror/pixelfed
pixelfed/app/Story.php

55 lines
938 B
PHP
Raw Normal View History

2018-11-03 21:45:44 -06:00
<?php
namespace App;
2019-01-12 13:14:22 -07:00
use Auth;
2018-11-03 21:45:44 -06:00
use Illuminate\Database\Eloquent\Model;
2019-11-10 17:25:28 -07:00
use Pixelfed\Snowflake\HasSnowflakePrimary;
2018-11-03 21:45:44 -06:00
class Story extends Model
{
2019-11-10 17:25:28 -07:00
use HasSnowflakePrimary;
/**
* Indicates if the IDs are auto-incrementing.
*
* @var bool
*/
public $incrementing = false;
/**
* The attributes that should be mutated to dates.
*
* @var array
*/
protected $dates = ['published_at', 'expires_at'];
2019-01-12 12:38:09 -07:00
protected $visible = ['id'];
2019-01-12 13:14:22 -07:00
2019-01-12 12:38:09 -07:00
public function profile()
{
return $this->belongsTo(Profile::class);
}
2019-01-12 00:42:26 -07:00
public function items()
{
return $this->hasMany(StoryItem::class);
}
public function reactions()
{
return $this->hasMany(StoryReaction::class);
}
public function views()
{
return $this->hasMany(StoryView::class);
}
2019-01-12 13:14:22 -07:00
public function seen($pid = false)
{
$id = $pid ?? Auth::user()->profile->id;
return $this->views()->whereProfileId($id)->exists();
}
2018-11-03 21:45:44 -06:00
}