public function changeAvatar(Request $request) { $response = new stdClass(); if ($request->isMethod('post')) { $postData = $request->all(); $objUserModel = new User(); $userId = ""; if (isset($postData['user_id'])) { $userId = $postData['user_id']; } $authFlag = false; if (isset($postData['api_token'])) { if ($userId != '') { $apiToken = $postData['api_token']; if ($apiToken == $this->API_TOKEN) { $authFlag = true; } else { $where = ['rawQuery' => 'id=?', 'bindParams' => [$userId]]; $selectColumn = array('login_token'); $userCredentials = $objUserModel->getUsercredsWhere($where, $selectColumn); if ($userCredentials) { if ($apiToken == $userCredentials->login_token) { $authFlag = true; } } } } } if ($authFlag) { if ($userId != '') { if (Input::hasFile('file')) { $validator = Validator::make($request->all(), ['file' => 'image']); if (!$validator->fails()) { $destinationPath = $_SERVER['DOCUMENT_ROOT'] . '/../../web/public/assets/uploads/useravatar/'; $fileName = $userId . '_' . time() . ".jpg"; File::makeDirectory($destinationPath, 0777, true, true); $filePath = $destinationPath . $fileName; $quality = 70; //$this->imageQuality(Input::file('file')); Image::make(Input::file('file'))->resize($this->imageWidth, $this->imageHeight, function ($constraint) { $constraint->aspectRatio(); })->save($destinationPath . $fileName, $quality); $filePathUpdate = '/assets/uploads/useravatar/' . $fileName; $updateData['profile_pic'] = $filePathUpdate; $where = ['rawQuery' => 'id =?', 'bindParams' => [$userId]]; $userData = $objUserModel->getUsercredsWhere($where); $updatedResult = $objUserModel->UpdateUserDetailsbyId($where, $updateData); if ($updatedResult) { if ($userData->profile_pic != '') { File::delete(public_path() . '/../../web/public' . $userData->profile_pic); } $response->code = 200; $response->message = "Successfully updated profile image."; $response->data = $filePathUpdate; echo json_encode($response); } else { $response->code = 400; $response->message = "Something went wrong, please try again."; $response->data = null; echo json_encode($response); } } else { $response->code = 100; $response->message = $validator->messages(); $response->data = null; echo json_encode($response); } } else { $response->code = 400; $response->message = "Give correct input and Input Image files should be(jpg,gif,png,jpeg)only"; $response->data = null; echo json_encode($response, true); } } else { $response->code = 400; $response->message = "You need to login to change Avtar."; $response->data = null; echo json_encode($response, true); } } else { $response->code = 401; $response->message = "Access Denied"; $response->data = null; echo json_encode($response, true); } } else { $response->code = 400; $response->message = "Request not allowed"; $response->data = null; echo json_encode($response, true); } }
function login(Request $request) { $response = new stdClass(); if ($request->isMethod("POST")) { $postData = $request->all(); $apiToken = ""; if (isset($postData['api_token'])) { $apiToken = $postData['api_token']; } if ($apiToken == $this->API_TOKEN) { $rules = array('emailOrUsername' => 'required', 'password' => 'required'); $messages = ['emailOrUsername.required' => 'Please enter email address or username ', 'password.required' => 'Please enter a password']; $validator = Validator::make($request->all(), $rules, $messages); if (!$validator->fails()) { $objUserModel = new User(); $objUsermetaModel = new Usersmeta(); $username = $postData['emailOrUsername']; $password = $postData['password']; $field = 'username'; if (strpos($username, '@') !== false) { $field = 'email'; } if (Auth::attempt([$field => $username, 'password' => $password])) { $whereForUser = ['rawQuery' => 'id =?', 'bindParams' => [Auth::id()]]; $userDetails = $objUserModel->getUsercredsWhere($whereForUser); $whereForUsermeta = ['rawQuery' => 'user_id =?', 'bindParams' => [Auth::id()]]; //check if user id is exist in usersmeta if not then insert data in usersmeta table. $isUserAvailable = $objUsermetaModel->getUsermetaWhere($whereForUsermeta, ['account_bal', 'notify_bal', 'notify_profile_likes', 'notify_daily_subscription']); if (!isset($isUserAvailable->account_bal)) { $addUsermeta = $objUsermetaModel->addUsermeta(['user_id' => Auth::id(), 'account_bal' => 0]); } else { $userDetails->account_bal = $isUserAvailable->account_bal; $userDetails->notify_bal = $isUserAvailable->notify_bal; $userDetails->notify_profile_likes = $isUserAvailable->notify_profile_likes; $userDetails->notify_daily_subscription = $isUserAvailable->notify_daily_subscription; } if ($userDetails->status == 1) { if (isset($postData['device_id']) && $postData['device_id'] != "") { $data['device_id'] = $postData['device_id']; $string = $userDetails->id . $postData['device_id'] . $this->API_TOKEN; $token = hash('sha256', $string); $data['login_token'] = $token; $id = $userDetails->id; $whereForUpdate = ['rawQuery' => 'id =?', 'bindParams' => [$id]]; $objUserModel->UpdateUserDetailsbyId($whereForUpdate, $data); $userDetails->login_token = $token; $userDetails->device_id = $postData['device_id']; } // dd($userDetails); // update the user timezone in user table if (isset($postData['user_timezone'])) { $whereForUpdate = ['rawQuery' => 'id =?', 'bindParams' => [$userDetails->id]]; $data['user_timezone'] = $postData['user_timezone']; $queryResult = $objUserModel->UpdateUserDetailsbyId($whereForUpdate, $data); } $response->code = 200; $response->message = "Login successful."; $response->data = $userDetails; echo json_encode($response, true); } else { if ($userDetails->status == 0) { $response->code = 400; $response->message = " Your account is currently pending approval by the site administrator"; $response->data = null; echo json_encode($response, true); } else { if ($userDetails->status == 2) { $response->message = 'This account has not been activated.'; $response->code = 400; $response->data = null; echo json_encode($response, true); } else { if ($userDetails->status == 3) { $response->message = ' Your account is currently rejected by the site administrator.'; $response->code = 400; $response->data = null; echo json_encode($response, true); } else { if ($userDetails->status == 4) { $response->message = 'This account has been deleted.'; $response->code = 400; $response->data = null; echo json_encode($response, true); } } } } } } else { $response->message = 'Invalid login Credentials'; $response->code = 400; $response->data = null; echo json_encode($response, true); } } else { $response->code = 100; $response->message = $validator->messages(); echo json_encode($response, true); } } else { $response->code = 401; $response->message = "Access Denied"; $response->data = null; echo json_encode($response, true); } } else { $response->code = 401; $response->message = "Request Not allowed"; $response->data = null; echo json_encode($response); } }