public function postPuzzle() { $user = Auth::user(); if (!$user) { $msg = 'Please log in'; $returnData = array('errors' => array($msg)); return response()->json($returnData, 401); } if (!Input::has('template_slug')) { $msg = 'No puzzle template selected'; $returnData = array('errors' => array($msg)); return response()->json($returnData, 401); } $p = new Puzzle(); $args = array(); $args['user_id'] = $user->id; $pt = PuzzleTemplate::where('slug', Input::get('template_slug'))->first(); $args['puzzle_template_id'] = $pt->id; if (!isset($args['name'])) { $args['name'] = $user->name . "'s " . $pt->name . " Puzzle"; } if ($p->validate($args)) { return Puzzle::create($args); } else { $returnData = array('errors' => $p->errors()); return response()->json($returnData, 401); } }