user = $user; $this->beforeFilter('current_user', array('only' => ['update', 'destroy'])); } public function index() { return $this->user->all(); } public function show($id) { return $this->user->findOrFail($id); } public function update($id) { $s = $this->user->find($id); if (!empty(Input::get('password'))) $s->password = Hash::make(Input::get('password')); if ($s->save()) { return $this->show($id); } else { throw new \Dingo\Api\Exception\UpdateResourceFailedException; } } public function store() { $rules = [ 'email' => ['required', 'email', 'unique:users'], 'password' => ['required', 'min:7'] ]; $payload = Input::only('email', 'password'); $validator = Validator::make($payload, $rules); if ($validator->fails()) { throw new Exception\ValidationException('Could not create new user.', $validator->errors()); } $this->user->email = Input::get('email'); $this->user->password = empty(Input::get('password')) ? null : Hash::make(Input::get('password')); if ($this->user->save()) { return $this->response->created(); } else { throw new \Dingo\Api\Exception\StoreResourceFailedException; } } }