public function getAvaiableUserMetaDetails() { try { $result = Usersmeta::join('users', function ($join) { $join->on('usersmeta.user_id', '=', 'users.id'); })->join('currencies', function ($join) { $join->on('currencies.currency_id', '=', 'usersmeta.currency_id'); })->select()->get(); return $result; } catch (QueryException $e) { echo $e; } }
public function editUser($id, Request $request) { $objModelUser = User::getInstance(); if ($request->isMethod('post')) { $firstname = $request->input('firstname'); $lastname = $request->input('lastname'); $username = $request->input('username'); $email = $request->input('email'); $account_bal = $request->input('account_bal'); $currentpassword = $request->input('currentpassword'); $password = $request->input('password'); $password_confirmation = $request->input('password_confirmation'); $changeGeneralInfo = $request->input('change-generalinfo'); $editPassword = $request->input('edit-password'); $ugId = $request->input('selectUsergroup'); if (isset($changeGeneralInfo)) { $this->validate($request, ['firstname' => 'required', 'lastname' => 'required', 'username' => 'required|unique:users,username,' . $id, 'email' => 'required|email|unique:users,email,' . $id, 'account_bal' => 'regex:/^[0-9]{0,4}+([.][0-9]+)?$/'], ['firstname.required' => 'Please enter a name', 'lastname.required' => 'Please enter your lastname', 'username.required' => 'Please enter a username', 'email.required' => 'Please enter email address', 'email.email' => 'Please enter a valid email', 'email.unique' => 'This email already exists, Please choose another', 'account_bal.regex' => 'Please Enter a valid Amount i.e. number or decimal value ']); $whereForUpdateUser = array('rawQuery' => 'id = ?', 'bindParams' => [$id]); $dataForUpdateUser = array('name' => $firstname, 'lastname' => $lastname, 'username' => $username, 'email' => $email, 'usergroup_id' => $ugId); $updated = $objModelUser->updateUserWhere($dataForUpdateUser, $whereForUpdateUser); //for adding or updating account_bal in usersmeta table $objModelUsermeta = Usersmeta::getInstance(); $whereUsermeta = array('rawQuery' => 'user_id = ?', 'bindParams' => [$id]); $isUserAvailable = $objModelUsermeta->getUsermetaWhere($whereUsermeta); if ($isUserAvailable) { $dataForUpdateUserMeta = array('account_bal' => $account_bal); // return $dataForUpdateUser; $updateUserMeta = $objModelUsermeta->updateUserMetaWhere($dataForUpdateUserMeta, $whereUsermeta); } else { $addData = array('user_id' => $id, 'account_bal' => $account_bal, 'currency_id' => 1); $addUsermeta = $objModelUsermeta->addNewUserMeta($addData); } if ($updated || $updateUserMeta) { // return redirect('admin/dashboard')->with('msg', 'your data has updated'); return Redirect::back()->with(['status' => 'Success', 'message' => 'Your Profile has Updated.']); } else { return Redirect::back()->with(['status' => 'Error', 'message' => 'Same contents. Nothing to update.']); } } elseif (isset($editPassword)) { $this->validate($request, ['currentpassword' => 'required', 'password' => 'required|min:3|confirmed', 'password_confirmation' => 'required|min:3'], ['currentpassword.required' => 'Please Enter Current Password.', 'password.required' => 'New Password Required']); $whereForUpdateUser = array('rawQuery' => 'id = ?', 'bindParams' => [$id]); $userDetails = $objModelUser->getUserWhere($whereForUpdateUser); if (Hash::check($currentpassword, $userDetails->password)) { $dataForUpdateUser = array('password' => Hash::make($password)); $updated = $objModelUser->updateUserWhere($dataForUpdateUser, $whereForUpdateUser); } else { return Redirect::back()->with(['status' => 'Error', 'pswdErr' => 'Your Current Password didn\'t match']); } if ($updated) { return Redirect::back()->with(['status' => 'Success', 'message' => 'Your Password has Updated.']); } else { return Redirect::back()->with(['status' => 'Error', 'message' => 'Something went wrong, please reload the page and try again...']); } } } $objModelUsermeta = Usersmeta::getInstance(); $where = array('rawQuery' => 'users.id = ?', 'bindParams' => [$id]); $selectedColumns = ['users.*', 'usersmeta.account_bal', 'currencies.conversion_symbol']; $userDetails = $objModelUsermeta->getUserMetaInfoByUserId($where, $selectedColumns); // foreach($userDetails as $ud) { // if ($ud->usergroup_id == 0) { // die('good'); // } else { // die('hsdjkf'); // } // } $objUserGroup = Usergroup::getInstance(); $where = array('rawQuery' => 'usergroup_status=1'); $ugDetails = $objUserGroup->getAllUsergroupsWhereTemp($where); // print_r($userDetails);die; return view('Admin::users.edituser', ['suppDetails' => $userDetails, 'ugDetails' => $ugDetails]); }