with([ 'paniers'=> $paniers, ]); } /** * Ajout de média à un panier */ public function addMediasBasket(Request $request) { $response = false; $mediasToAdd = $request->input('medias'); $panierId = $request->input('panier_id'); $panier = Panier::where('id', $panierId)->with('medias')->first(); if($panier){ $result = $panier->medias()->syncWithoutDetaching($mediasToAdd); $medias = Media::whereIn('id', $result['attached'])->get(); $response = $medias; } return json_encode($response); } /** * Suppression de média à un panier */ public function removeMediasBasket(Request $request) { $response = false; $mediaToRemove = $request->input('media_id'); $panierId = $request->input('panier_id'); $panier = Panier::where('id', $panierId)->with('medias')->first(); if($panier && $mediaToRemove != ""){ $panier->medias()->detach($mediaToRemove); $response = true; } return json_encode($response); } /** * Ajoute un panier */ public function addBasket(Request $request) { $response = false; $title = $request->input('title'); if($title == ""){ $title = "Panier du ".date("d/m/Y"); } $panier = new Panier(); $panier->owner = Auth::user()->id; $panier->libelle = $title; if($panier->save()){ $response = $panier; } return json_encode($response); } /** * supprimer un panier * */ public function removeBasket(Request $request) { $response = false; $user_id = Auth::user()->id; $basket_id = $request->input('basket_id'); $panier = Panier::where('id', $basket_id); if($panier){ $panier->delete(); $response = true; } return json_encode($response); } /** * Charge un panier */ public function loadBasket(Request $request) { $response = false; $panierId = $request->input('panier_id'); $panier = Panier::where('id', $panierId)->with('medias')->first(); if($panier){ $response = $panier; } return json_encode($response); } }