/** * 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]); }
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]); }
/** * Payments */ public function checkout() { $ids = session('likes', []); $total = 0; foreach ($ids as $id) { $movie = Movies::find($id); $total = $total + $movie->price; } $payer = PayPal::Payer(); $payer->setPaymentMethod('paypal'); $amount = PayPal::Amount(); $amount->setCurrency('EUR'); $amount->setTotal($total); $transaction = PayPal::Transaction(); $transaction->setAmount($amount); $transaction->setDescription("Récapitulatif total des " . count($ids) . " films commandés"); $redirectUrls = PayPal::RedirectUrls(); $redirectUrls->setReturnUrl(route('cart_done')); $redirectUrls->setCancelUrl(route('cart_cancel')); $payment = PayPal::Payment(); $payment->setIntent('sale'); $payment->setPayer($payer); $payment->setRedirectUrls($redirectUrls); $payment->setTransactions(array($transaction)); //response de Paypal $response = $payment->create($this->_apiContext); $redirectUrl = $response->links[1]->href; //redirect to Plateform Paypal return Redirect::to($redirectUrl); }
/** * 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]); }
/** * A basic test example. * * @return void */ public function testRemoveInDatabase() { $movie = new \App\Http\Models\Movies(); $movie->title = "Star Wars 3"; $movie->save(); $movie = \App\Http\Models\Movies::where("title", "=", "Star Wars 3")->first(); $movie->delete(); $this->dontSeeInDatabase('movies', ["title" => "Star Wars 3"]); }
/** * A basic test example. * * @return void */ public function testUpdateInDatabase() { $movie = \App\Http\Models\Movies::where('title', '=', 'Star Wars 3')->first(); $this->seeInDatabase('movies', ['title' => 'Star Wars 3']); $movie->title = 'Star Wars 4'; $movie->categories_id = 1; $movie->save(); $this->seeInDatabase('movies', ['title' => 'Star Wars 4']); }
/** * A basic test example. * * @return void */ public function testUpdateInDatabase() { $movie = \App\Http\Models\Movies::where("title", "=", "Star Wars 3")->first(); $this->seeInDatabase('movies', ["title" => "Star Wars 3"]); $movie->title = "Star Wars 4"; $movie->categories_id = 1; $movie->save(); $this->seeInDatabase('movies', ["title" => "Star Wars 4"]); }
/** * A basic test example. * * @return void */ public function testRemoveInDatabase() { $movie = new \App\Http\Models\Movies(); $movie->title = 'Star Wars 3'; $movie->save(); $movie = \App\Http\Models\Movies::where('title', '=', 'Star Wars 3')->first(); $movie->delete(); $this->dontSeeInDatabase('movies', ['title' => 'Star Wars 3']); }
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]); }
/** * 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]); }
/** * Execute the console command. * * @return mixed */ public function handle() { // SQL query $results = Movies::where('date_release', '>=', new Carbon('-1 month'))->where('date_release', '<=', new Carbon('now'))->get(); // je parcours mes films foreach ($results as $movie) { $users = $movie->actors(); foreach ($users as $user) { //send an email Mail::send('Emails/newsletter', [], function ($m) { $m->from('*****@*****.**', 'Florent Boyer'); $m->to("*****@*****.**", "Boyer Julien")->subject('Welcome to newsletter'); }); } } }
/** * Store database */ public function store(MoviesRequest $request) { $dateoutput = \DateTime::createFromFormat('d/m/Y', $request->date_release); $movie = new Movies(); $movie->type = $request->type; $movie->title = $request->title; $movie->synopsis = $request->synopsis; $movie->description = $request->description; $movie->trailer = $request->trailer; $movie->date_release = $dateoutput; $movie->visible = $request->visible; $movie->cover = $request->cover; $movie->languages = $request->lang; $movie->categories_id = $request->categories_id; $movie->note_presse = $request->note_presse; $movie->distributeur = $request->distributeur; $filename = ""; if ($request->hasFile('image')) { $file = $request->file('image'); $filename = $file->getClientOriginalName(); // Récupère le nom original du fichier $destinationPath = public_path() . '/uploads/movies'; // Indique où stocker le fichier $file->move($destinationPath, $filename); // Déplace le fichier } $movie->image = asset("uploads/movies/" . $filename); $movie->save(); $actors = $request->actors; if (isset($actors)) { foreach ($actors as $actor) { DB::table('actors_movies')->insert([['movies_id' => $movie->id, 'actors_id' => $actor]]); } } $directors = $request->directors; if (isset($directors)) { foreach ($directors as $director) { DB::table('directors_movies')->insert([['movies_id' => $movie->id, 'directors_id' => $director]]); } } Session::flash('success', "Le film {$movie->title} a été enregistré"); return Redirect::route('movies_index'); }
<thead> <tr> <th>Id</th> <th>Image</th> <th>Titre</th> <th>Description</th> <th>Montant HT</th> <th>Montant TTC</th> <th>Quantité</th> <th>Action</th> </tr> </thead> <tbody> @forelse(session('likes', []) as $like) <?php $movie = \App\Http\Models\Movies::find($like); ?> <tr> <td>{{ $movie->id }}</td> <td><img src="{{ $movie->image }}" class="img-responsive col-md-5" /></td> <td><a>{{ $movie->title }}</a></td> <td>{{ str_limit(strip_tags($movie->description),250,'...') }}</td> <td><i>{{ $movie->price }} €</i></td> <td><b>{{ $movie->price * 1.19 }}€</b></td> <td>1</td> <td><a href="" class="btn btn-sm btn-danger"><i class="fa fa-times"></i> Supprimer</a> </td> </tr> @empty <tr> <div class="alert alert-danger">
public function getAvgMovies() { return Movies::avg('note_presse'); }
/** * action like enregistré en session * stockage temporel */ public function like($id, $action) { //recuperation du film concerné $movie = Movies::find($id); //recuperation de la variable likes en session //et fixation d'un tableau par defaut //si rien en session likes $likes = session("likes", []); //si l'action est 'like' if ($action == "like") { //j'ajoute le movie dans le tableau des likes //en créant une clé qui a la valeur de l'id du film //pour pouvoir le retrouver $likes[$id] = $movie->id; Session::flash('warning', "Le film {$movie->title} est désormais liké"); } else { //suppression du like dans le tableau unset($likes[$id]); Session::flash('warning', "Le film {$movie->title} est désormais disliké"); } //enregistrement en session du nouveau tableau des likes Session::put("likes", $likes); //redirection return Redirect::route('movies_index'); }
public function like($id, $action) { $movies = Movies::find($id); $likes = session('likes', []); if ($action == "like") { $likes[$id] = $movies->id; } else { unset($likes[$id]); } Session::put("likes", $likes); Session::flash('success', "Le film {$movies->title} a été like"); return Redirect::route('movies_index'); }