public function createNewPost(Request $request) { $data = ["title" => $request->title, "link" => $request->link, "body" => $request->body, "body_html" => Markdown::convertToHtml($request->body), "user_id" => Auth::user()->id, "subreddit_id" => $request->subreddit_id]; $slugify = new Slugify(); $data['slug'] = $slugify->slugify($request->get('title'), '_'); if (strlen($data['slug']) > 46) { $data['slug'] = substr($data['slug'], 0, 46); } //6 character string for a permalink $permalink = $this->generateRandomString(); //Make sure the permalink is unique while (Post::wherePermalink($permalink)->exists()) { $permalink = $this->generateRandomString(); } $data['permalink'] = $permalink; Post::create($data); return redirect('/r/' . Subreddit::whereId($request->subreddit_id)->firstOrFail()->name . '/comments/' . $data['permalink'] . '/' . $data['slug']); }