@extends('layouts.admin') @section('title', 'Edit Movie') @section('content') @php $selectedGenres = old('genres', isset($movie) && method_exists($movie, 'genres') ? $movie->genres->pluck('id')->toArray() : []); $posterUrl = !empty($movie->poster) ? asset(ltrim($movie->poster, '/')) : null; $backdropUrl = !empty($movie->backdrop) ? asset(ltrim($movie->backdrop, '/')) : null; $isExternalSource = false; if (old('source_type')) { $isExternalSource = old('source_type') === 'external'; } else { $currentVideoUrl = $movie->video_url ?? ''; $currentVideoFile = $movie->video_file ?? ''; $isExternalSource = !empty($currentVideoUrl) && empty($currentVideoFile); } $currentSourceType = $isExternalSource ? 'external' : 'server'; $currentVideoPath = old('video_file', $movie->video_file ?? ''); $currentVideoUrl = old('external_video_url', $isExternalSource ? ($movie->video_url ?? '') : ''); @endphp
@csrf @method('PUT')

Edit Movie

Update movie details, artwork, visibility, and video source settings.

Back to Movies
@if ($errors->any())
Update form has some problems:
    @foreach ($errors->all() as $error)
  • {{ $error }}
  • @endforeach
@endif

Basic Details

Main title information and SEO-friendly content data.
Movie Metadata
Leave as-is unless you want to change the public movie URL slug.
Languages are loaded from Admin → Languages.

Media Assets

Update artwork and change server file or external video link.
Poster + Backdrop + Video Source

Artwork Update

You can keep current images or upload new ones to replace them.

Leave empty to keep current poster.
Leave empty to keep current backdrop.
@if($posterUrl) Poster @else Current poster preview @endif
Poster Preview
@if($backdropUrl) Backdrop @else Current backdrop preview @endif
Backdrop Preview
This list is loaded from public/uploads/movies @if(empty($videoFiles) || count($videoFiles) === 0)
  • No video files found yet.
  • Upload movie files into playmax247.com/public/uploads/movies
  • Refresh this page after upload.
@endif
Current Saved File:
{{ $movie->video_file ?? 'No saved file path' }}

Current Playback URL:
@if(!empty($movie->video_url)) {{ $movie->video_url }} @else No playback URL saved @endif
No new file selected yet.
Choose a file from the server list to replace the current one.
Paste Vimeo player link, Bunny URL, Cloudflare Stream URL, direct MP4, or M3U8 link.
Use the Trailer URL field on the server section. This side is only for layout balance.
Current External URL:
@if($currentSourceType === 'external' && !empty($movie->video_url)) {{ $movie->video_url }} @else No external URL currently saved @endif
External Source Tips:
Vimeo example: https://player.vimeo.com/video/123456789
Direct MP4 example: https://cdn.example.com/movie.mp4
HLS example: https://cdn.example.com/movie.m3u8

Catalog & Discovery

Control where and how this title appears on your platform.
Visibility
Featured Title Show on homepage hero or top shelf.
Trending Push into trending or spotlight row.
Members Only Require subscription before playback.
Published Make title publicly visible immediately.
@forelse(($genres ?? []) as $genre) @empty
No genres found Create genres first in admin before assigning categories.
@endforelse
Comma-separated tags for search and filtering.

Current Status

Quick snapshot of this movie record.
Status {{ $movie->status ?? 'draft' }}
Published {{ !empty($movie->is_published) ? 'Yes' : 'No' }}
Premium {{ !empty($movie->is_premium) ? 'Yes' : 'No' }}

Movie Record

ID: {{ $movie->id }}
Title: {{ $movie->title ?? 'Untitled' }}

Current Slug

{{ !empty($movie->slug) ? 'Slug: ' . $movie->slug : 'Slug will appear here as you type the movie title.' }}

Current Source Type

{{ $currentSourceType === 'external' ? 'External Link' : 'Server File' }}

Folder

Server files are loaded from playmax247.com/public/uploads/movies.

Notes

Optional production metadata.

Quick Actions

Useful links for this title.
Back to Movies @if(!empty($movie->video_url)) Open Current Video URL @endif @if(!empty($movie->slug)) Open Public Title Page @endif
@endsection