PATH:
home
/
lab2454c
/
omvstudio.com
/
app
/
Http
/
Controllers
/
Admin
<?php namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; use App\Models\Movie; use Illuminate\Http\Request; use Str; use Storage; use App\Models\Category; use App\Models\CategoryMovie; use Validator; class MovieController extends Controller { /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index(Request $request) { $movies = Movie::orderByDesc('created_at')->get(); $featured_movies = ''; $is_featured = ''; if(isset($request->is_featured) && ($request->is_featured =='FEATURED')){ $featured_movies = Movie::where('is_featured',1)->get(); $is_featured = $request->is_featured; } if(isset($request->is_featured) && ($request->is_featured =='ALL')){ $movies = Movie::orderByDesc('created_at')->get(); $is_featured = $request->is_featured; } return view('admin.movie.list',compact('movies','featured_movies','is_featured')); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { $categories = Category::orderBy('created_at','desc')->get(); return view('admin.movie.create',compact('categories')); } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { //dd($request->all()); /*$valid = Validator::make($request->all(),[ 'title' => 'required|string|unique:movies,title', "cover_image" => 'nullable|mimes:png,jpeg,gif|max:3000', 'trailer'=>'nullable|mimes:mp4,webm,ogv,mpg,mpeg,mov,qt', 'video_upload'=>'nullable|mimes:mp4,webm,ogv,mpg,mpeg,mov,qt', 'price'=>'required', 'movie_length'=>'required', 'category_id'=>'required', 'director'=>'required', 'cast'=>'required' ]); if($valid->fails()){ return response() ->json(['status' => 'required', 'required' => $valid->errors()->toArray() ]); }*/ $values = $request->validate([ 'title' => 'required|string|unique:movies,title', "cover_image" => 'nullable|mimes:png,jpeg,gif|max:3000', 'trailer'=>'nullable|mimes:mp4,webm,ogv,mpg,mpeg,mov,qt', 'video_upload'=>'nullable|mimes:mp4,webm,ogv,mpg,mpeg,mov,qt', 'price'=>'required', 'movie_length'=>'required', 'category_id'=>'required', 'director'=>'required', 'cast'=>'required' ]); // dd($request->all()); //dd($request->all(),$request->hasFile('trailer')); $movie = new Movie; $movie->fill($request->except('cover_image','category_id','star_cast','trailer','video_upload','slug')); $movie->slug = Str::slug($request['title']); $star_cast_arr = [ 'director' => $request->director, 'cast' => $request->cast, 'writer' => $request->writer, 'genres' => $request->genres, ]; if ($star_cast_arr['director']) { $star_cast_obj = json_encode($star_cast_arr); $movie->star_cast = $star_cast_obj; } else{ $movie->star_cast = null; } // for cover image if ($request->hasFile('cover_image')) { $cover_image_name = $request->file('cover_image'); $ext = $cover_image_name->extension(); $cover_image_filename = uniqid().'.'.$ext; $cover_image_name->storeAs('public/movies/',$cover_image_filename); $movie->cover_image = $cover_image_filename; $movie->video_type = $ext; } // for video trailer if ($request->hasFile('trailer')) { $trailer_name = $request->file('trailer'); $ext = $trailer_name->extension(); $trailer_filename = uniqid().'.'.$ext; $trailer_name->storeAs('public/movies/trailer/',$trailer_filename); $movie->trailer = $trailer_filename; } if ($request->hasFile('video_upload')) { $video_upload_name = $request->file('video_upload'); $ext = $video_upload_name->extension(); $video_upload_filename = uniqid().'.'.$ext; $video_upload_name->storeAs('public/movies/movie/',$video_upload_filename); $movie->video_upload = $video_upload_filename; $movie->video_type = $ext; } //dd($trailer_upload_filename); if ($request->is_featured) { $movie->is_featured = 1; } $movie->save(); $category = Category::find($request->category_id); $movie->categories()->attach($category); //return response()->json(['status'=>'success','success'=>'Record has been successfully created','url'=> route('movie.edit',$movie->id)]); return redirect()->route('movie.edit',$movie->id)->with('success','Record has successfully created!!'); } /** * Display the specified resource. * * @param \App\Models\Movie $movie * @return \Illuminate\Http\Response */ public function show(Movie $movie) { // } /** * Show the form for editing the specified resource. * * @param \App\Models\Movie $movie * @return \Illuminate\Http\Response */ public function edit(Movie $movie) { $data_category = []; $categories = Category::orderBy('created_at','desc')->get(); $star_cast = json_decode($movie->star_cast); foreach ($movie->categories as $category) { array_push($data_category, $category->id); } return view('admin.movie.edit',compact('movie','categories', 'data_category','star_cast')); } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param \App\Models\Movie $movie * @return \Illuminate\Http\Response */ public function update(Request $request, Movie $movie) { $values = $request->validate([ 'title'=> 'required|string|unique:movies,title,'.$movie->id, 'cover_image' => 'nullable|mimes:png,jpeg,gif|max:3000', 'movie_length'=>'required', 'trailer'=>'nullable|mimes:mp4,webm,ogv,mpg,mpeg,mov,qt', 'video_upload'=>'nullable|mimes:mp4,webm,ogv,mpg,mpeg,mov,qt', ]); /*$valid = Validator::make($request->all(),[ 'title'=> 'required|string|unique:movies,title,'.$movie->id, 'cover_image' => 'nullable|mimes:png,jpeg,gif|max:3000', 'movie_length'=>'required', 'trailer'=>'nullable|mimes:mp4,webm,ogv,mpg,mpeg,mov,qt', 'video_upload'=>'nullable|mimes:mp4,webm,ogv,mpg,mpeg,mov,qt', ]); if($valid->fails()){ return response() ->json(['status' => 'required', 'required' => $valid->errors()->toArray() ]); }*/ if ($request->hasFile('cover_image')) { if (Storage::exists('public/movies/'.$movie->cover_image)) { Storage::delete('public/movies/'.$movie->cover_image); } $cover_image_name = $request->file('cover_image'); $ext = $cover_image_name->extension(); $cover_image_filename = uniqid().'.'.$ext; $cover_image_name->storeAs('public/movies/',$cover_image_filename); $movie->cover_image = $cover_image_filename; } if ($request->hasFile('trailer')) { if (Storage::exists('public/movies/trailer/'.$movie->trailer)) { Storage::delete('public/movies/trailer/'.$movie->trailer); } $trailer_name = $request->file('trailer'); $ext = $trailer_name->extension(); $trailer_filename = uniqid().'.'.$ext; $trailer_name->storeAs('public/movies/trailer/',$trailer_filename); $movie->trailer = $trailer_filename; $movie->video_type = $ext; } if ($request->hasFile('video_upload')) { if (Storage::exists('public/movies/movie/'.$movie->video_upload)) { Storage::delete('public/movies/movie/'.$movie->video_upload); } $video_upload_name = $request->file('video_upload'); $ext = $video_upload_name->extension(); $video_upload_filename = uniqid().'.'.$ext; $video_upload_name->storeAs('public/movies/movie/',$video_upload_filename); $movie->video_upload = $video_upload_filename; $movie->video_type = $ext; } $movie->fill($request->except('cover_image','star_cast','trailer','video_upload')); $movie->slug = Str::slug($request['title']); $star_cast_arr = [ 'director' => $request->director, 'cast' => $request->cast, 'writer' => $request->writer, 'genres' => $request->genres, ]; if ($star_cast_arr['director']) { $star_cast_obj = json_encode($star_cast_arr); $movie->star_cast = $star_cast_obj; } else{ $movie->star_cast = null; } $movie->is_featured = 0; if ($request->is_featured) { $movie->is_featured = 1; } $movie->save(); $category = Category::find($request->category_id); //$movie->categories()->attach($category); $movie->categories()->sync($category); //return response()->json(['status'=>'success','success'=>'Record has been successfully updated!!','url'=> route('movie.edit',$movie->id)]); return redirect()->back()->with('success','Record has successfully updated!!'); } /** * Remove the specified resource from storage. * * @param \App\Models\Movie $movie * @return \Illuminate\Http\Response */ public function destroy(Movie $movie) { $movie->delete(); // $category = Category::find($movie->id); // $movie->categories()->detach($category); if (Storage::exists('public/movies/'.$movie->cover_image)) { Storage::delete('public/movies/'.$movie->cover_image); } return redirect()->route('movie.index')->with('success', 'Record has been deleted succesfully!!'); } public function status($status,$id,Request $request){ $movie = Movie::find($id); $movie->status=$status; $movie->update(); return redirect()->back()->with('success','Status has been updated successfully'); } }
[-] CategoryController.php
[edit]
[-] MovieController_bkp.php
[edit]
[-] PageBannerController.php
[edit]
[+]
..
[-] UserController.php
[edit]
[-] SiteSettingController.php
[edit]
[-] AdminProfileController.php
[edit]
[-] MusicController.php
[edit]
[-] PageController.php
[edit]
[-] HomeConfigWorkController.php
[edit]
[-] MovieController.php
[edit]
[-] ContactController.php
[edit]
[-] FaqController.php
[edit]
[-] LoginController.php
[edit]
[-] MusicManiaController.php
[edit]
[-] ReviewController.php
[edit]
[-] MediaController.php
[edit]
[-] DashboardController.php
[edit]
[-] EntertainController.php
[edit]
[-] MenuController.php
[edit]
[-] SportController.php
[edit]