<?php

namespace Futage\Show\Repositories\Presenter;

use League\Fractal\TransformerAbstract;
use Hashids;

class EpisodeTransformer extends TransformerAbstract
{
    public function transform(\Futage\Show\Models\Episode $episode)
    {
        return [
            'id'                => $episode->getRouteKey(),
            'key'               => [
                'public'    => $episode->getPublicKey(),
                'route'     => $episode->getRouteKey(),
            ], 
            'id'                => $episode->id,
            'show_id'           => $episode->show_id,
            'episode_no'        => $episode->episode_no,
            'name'              => $episode->name,
            'description'       => $episode->description,
            'video_link'        => $episode->video_link,
            'slug'              => $episode->slug,
            'status'            => $episode->status,
            'created_at'        => $episode->created_at,
            'updated_at'        => $episode->updated_at,
            'deleted_at'        => $episode->deleted_at,
            'url'               => [
                'public'    => trans_url('show/'.$episode->getPublicKey()),
                'user'      => guard_url('show/episode/'.$episode->getRouteKey()),
            ], 
            'status'            => trans('app.'.$episode->status),
            'created_at'        => format_date($episode->created_at),
            'updated_at'        => format_date($episode->updated_at),
        ];
    }
}