/** * Update the specified resource in storage. * * @param int $id * @return Response */ public function update($id) { try { $rules = array('first_name' => 'required|min:2|max:20', 'last_name' => 'required|min:2|max:20', 'city' => 'required|max:50', 'pincode' => 'required|between:6,10'); $messages = array('first_name.required' => 'First name is required.', 'last_name.required' => 'Last name is required.', 'city.required' => 'City is required.', 'pincode.required' => 'Pincode is required.'); $validator = Validator::make(Input::all(), $rules, $messages); if ($validator->fails()) { $ers = json_decode($validator->messages()->toJson()); $ermsg = ""; foreach ($ers as $errs) { foreach ($errs as $key => $value) { $ermsg .= $value . "<br/>"; } } return $this->response(array('statusCode' => 400, 'statusDescription' => 'Bad Request', 'errors' => $ermsg)); } else { $uid = Auth::id(); if ($id == $uid) { $user = Auth::user(); $user->fname = Input::get('first_name'); $user->lname = Input::get('last_name'); $user->address = Input::get('address'); $user->colony = Input::get('colony'); $user->area = Input::get('area'); $user->city = Input::get('city'); $user->pincode = Input::get('pincode'); $user->save(); $bike = Bike::where('user_id', '=', $uid)->where('status', '=', 0, 'AND')->orderBy('id', 'desc')->first(); if ($bike) { $unique_id = $user->city . "-" . $user->pincode . "-"; for ($i = 0; $i < 11; $i++) { $unique_id .= rand(0, 9); } $bike->unique_id = $unique_id; $bike->status = 1; $bike->qr_code = base64_encode(QrCode::format('png')->size(150)->encoding('UTF-8')->color(150, 90, 10)->backgroundColor(125, 184, '#808040')->generate($unique_id)); $bike->updatedon = date("Y-m-d H:i:s"); $bike->save(); } return $this->response(array('statusCode' => 100, 'statusDescription' => 'Success', 'data' => $user)); } else { return $this->response(array('statusCode' => 400, 'statusDescription' => "Bad Request", "errors" => "You cannot change profile of others.")); } } } catch (Exception $e) { return $this->response(array('statusCode' => 401, 'statusDescription' => "Bad Request", "errors" => $e->getMessage())); } }