/** * @brief Set password * @param $uid The username * @param $password The new password * @param $recoveryPassword for the encryption app to reset encryption keys * @returns true/false * * Change the password of a user */ public static function setPassword($uid, $password, $recoveryPassword = null) { $run = true; OC_Hook::emit("OC_User", "pre_setPassword", array("run" => &$run, "uid" => $uid, "password" => $password, "recoveryPassword" => $recoveryPassword)); if ($run) { $success = false; foreach (self::$_usedBackends as $backend) { if ($backend->implementsActions(OC_USER_BACKEND_SET_PASSWORD)) { if ($backend->userExists($uid)) { $success |= $backend->setPassword($uid, $password); } } } // invalidate all login cookies OC_Preferences::deleteApp($uid, 'login_token'); OC_Hook::emit("OC_User", "post_setPassword", array("uid" => $uid, "password" => $password, "recoveryPassword" => $recoveryPassword)); return $success; } else { return false; } }
public function testDeleteApp() { $this->assertTrue(\OC_Preferences::deleteApp('Deleteuser', 'deleteapp')); $query = \OC_DB::prepare('SELECT `configvalue` FROM `*PREFIX*preferences` WHERE `userid` = ? AND `appid` = ?'); $result = $query->execute(array('Deleteuser', 'deleteapp')); $this->assertEquals(0, count($result->fetchAll())); }