public function postCreate() { if (Auth::guest()) { return Redirect::secure('user/login'); } // do not use layout for this $this->layout = null; // check image size (must be < 10MB) if (Input::file('image')->getSize() > 10000000) { return Redirect::secure('picture/upload'); } // check image type (must be (jpg, png, gif or jpeg)) if (Input::file('image')->getClientOriginalExtension() == "jpg" || Input::file('image')->getClientOriginalExtension() == "jpeg" || Input::file('image')->getClientOriginalExtension() == "png" || Input::file('image')->getClientOriginalExtension() == "gif") { // add record to db Input::get('isPrivate') == 1 ? $isPrivate = 1 : ($isPrivate = 0); $id = Picture::insertGetId(array('user_id' => Input::get('userId'), 'album_id' => Input::get('albumId'), 'filename' => Input::file('image')->getClientOriginalName(), 'size' => Input::file('image')->getSize(), 'title' => strip_tags(Purifier::clean(Input::get('title'))), 'isPrivate' => $isPrivate)); // move to albums folder $destinationPath = public_path() . "/files/" . Input::get('userId') . "/" . Input::get('albumId'); Input::file('image')->move($destinationPath, Input::file('image')->getClientOriginalName()); // redirect to uploaded picture return Redirect::secure('picture/' . $id); } return Redirect::secure('picture/upload'); }