123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- <?php
- namespace App\Models;
- use Illuminate\Database\Eloquent\Factories\HasFactory;
- use Illuminate\Database\Eloquent\Model;
- use App\HasSnowflakePrimary;
- use App\Services\HashidService;
- use App\Profile;
- use App\Status;
- class GroupPost extends Model
- {
- use HasSnowflakePrimary, HasFactory;
- /**
- * Indicates if the IDs are auto-incrementing.
- *
- * @var bool
- */
- public $incrementing = false;
- protected $fillable = [
- 'remote_url',
- 'group_id',
- 'profile_id',
- 'type',
- 'caption',
- 'visibility',
- 'is_nsfw'
- ];
- public function mediaPath()
- {
- return 'public/g/_v1/' . $this->group_id . '/' . $this->id;
- }
- public function group()
- {
- return $this->belongsTo(Group::class);
- }
- public function status()
- {
- return $this->belongsTo(Status::class);
- }
- public function profile()
- {
- return $this->belongsTo(Profile::class);
- }
- public function url()
- {
- return '/groups/' . $this->group_id . '/p/' . $this->id;
- }
- }
|