コード例 #1
0
ファイル: MainController.php プロジェクト: haldaaa/Laracinema
 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]);
 }
コード例 #2
0
 /**
  * Page Acceuil
  */
 public function dashboard()
 {
     // $redirectUrl = $response->links[1]->href;
     $nbacteurs = Actors::count();
     $nbcommentaires = Comments::count();
     $nbmovies = Movies::count();
     $nbseances = Sessions::count();
     $actor = new Actors();
     // Je récpere mon modèle
     $comment = new Comments();
     // Je récpere mon modèle
     $movie = new Movies();
     // Je récpere mon modèle
     $session = new Sessions();
     // Je récpere mon modèle
     $user = new User();
     // Je récpere mon modèle
     $avgacteurs = $actor->getAvgActors();
     $avgnotecommentaire = $comment->getAvgNote();
     $avgnotepresse = $movie->getAvgNotePresse();
     $avghour = $session->getAvgHourDate();
     $seances = $session->getNextSession();
     $users = $user->getLastUsers();
     /*
      $seances = Sessions::where("date_session",  ">", DB::raw("NOW()"))
     ->take(15)->get();
     */
     return view('Main/dashboard', ['avgnotecommentaire' => $avgnotecommentaire->avgnote, 'avgnotepresse' => $avgnotepresse->avgpress, 'avgacteurs' => $avgacteurs->age, 'avghour' => $avghour->avghour, 'nbacteurs' => $nbacteurs, 'nbcommentaires' => $nbcommentaires, 'nbmovies' => $nbmovies, 'nbseances' => $nbseances, 'seances' => $seances, 'users' => $users]);
 }
コード例 #3
0
 public function store(ActorsRequest $request)
 {
     $actors = new Actors();
     $actors->firstname = $request->nom;
     $actors->lastname = $request->prenom;
     $actors->dob = $request->dob;
     $actors->nationality = $request->nationalite;
     $actors->image = $request->image;
     $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/actors';
         //je deplace mon fichier uploader :
         $file->move($destinationPath, $filename);
     }
     $actors->image = asset("uploads/movies/" . $filename);
     $actors->save();
     Session::flash('success', "L\\'acteur {$actors->nom} a été ajouté");
     return Redirect::route('actors_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
 }
コード例 #4
0
ファイル: ApiController.php プロジェクト: haldaaa/Laracinema
 public function actors()
 {
     $tab = new Actors();
     $tab2 = $tab->getVilleByActors();
     $t = [];
     foreach ($tab2 as $test) {
         $t[] = array('name' => $test->ville, 'data' => [(int) $test->nombre]);
     }
     return $t;
 }
コード例 #5
0
 /**
  * Get Actors.
  *
  * @return array
  */
 public function actors()
 {
     $obj = new Actors();
     $resultat = $obj->getNbActorsByCity();
     //exit(dump($resultat));
     $tab = [];
     foreach ($resultat as $actor) {
         $tab[] = ['name' => $actor->city, 'data' => [(int) $actor->nb]];
     }
     return $tab;
 }
コード例 #6
0
 /**
  * retourne les données des acteurs par ville
  */
 public function actorsCity()
 {
     $tab = [];
     $actor = new Actors();
     $actors = $actor->getActorsCity();
     foreach ($actors as $actor) {
         $tab["actors"][] = ['name' => $actor->city, 'data' => [(int) $actor->nb]];
         //typage de la donnée en int
         $tab["name"][] = $actor->city;
     }
     return $tab;
 }
