public function rechercher($id_campagne, Request $request) { $campagne = Campagne::find($id_campagne); $contenu = $request::get('recherche'); if ($campagne != null) { return view('campagne', ['campagne' => $campagne, 'images' => Image::where('id_campagne', $id_campagne, false)->where(function ($query) use($contenu) { $query->where('titre_image', 'LIKE', '%' . $contenu . '%')->orWhere('description_image', 'LIKE', '%' . $contenu . '%'); })->where('validation_image', 1, false)->orderByRaw('RAND()')->get(), 'elementRecherche' => $contenu]); } else { return Response("Campagne non trouvée"); } }
public function __construct($id_campagne) { $this->campagne = Campagne::find($id_campagne); // Si la campagne existe, on continue... if (!is_null($this->campagne)) { $this->C = $this->campagne->getNombreImages(); $this->U = $this->campagne->choix_popularite; // On remplit le tableau des identifiants d'images $this->images = array(); $this->campagne->retrieveImages()->each(function ($item, $key) { array_push($this->images, $item->id_image); }); // On répartit les préférences des images entre elles $this->nombreVotants(); $this->repartirPreferences(); } }
public function postForm(ImageRequest $request, $id_campagne) { // Création de l'instance Image (entité Eloquent ORM créée pour le projet) $Image = new Image(); $Image->id_utilisateur = Auth::user()->getId(); $Image->id_campagne = $id_campagne; $Image->titre_image = $request->input('titre_image'); $Image->description_image = $request->input('description_image'); $Image->validation_image = !Campagne::find($id_campagne)->aValider(); // Création de l'objet $photo à partir de ce qu'on récupère de 'image' (Request) $photo = Input::file('image'); $filename = time() . '_' . uniqid() . '.' . $photo->getClientOriginalExtension(); $path = public_path('uploads\\' . $filename); $photo = CLImage::make($photo->getRealPath()); $exif = $photo->exif() != null && array_key_exists('GPSLongitude', $photo->exif()) ? $photo->exif() : null; $photo->save($path); // Sauvegarde de l'image et calcul de la géolocalisation si disponible $Image->geo_image = $this->get_location($exif); $Image->lien_image = $filename; $Image->save(); // Appel de la vue de redirection return Redirect('/campagne/' . $id_campagne); // return View::make('campagne', array('campagne'=> Campagne::find($id_campagne), 'images' => Image::all()->where('id_campagne', $id_campagne, false), 'message' => 'L\'image a été mise en ligne !')); }
public function adminCampagnesEnCours() { if ($this->est_adm()) { return Campagne::where('date_fin_vote', '>=', DB::raw('NOW()'))->get(); } }