get('site')->site_id)->get(); return view('campagne.index')->with('campagnes', $campagnes); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { return view('campagne.create'); } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $campagne = new Campagne(); $campagne->camp_name = $request->input('camp_name'); $campagne->camp_type = $request->input('camp_type'); $campagne->camp_published = $request->input('camp_published'); if (null !== $request->input('camp_limitedPrinting')) { $campagne->camp_limitedPrinting = $request->input('camp_limitedPrinting'); } $site = Site::findOrFail(session()->get('site')->id)->first(); if ($site->campagnes()->save($campagne)) { $campId = str_pad(strval($campagne->camp_id), 5, '00000', STR_PAD_LEFT); Storage::makeDirectory('/landings/' . $campId); } return redirect(route('campagne.edit', ['campagne' => $campagne])); } /** * Show the form for editing the specified resource. * * @param \App\Campagne $campagne * @return \Illuminate\Http\Response */ public function edit(Campagne $campagne) { $site = Site::findOrFail(session()->get('site')->id)->first(); $couponsLinked = $campagne->coupons()->get(); $campid = $campagne->camp_id; $couponsNotLinked = Coupon::whereDoesntHave('campagnes', function($q) use ($campid){ $q->where('campagne_id', $campid); })->where('coupon_siteId', session()->get('site')->id)->get(); return view('campagne.edit', ['campagne' => $campagne, 'coupons' => $couponsNotLinked, 'couponsLinked' => $couponsLinked]); } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param \App\Campagne $campagne * @return \Illuminate\Http\Response */ public function update(Request $request, Campagne $campagne) { if ($campagne->update($request->all())) { session()->flash('update_ok', 'La campagne a bien été modifiée'); } else { session()->flash('update_nok', 'Erreur lors de l\'enregistrement'); } return view('campagne.edit')->with('campagne', $campagne); } /** * Remove the specified resource from storage. * * @param \App\Campagne $campagne * @return \Illuminate\Http\Response */ public function destroy(Campagne $campagne) { if ($campagne->delete()) { return redirect(route('campagne.index')); } else { session()->flash('delete_nok', 'Erreur lors de la suppression'); return view('campagne.edit')->with('campagne', $campagne); } } /** * @param \Illuminate\Http\Request $request * * @return array */ public function saveNotification(Request $request) { $notification = new Notification(); $notification->notif_email = $request->input('notif_email'); $notification->notif_campId = $request->input('notif_campId'); $notification->save(); return redirect()->back(); } /** * @param \App\Notification $notification * * @return array */ public function deleteNotification($id) { $notification = Notification::find($id); if ($notification->delete()) { return redirect()->back(); } else { session()->flash('delete_nok', 'Erreur lors de la suppression'); return redirect()->back(); } } /** * @param \App\Coupon $coupon * * @return array */ public function deleteCoupon($id) { $coupon = Coupon::find($id); if ($notification->delete()) { return redirect()->back(); } else { session()->flash('delete_nok', 'Erreur lors de la suppression'); return redirect()->back(); } } }