salt); return self::FEVER_PATH . '/.key-' . $salt . '-' . $feverKey . '.txt'; } /** * Update the fever key of a user. * * @param string * @param string * @return string the Fever key, or false if the update failed */ public static function updateKey($username, $passwordPlain) { $ok = self::checkFeverPath(); if (!$ok) { return false; } self::deleteKey($username); $feverKey = strtolower(md5("{$username}:{$passwordPlain}")); $feverKeyPath = self::getKeyPath($feverKey); $res = file_put_contents($feverKeyPath, $username); if ($res !== false) { return $feverKey; } else { Minz_Log::warning('Could not save Fever API credentials. Unknown error.', ADMIN_LOG); return false; } } /** * Delete the Fever key of a user. * * @param string * @return boolean true if the deletion succeeded, else false. */ public static function deleteKey($username) { $userConfig = get_user_configuration($username); if ($userConfig === null) { return false; } $feverKey = $userConfig->feverKey; if (!ctype_xdigit($feverKey)) { return false; } $feverKeyPath = self::getKeyPath($feverKey); return @unlink($feverKeyPath); } }