172 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			172 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			PHP
		
	
	
		
			Executable File
		
	
	
	
	
| <?php namespace App\Http\Controllers;
 | |
| 
 | |
| use App\Referent;
 | |
| use App\ConfigJeu;
 | |
| use App\Auteur;
 | |
| use App\Domaine;
 | |
| use App\Oeuvre;
 | |
| use App\Matiere;
 | |
| use App\Technique;
 | |
| use Input;
 | |
| use Request;
 | |
| use Response;
 | |
| use Session;
 | |
| use Config;
 | |
| use File;
 | |
| use Auth;
 | |
| 
 | |
| class ReferentController extends Controller {
 | |
| 
 | |
| 
 | |
| 	/**
 | |
| 	 * Create a new controller instance.
 | |
| 	 *
 | |
| 	 * @return void
 | |
| 	 */
 | |
| 	public function __construct()
 | |
| 	{
 | |
| 		//
 | |
| 	}
 | |
| 
 | |
| 	/**
 | |
| 	 * Show the application dashboard to the user.
 | |
| 	 *
 | |
| 	 * @return Response
 | |
| 	 */
 | |
| 	public function index()
 | |
| 	{
 | |
| 
 | |
|         $me = Auth::user();
 | |
|         $listeoeuvres = $me ->configjeu;
 | |
| 		return view('backend/ref_home', ['me' => $me, 'meslistes' => $listeoeuvres]);
 | |
| 	}
 | |
| 
 | |
| 	/**
 | |
| 	 * updateUser an user informations in database.
 | |
| 	 *
 | |
| 	 * 
 | |
| 	 */
 | |
| 	public function update()
 | |
| 	{
 | |
| 		$idUser = Input::get('idUser');
 | |
| 		$user = Referent::find($idUser);
 | |
|         $user->prenom = Input::get('prenom');
 | |
|         $user->email = Input::get('email');
 | |
|         $user->etablissement = Input::get('etablissement');
 | |
|         $user->nom = Input::get('nom');
 | |
|         
 | |
| 
 | |
| 		if (Request::hasFile('file'))
 | |
| 		{
 | |
|             $extension = Input::file('file')->getClientOriginalExtension();
 | |
|             $allowed = ['jpg', 'png', 'jpeg'];
 | |
|             if(in_array(strtolower($extension), $allowed)) {
 | |
|                 
 | |
|                 Request::file('file')->move("imgs/avatar/",  $idUser . "." . $extension);
 | |
|                 $user->image = "imgs/avatar/" . $idUser . "." . $extension;
 | |
|                 $user->save();
 | |
| 
 | |
|                 return redirect('/referent')->with('message_update', 'Referent mis à jour avec succès');
 | |
|             } else
 | |
|                 $user->save();
 | |
|                 return redirect('/referent')->with('message_update', 'Votre image n\'est pas valide.');
 | |
|         } else {
 | |
|                 $user->save();
 | |
|                 return redirect('/referent')->with('message_update', 'Referent mis à jour avec succès');   
 | |
|             
 | |
|         }
 | |
|         
 | |
|         
 | |
| 
 | |
| 	}
 | |
| 
 | |
| 
 | |
| 	public function ajouterListeOeuvre() 
 | |
| 	{
 | |
| 		$newConfig = new ConfigJeu();
 | |
| 		$newConfig->referent_id = Auth::user()->id;
 | |
| 		$newConfig->nom = Input::get('nomListe');
 | |
|         $newConfig->parametres = json_encode(['p1' => 2, 'p2' => 3, 'p3' => 4, 'pt' => '3',
 | |
|                                              'm1' => 2, 'm2' => 3, 'm3' => 4, 'mt' => '3']);
 | |
| 		$newConfig->save();
 | |
| 
 | |
| 		return redirect('/referent');
 | |
| 
 | |
| 	}
 | |
| 
 | |
| 	public function supprimerListeOeuvre($idListe) 
 | |
| 	{
 | |
| 		$ListeOeuvre = Auth::user()->configjeu->find($idListe)->delete();
 | |
| 		return redirect('/referent');		
 | |
| 	}
 | |
|     
 | |
| 	public function modifierListeOeuvre($idListe) 
 | |
| 	{
 | |
|         $me = Auth::user();
 | |
|         $listeoeuvres = Oeuvre::simplePaginate(1);
 | |
|         $meslistes = $me->configjeu;
 | |
|         $mesoeuvres = $me->configjeu->find($idListe);
 | |
|         
 | |
|         return view('backend/ref_home',['meslistes' => $meslistes, 'mesoeuvres' => $mesoeuvres, 'me' => $me, 'listeoeuvres' => $listeoeuvres,
 | |
|                                     'auteurs' => Auteur::all(), 'domaines' => Domaine::all(), 'matieres' => Matiere::all(), 'techniques' => Technique::all(), 'paramjeu' => json_decode($mesoeuvres->parametres)
 | |
|                                        ]);
 | |
| 	}
 | |
| 
 | |
|     public function changerParamListe() {
 | |
|         
 | |
|         Auth::user()->configjeu()->update(array('actifMemo' => 0));
 | |
|         Auth::user()->configjeu()->update(array('actifPuzzle' => 0));
 | |
|         
 | |
|         if(Input::get('memo') != 0)
 | |
|         ConfigJeu::where('referent_id', '=', Auth::user()->id)->find(Input::get('memo'))->update(array('actifMemo' => 1));
 | |
|         if(Input::get('puzzle') != 0)
 | |
|         ConfigJeu::where('referent_id', '=', Auth::user()->id)->find(Input::get('puzzle'))->update(array('actifPuzzle' => 1));
 | |
|         
 | |
|         Session::flash('message', 'Vous avez modifié les listes associées aux jeux avec succès.');
 | |
|         return redirect()->back();
 | |
|     }
 | |
|     
 | |
|     public function ajouterOeuvresDansListe($id) {
 | |
|         //todo verifier user
 | |
|         $cj = ConfigJeu::find($id);
 | |
|         $cj->oeuvres()->attach(Input::get('toadd'));
 | |
|             
 | |
|         Session::flash('message', 'Vous avez ajouter des oeuvres dans votre liste.');
 | |
|         return redirect()->back();
 | |
|     }
 | |
|     
 | |
|     public function supprimerOeuvresDansListe($id) {
 | |
|         //todo verifier user
 | |
| 
 | |
|         $cj = ConfigJeu::find($id);
 | |
|         if(count(Input::get('todel')) >= 1)
 | |
|             $cj->oeuvres()->detach(Input::get('todel'));
 | |
|         
 | |
|         Session::flash('erreur', 'Vous avez supprimer des oeuvres de votre liste.');
 | |
|         return redirect()->back();
 | |
|     }
 | |
|     
 | |
|     
 | |
|     public function changeParamListe($id) { 
 | |
|         $me = Auth::user();
 | |
|         $configjeu = $me->configjeu->find($id);
 | |
|         $paramsToSave = Input::all();
 | |
|         unset($paramsToSave['_token']);
 | |
|         $valid = true;
 | |
|         foreach($paramsToSave as $p) {
 | |
|             if(!(is_numeric($p) && $p > 0 && $p<= 10)) $valid = false;
 | |
|         }
 | |
| 
 | |
|         
 | |
|         if(!$valid)
 | |
|             Session::flash('erreur', 'Les paramètres du jeu sont incorrect. Rééessayez.');
 | |
|         else { 
 | |
|             Session::flash('message', 'Vos modifications ont été prise en compte.');
 | |
|             $configjeu->parametres = json_encode($paramsToSave);
 | |
|             $configjeu->save();
 | |
|         }
 | |
|         return redirect()->back();
 | |
|     }
 | |
|     
 | |
| }
 |