Files
movies/app/Models/ItemToFetchJobs.php
2026-03-08 14:36:46 +02:00

88 lines
2.3 KiB
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class ItemToFetchJobs extends Model
{
protected $table = 'item_to_fetch_jobs';
public const JOB_ALTERNVATIVE_TITLES = 'AlternativeTitles';
public const JOB_CREDITS = 'Credits';
public const JOB_IMAGES = 'Images';
public const JOB_KEYWORDS = 'Keywords';
public const JOB_RELEASES = 'Releases';
public const JOB_TRANSLATIONS = 'Translations';
public const JOB_SIMILAR = 'Similar';
public const JOB_RECOMMNDATION = 'Recommendations';
public const JOB_REVIEWS = 'Reviews';
public const JOB_LISTS = 'Lists';
public const JOB_CHANGES = 'Changes';
public const JOB_VIDEOS = 'Videos';
public const JOB_WATCH_PROVIDERS = 'WatchProviders';
public const JOB_EXTERNAL_IDS = 'ExternalIds';
public const JOB_DETAILS = 'Details';
public const JOB_CONTENT_RATINGS = 'ContentRatings';
public const JOBS = [
self::JOB_ALTERNVATIVE_TITLES,
self::JOB_CREDITS,
self::JOB_IMAGES,
self::JOB_KEYWORDS,
self::JOB_RELEASES,
self::JOB_TRANSLATIONS,
self::JOB_SIMILAR,
self::JOB_RECOMMNDATION,
self::JOB_REVIEWS,
self::JOB_LISTS,
self::JOB_VIDEOS,
self::JOB_WATCH_PROVIDERS,
self::JOB_EXTERNAL_IDS,
self::JOB_CONTENT_RATINGS,
self::JOB_DETAILS
];
public const MOVIE_JOBS = [
self::JOB_ALTERNVATIVE_TITLES,
self::JOB_CREDITS,
self::JOB_IMAGES,
self::JOB_KEYWORDS,
self::JOB_RELEASES,
self::JOB_TRANSLATIONS,
self::JOB_SIMILAR,
self::JOB_RECOMMNDATION,
self::JOB_REVIEWS,
self::JOB_LISTS,
self::JOB_VIDEOS,
self::JOB_WATCH_PROVIDERS,
self::JOB_EXTERNAL_IDS,
];
public const SHOW_JOBS = [
self::JOB_ALTERNVATIVE_TITLES,
self::JOB_CREDITS,
self::JOB_IMAGES,
self::JOB_KEYWORDS,
self::JOB_TRANSLATIONS,
self::JOB_SIMILAR,
self::JOB_RECOMMNDATION,
self::JOB_VIDEOS,
self::JOB_WATCH_PROVIDERS,
self::JOB_EXTERNAL_IDS,
self::JOB_CONTENT_RATINGS,
];
protected $fillable = [
'tmdb_id',
'item_id',
'type',
'jobs',
];
// Ensure jobs is not auto-cast to JSON
protected $casts = [
'jobs' => 'string',
];
}