public function dashboard() { // METHODE ORM $nbacteurs = Actors::count(); $nbcommentaire = Commentaire::count(); $avgcommentaire = Commentaire::avg('note'); $countnotepresse = Movies::count('note_presse'); $avgnotepresse = Movies::avg('note_presse'); $moviescount = Movies::count('id'); $avgmovies = Movies::avg('duree'); $actor = new Actors(); //methode query builder $avgacteur = $actor->getAvgActors(); $notepresse2 = new Movies(); $countnotepresse2 = $notepresse2->getAvgNoteMovies(); $avgsession = Sessions::count('id'); $session = new Sessions(); $sessionavg = $session->getAvgSession2(); $lastuser = new User(); $last = $lastuser->getLastUsers(); // 15 prochaine (TROISIEME METHODE ) $nextsession = Sessions::where('date_session', "<", Carbon::now())->take(15)->get(); // premiere methode avec 2 jointures : $seance = new Sessions(); $resultseance = $seance->getNextSession(); $allcategories = Categories::all(); $alldirectors = Directors::count('id'); $distrib = new Movies(); $distributeur = $distrib->countDistributeur(); $villeacteur = new Actors(); $villebyacteur = $villeacteur->getVilleByActors(); // exit(dump($villebyacteur )); return view('Main/dashboard', ['nbacteurs' => $nbacteurs, 'nbcommentaire' => $nbcommentaire, 'avgacteur' => $avgacteur->age, 'avgcommentaire' => $avgcommentaire, 'avgnotepresse' => $avgnotepresse, 'countnotepresse' => $countnotepresse, 'moviescount' => $moviescount, 'avgmovies' => $avgmovies, 'countnotepresse2' => $countnotepresse2->note, 'avgsession' => $avgsession, 'sessionavg' => $sessionavg->date, 'last' => $last, 'nextsession' => $nextsession, 'allcategories' => $allcategories, 'alldirectors' => $alldirectors, 'distributeur' => $distributeur, 'villeacteur' => $villebyacteur]); }
/** * action pour enregistrer en bdd les données du formulaire * la classe Request permet de receptionner les données en POST de manière sécurisée */ public function store(Request $request) { $director = new Directors(); foreach ($request->except('_token') as $key => $value) { $director->{$key} = $value; } /** * traitement de l'upload de l'image */ $filename = ""; // si j'ai un fichier image if ($request->hasFile('image')) { //recuperation de l'image $file = $request->file('image'); //recuperation du nom du fichier $filename = $file->getClientOriginalName(); //stockage du chemin vers lequel l'image va etre envoyée $destinationPath = public_path() . '/uploads/directors'; //deplacement de l'image uploadée $file->move($destinationPath, $filename); } //mise à jour de la propriété de l'objet Directors $director->image = asset('/uploads/directors/' . $filename); //mise au format de la date de naissance $date = \DateTime::createFromFormat('d/m/Y', $request->dob); $date->format('Y-m-d H:i:s'); $director->dob = $date; //sauvegarde de l'objet Actors en base $director->save(); //creer un messsage flash de type success Session::flash('success', "Le réalisateur {$director->firstname} {$director->lastname} a bien été créé."); //redirection vers la liste des réalisateurs return Redirect::route('directors_index'); }
/** * Page Read */ public function edit($id) { $categories = Categories::all(); $actors = Actors::all(); $directors = Directors::all(); $movie = Movies::find($id); return view('Movies/edit', ['movie' => $movie, 'categories' => $categories, 'actors' => $actors, 'directors' => $directors]); }
public function store(DirectorsRequest $request) { $directors = new Directors(); $directors->firstname = $request->nom; $directors->lastname = $request->prenom; $directors->dob = $request->dob; $filename = ""; if ($request->hasFile('image')) { //je recupere mon fichier : $file = $request->file('image'); //je recupere le nom du fichier : $filename = $file->getClientOriginalName(); //je stock le chemin veers lequel mon image va etre envoyé $destinationPath = public_path() . '/uploads/directors'; //je deplace mon fichier uploader : $file->move($destinationPath, $filename); } $directors->save(); Session::flash('success', "Le réalisateur {$directors->firstname} a été ajouté"); return Redirect::route('directors_index'); //recupere le film de mon film ac la methode POST //input (name de mon champ) permet de recuperer la donéne titre de maniere safely }
public function dashboard() { //compter les objets Actors $nbacteurs = Actors::count(); //compter les objets Comments $nbcommentaires = Comments::count(); //compter les objets Movies $nbfilms = Movies::count(); //compter les objets Session $nbseances = Sessions::count(); //compter les objets User $nbusers = User::count(); //compter les objets Categories $nbcategories = Categories::count(); //compter les objets Directors $nbdirectors = Directors::count(); //compter les objets Medias $nbmedias = Medias::count(); //moyenne d'age des Actors $actor = new Actors(); $moyenne_acteurs = $actor->getAvgActors(); //moyenne des Comments $comment = new Comments(); $moyenne_commentaires = $comment->getAvgComments(); //moyenne des Movies $movie = new Movies(); $moyenne_presse = $movie->getAvgMovies(); //moyenne des Sessions $session = new Sessions(); $moyenne_seance = $session->getAvgSessions(); //liste des 24 derniers Users $user = new User(); $liste_users = $user->getLastUsers(24); //Pourcentage des films par distributeurs $movies_distributeur = $movie->getMoviesDistributeur(); //liste des 15 prochaines Sessions $session = new Sessions(); $liste_sessions = $session->getNextSessions(15); //pour utilisation de la 3ème méthode //qui retourne un timestamp $moyenne_acteurs = \Carbon\Carbon::createFromTimestamp($moyenne_acteurs); return view("Main/dashboard", ['nbacteurs' => $nbacteurs, 'moyenne_acteurs' => $moyenne_acteurs->diffInYears(), 'nbcommentaires' => $nbcommentaires, 'nbfilms' => $nbfilms, 'moyenne_commentaires' => round($moyenne_commentaires), 'moyenne_presse' => round($moyenne_presse), 'nbseances' => $nbseances, 'moyenne_seance' => round($moyenne_seance->moyenne), 'nbusers' => $nbusers, 'liste_users' => $liste_users, 'liste_sessions' => $liste_sessions, 'nbcategories' => $nbcategories, 'nbdirectors' => $nbdirectors, 'nbmedias' => $nbmedias, 'movies_distributeur' => $movies_distributeur]); }