Esempio n. 1
0
 /**
  * Update the specified event in storage.
  *
  * @param  int  $id
  * @return Response
  */
 public function update($id, Request $request)
 {
     $event = Event::findOrFail($id);
     $event->name = $request->name;
     $event->description = $request->description;
     $convert_date = date("Y-m-d", strtotime($request->date_start));
     $event->date_start = $convert_date;
     if ($request->date_end) {
         $convert_date = date("Y-m-d", strtotime($request->date_end));
         $event->date_end = $convert_date;
     }
     if ($request->id != null) {
         $place = Place::where('id', '=', $request->id)->first();
         if (!$place) {
             $place = new Place($request->only(['id', 'place_lat', 'place_lng', 'country', 'state', 'city']));
             $place->save();
         }
         $event_place = EventPlace::where('event_id', '=', $id);
         if (!$event_place) {
             $event_place = new EventPlace();
             $event_place->event_id = $id;
             $event_place->place_id = $place->id;
             $event_place->save();
         }
     }
     if (\Input::hasFile('img')) {
         $file = \Input::file('img');
         $filename = '';
         if ($event->photo == '../../default_photo.jpg') {
             $name = str_random(32);
             while (!User::where('avatar', '=', $name . $file->getClientOriginalExtension())->get()->isEmpty()) {
                 $name = str_random(32);
             }
             $filename = $name . '.' . $file->getClientOriginalExtension();
             $event->photo = $filename;
         } else {
             $filename = $event->photo;
         }
         $file->move(public_path() . '/img/events_large', $filename);
         Image::make(public_path() . '/img/events_large/' . $filename)->fit(1024, 576)->save();
         Image::make(public_path() . '/img/events_large/' . $filename)->resize(300, 169)->save(public_path() . '/img/events/' . $filename);
     }
     $event->save();
     \Session::flash('message', 'Event updated successfully');
     return redirect()->route('events.show', $id);
 }