/** * Change password controller function * * Changes the password * * @return json|xml True on success otherwise false */ public function changepassword() { try { $error_flag = false; $message = ''; $user = new LoveUser(); if ($user->loadByUsername($_REQUEST['username'])) { if ($user->getToken() == $_REQUEST['token']) { $user->setPassword($_REQUEST['password']); $user->setToken(md5(uniqid())); $user->save(); echo json_encode(array('success' => true, 'message' => 'Password changed.')); exit(0); } echo json_encode(array('success' => false, 'message' => 'Token not correct.')); exit(0); } else { echo json_encode(array('success' => false, 'message' => 'User not found.')); exit(0); } } catch (Exception $e) { $msg = 'An error occured while updating:' . "\n"; $msg .= "\n" . ' ' . $e->getMessage(); if (defined('APPLICATION_ENV') && APPLICATION_ENV == 'development') { $msg .= "\n\nFile: " . $e->getFile(); $msg .= "\nLine: " . $e->getLine(); $msg .= "\n" . $e->getTraceAsString(); } else { if (defined('APPLICATION_ENV') && APPLICATION_ENV == 'testing') { $msg .= "<br /><br />File: " . $e->getFile(); $msg .= "<br />Line: " . $e->getLine(); $msg .= "<br />" . $e->getTraceAsString(); } } echo $msg; exit; } }
public function testSetUserData() { $failureAffects = "Login will no longer allow admins to update users data"; // admin ID $aid = 6; // user ID $uid = 9; $dbConfig = array(); $dbConfig['adapter'] = 'mysqli'; $dbConfig['host'] = 'mysql.dev.sendlove.us'; $dbConfig['dbname'] = 'LM_logintest'; $dbConfig['username'] = '******'; $dbConfig['password'] = '******'; $u = new LoveUser($dbConfig); $u->loadById($uid); // current user info $username = $u->getUsername(); $nickname = $u->getNickname(); $password = $u->getPassword(); $confirmed = $u->getConfirmed(); $active = $u->getActive(); $token = $u->getToken(); $admin = $u->getAdmin(); $removed = $u->getRemoved(); // updated user info $user_data = array("userid" => $uid, "username" => $username . $uid, "nickname" => $nickname . $uid, "password" => $password . $uid, "confirmed" => 0, "active" => 0, "admin" => 1, "removed" => 1, "token" => uniqid()); // update user $this->assertEquals(true, $this->aHandler->setuserdata($this->controller, $user_data, $aid), $failureAffects); // verify that no error is returned $this->assertEquals(false, $this->controller->getErrorFlag(), $failureAffects); // restore previous user info $user_data["username"] = $username; $user_data["nickname"] = $nickname; $user_data["password"] = $password; $user_data["confirmed"] = 1; $user_data["active"] = 1; $user_data["admin"] = 0; $user_data["removed"] = 0; $user_data["token"] = $token; $this->assertEquals(true, $this->aHandler->setuserdata($this->controller, $user_data, $aid), $failureAffects); }