/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request\PresentationRequest $request * @return \Illuminate\Http\Response */ public function store(PresentationRequest $request) { if (!current_conference()) { flash()->error("You can't create a presentation yet!"); return redirect(route('user.show')); } $fields = $request->all(); $students = $fields['student_name']; if (empty($students[0])) { flash()->error("At least one student is required!"); return back()->withInput(); } unset($fields['student_name']); $user = Auth::user(); $presentation = new Presentation($fields); $presentation->owner = $user->id; $presentation->conference_id = get_current_conference_id(); if ($user->is_admin()) { $presentation->status = "A"; } else { $presentation->status = "S"; } if ($presentation->save()) { $this->save_students($students, $presentation->id); flash()->success("Presentation saved."); } else { flash()->error("Presentation couldn't be saved"); } return redirect()->route('user.show'); }
protected function insertPresentation(Request $request, $id) { $file = Input::file('file'); $array['name'] = Input::get('name'); $array['content'] = Input::get('content'); $array['file'] = $file->getClientOriginalName(); $validator = Validator::make($array, ['name' => 'required', 'content' => 'required', 'file' => 'required|unique:presentations']); if ($validator->fails()) { return Response::json('validator failed', 400); } else { $presentation = new Presentation(); $presentation->name = $array['name']; $presentation->content = $array['content']; $presentation->file = $array['file']; $presentation->Project_FK = $id; $file->move(base_path() . '/public/presentations/', $array['file']); $presentation->save(); return Response::json($presentation, 200); } }
/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $event = new Event(); $event->uuid = Uuid::uuid1()->toString(); // Time-based version1 string (for now) $event->title = $request->title; $event->intro = $request->intro; $event->description = $request->description; $event->vortex_url = $request->vortex_url; $event->facebook_id = $request->facebook_id; $event->start_date = new Carbon($request->start_date); $event->location = $request->location; if (!$request->youtube_playlist_id) { $event->youtube_playlist_id = null; } else { $youtubePlaylist = YoutubePlaylist::find($request->youtube_playlist_id); $event->youtube_playlist_id = $youtubePlaylist->id; } $event->save(); // Organizers: TODO $presentation = new Presentation(); $presentation->event_id = $event->id; $presentation->start_time = $request->p1_start_time; $presentation->end_time = $request->p1_end_time; // ... $presentation->save(); if ($request->has('p1_person1')) { // TODO } if ($request->has('p1_youtube_id')) { $recording = Recording::where('youtube_id', '=', $request->p1_youtube_id)->first(); if (is_null($recording)) { die("TODO: Video not found, redirect back with meaningful error message"); } $recording->presentation_id = $presentation->id; $recording->save(); } return redirect()->action('EventsController@show', $event->id)->with('status', 'Arrangementet ble opprettet.'); }