/** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(Request $request, $id) { if (!$request->has('comment')) { return JsonResponse::create(array('error' => 'invalid_request')); } $user = auth()->check() ? auth()->user() : null; if (is_null($user)) { return JsonResponse::create(array('error' => 'not_logged_in')); } if (!$user->can('edit_comment')) { return JsonResponse::create(array('error' => 'insufficient_permissions')); } if (is_null($comment = Comment::whereId($id)->first())) { return JsonResponse::create(array('error' => 'comment_not_found')); } $comment->content = e(trim($request->get('comment'))); $comment->save(); $log = new ModeratorLog(); $log->user()->associate($user); $log->type = 'edit'; $log->target_type = 'comment'; $log->target_id = $id; $log->save(); return JsonResponse::create(array('error' => 'null', 'rendered_comment' => Comment::simplemd($comment->content))); }