コード例 #7
0
 /**
  * Page Dashboard.
  */
 public function dashboard()
 {
     $nbacteurs = Actors::count();
     $nbcommentaires = Comments::count();
     $nbmovies = Movies::count();
     $nbseances = Sessions::count();
     $manager = new \MongoDB\Driver\Manager('mongodb://localhost:27017');
     $collection = new \MongoDB\Collection($manager, 'laravel', 'videos');
     $videos = collect($collection->find()->toArray())->shuffle();
     $collection = new \MongoDB\Collection($manager, 'laravel', 'stats');
     $youtubeinfo = collect($collection->find(['origin' => 'Youtube'])->toArray())->first();
     $collection = new \MongoDB\Collection($manager, 'laravel', 'stats');
     $tweeterinfo = collect($collection->find(['origin' => 'Twitter', 'type' => 'infos'])->toArray())->first();
     $actor = new Actors();
     // Je récpere mon modèle
     $comment = new Comments();
     // Je récpere mon modèle
     $movie = new Movies();
     // Je récpere mon modèle
     $session = new Sessions();
     // Je récpere mon modèle
     $user = new User();
     // Je récpere mon modèle
     $avgacteurs = $actor->getAvgActors();
     $avgnotecommentaire = $comment->getAvgNote();
     $avgnotepresse = $movie->getAvgNotePresse();
     $avghour = $session->getAvgHourDate();
     $seances = $session->getNextSession();
     $users = $user->getLastUsers();
     return view('Main/dashboard', ['avgnotecommentaire' => $avgnotecommentaire->avgnote, 'avgnotepresse' => $avgnotepresse->avgpress, 'avgacteurs' => $avgacteurs->age, 'videos' => $videos, 'video' => $videos[0], 'youtubeinfo' => $youtubeinfo->data, 'tweeterinfo' => $tweeterinfo['data'][0], 'youtubeinfodateupdated' => $youtubeinfo->created, 'tweeterinfodateupdated' => $tweeterinfo['created_at'], 'avghour' => $avghour->avghour, 'nbacteurs' => $nbacteurs, 'nbcommentaires' => $nbcommentaires, 'nbmovies' => $nbmovies, 'nbseances' => $nbseances, 'seances' => $seances, 'users' => $users]);
 }
コード例 #8
0
 /**
  * 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]);
 }
コード例 #9
0
 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]);
 }
コード例 #10
0
 /**
  * Page Acceuil
  */
 public function dashboard()
 {
     $nbacteurs = Actors::count();
     $nbcommentaires = Comments::count();
     $nbmovies = Movies::count();
     $nbseances = Sessions::count();
     $actor = new Actors();
     // Je récpere mon modèle
     $comment = new Comments();
     // Je récpere mon modèle
     $movie = new Movies();
     // Je récpere mon modèle
     $session = new Sessions();
     // Je récpere mon modèle
     $user = new User();
     // Je récpere mon modèle
     $avgacteurs = $actor->getAvgActors();
     $avgnotecommentaire = $comment->getAvgNote();
     $avgnotepresse = $movie->getAvgNotePresse();
     $avghour = $session->getAvgHourDate();
     $seances = $session->getNextSession();
     $users = $user->getLastUsers();
     return view('Main/dashboard', ['avgnotecommentaire' => $avgnotecommentaire->avgnote, 'avgnotepresse' => $avgnotepresse->avgpress, 'avgacteurs' => $avgacteurs->age, 'avghour' => $avghour->avghour, 'nbacteurs' => $nbacteurs, 'nbcommentaires' => $nbcommentaires, 'nbmovies' => $nbmovies, 'nbseances' => $nbseances, 'seances' => $seances, 'users' => $users]);
 }
コード例 #11
0
 /**
  * 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
  *
  * Avec contraintes et utilisation d'une classe liée à FormRequest en amont:
  * ActorssRequest représente le formulaire
  * et la requête en POST du formulaire
  */
 public function store(ActorsRequest $request)
 {
     //$firstname = $request->input("firstname");
     //$lastname = $request->input("lastname");
     //$biography = $request->input("biography");
     //exit() permet de sortir de l'exécution php
     //dump() permet le débuguage
     //exit(dump($firstname, $lastname, $biography));
     $actor = new Actors();
     foreach ($request->except('_token') as $key => $value) {
         $actor->{$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/actors';
         //deplacement de l'image uploadée
         $file->move($destinationPath, $filename);
     }
     //mise à jour de la propriété de l'objet Actors
     $actor->image = asset('/uploads/actors/' . $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');
     $actor->dob = $date;
     //sauvegarde de l'objet Actors en base
     $actor->save();
     //creer un messsage flash de type success
     Session::flash('success', "L'acteur {$actor->firstname}  {$actor->lastname} a bien été créé.");
     //redirection vers la liste des acteurs
     return Redirect::route('actors_index');
 }
コード例 #12
0
 /**
  * Page Acceuil
  */
 public function index()
 {
     $actors = Actors::all();
     // vue
     return view('Actors/index', ['actors' => $actors]);
 }
コード例 #13
0
 public function getActorsCity()
 {
     return Actors::select('city', DB::raw('COUNT(id) AS nb'))->groupBy('city')->get();
 }