function createFeedback(FeedbackRequest $request) { // Double check to make sure the current user is authorized to do this... $this->authorize('create-feedback'); $input = $request->all(); // Check application ID $application = Application::find($input['application_id']); // Check regarding ID / type, Note, nothing to be done for 'general' feedback if ($input['regarding_type'] == 'question') { $regarding = Question::find($input['regarding_id']); } elseif ($input['regarding_type'] == 'document') { // todo } // Create new feedback $feedback = new Feedback(); $feedback->application_id = $application->id; $feedback->regarding_type = $input['regarding_type']; if (isset($regarding) && $regarding->exists) { $feedback->regarding_id = $regarding->id; } // Set the current judge ID for a record of who requested this feedback $feedback->user_id = Auth::user()->id; $feedback->save(); $feedback->update($input); // Notify applicant of new feedback requested event(new FeedbackChanged($feedback, ['status' => 'created'])); $request->session()->flash('success', 'Your feedback has been requested.'); return redirect('/applications/' . $application->id . '/review'); }
/** * Store a newly created resource in storage. * * @return Response */ public function store(FeedbackRequest $request) { \App\Feedback::create($request->all()); $data = array('name' => $request->input('name')); \Mail::send('emails.feedback', $data, function ($message) use($request) { $message->to($request->input('email'), $request->input('name'))->subject('Thanks for feedback!'); }); \Mail::send('emails.feedback', $data, function ($message) use($request) { $message->to(\Config::get('mail.admin_email'), $request->input('name'))->subject('Someone left feedback on liverogo! check out'); }); flash('Thanks for your valuable feedback.'); return \Redirect::back(); }