X-Git-Url: https://git.wh0rd.org/?a=blobdiff_plain;f=classes%2Fpref%2Fprefs.php;h=81b19cfb5e92d53eaa469cb74be09b01928c737b;hb=fbff72e081e812926f89e608cf7af1b7d8c841cb;hp=fca67d0a6c3056e0a75eeaf9dd6bf485bd6e1d4c;hpb=f559d74a4e8dcab529813cb70526dc5762f4a4bf;p=tt-rss.git diff --git a/classes/pref/prefs.php b/classes/pref/prefs.php index fca67d0a..81b19cfb 100644 --- a/classes/pref/prefs.php +++ b/classes/pref/prefs.php @@ -48,7 +48,7 @@ class Pref_Prefs extends Handler_Protected { "SHOW_CONTENT_PREVIEW" => array(__("Show content preview in headlines list"), ""), "SORT_HEADLINES_BY_FEED_DATE" => array(__("Sort headlines by feed date"), __("Use feed-specified date to sort headlines instead of local import date.")), "SSL_CERT_SERIAL" => array(__("Login with an SSL certificate"), __("Click to register your SSL client certificate with tt-rss")), - "STRIP_IMAGES" => array(__("Do not embed images in articles"), ""), + "STRIP_IMAGES" => array(__("Do not embed media in articles"), ""), "STRIP_UNSAFE_TAGS" => array(__("Strip unsafe tags from articles"), __("Strip all but most common HTML tags when reading articles.")), "USER_STYLESHEET" => array(__("Customize stylesheet"), __("Customize CSS stylesheet to your liking")), "USER_TIMEZONE" => array(__("Time zone"), ""), @@ -146,8 +146,8 @@ class Pref_Prefs extends Handler_Protected { $_SESSION["prefs_op_result"] = "reset-to-defaults"; - $sth = $this->pdo->query("DELETE FROM ttrss_user_prefs - WHERE (profile = :profile OR (:profile IS NULL AND profile IS NULL)) + $sth = $this->pdo->prepare("DELETE FROM ttrss_user_prefs + WHERE (profile = :profile OR (:profile IS NULL AND profile IS NULL)) AND owner_uid = :uid"); $sth->execute([":profile" => $_SESSION['profile'], ":uid" => $_SESSION['uid']]); @@ -162,7 +162,7 @@ class Pref_Prefs extends Handler_Protected { $prefs_blacklist = array("ALLOW_DUPLICATE_POSTS", "STRIP_UNSAFE_TAGS", "REVERSE_HEADLINES", "SORT_HEADLINES_BY_FEED_DATE", "DEFAULT_ARTICLE_LIMIT", - "FEEDS_SORT_BY_UNREAD"); + "FEEDS_SORT_BY_UNREAD", "CDM_EXPANDED"); /* "FEEDS_SORT_BY_UNREAD", "HIDE_READ_FEEDS", "REVERSE_HEADLINES" */ @@ -172,6 +172,9 @@ class Pref_Prefs extends Handler_Protected { "DEFAULT_UPDATE_INTERVAL", "USER_TIMEZONE", "SORT_HEADLINES_BY_FEED_DATE", "SSL_CERT_SERIAL", "DIGEST_PREFERRED_TIME"); + $digest_options = array("DIGEST_ENABLE", "DIGEST_CATCHUP", "DIGEST_PREFERRED_TIME"); + + $purge_options = array("PURGE_UNREAD_ARTICLES", "PURGE_OLD_DAYS"); $_SESSION["prefs_op_result"] = ""; @@ -502,6 +505,12 @@ class Pref_Prefs extends Handler_Protected { continue; } + /* Hide options from the user that are disabled in config.php. */ + if (FORCE_ARTICLE_PURGE && in_array($pref_name, $purge_options)) + continue; + if (DIGEST_SUBJECT === false && in_array($pref_name, $digest_options)) + continue; + if ($active_section != $line["section_id"]) { if ($active_section != "") { @@ -570,14 +579,7 @@ class Pref_Prefs extends Handler_Protected { $checked = ($value == "true") ? "checked=\"checked\"" : ""; - if ($pref_name == "PURGE_UNREAD_ARTICLES" && FORCE_ARTICLE_PURGE != 0) { - $disabled = "disabled=\"1\""; - $checked = "checked=\"checked\""; - } else { - $disabled = ""; - } - - print ""; } else if (array_search($pref_name, array('FRESH_ARTICLE_MAX_AGE', @@ -585,15 +587,8 @@ class Pref_Prefs extends Handler_Protected { $regexp = ($type_name == 'integer') ? 'regexp="^\d*$"' : ''; - if ($pref_name == "PURGE_OLD_DAYS" && FORCE_ARTICLE_PURGE != 0) { - $disabled = "disabled=\"1\""; - $value = FORCE_ARTICLE_PURGE; - } else { - $disabled = ""; - } - print ""; } else if ($pref_name == "SSL_CERT_SERIAL") { @@ -848,9 +843,6 @@ class Pref_Prefs extends Handler_Protected { } function otpqrcode() { - require_once "lib/otphp/vendor/base32.php"; - require_once "lib/otphp/lib/otp.php"; - require_once "lib/otphp/lib/totp.php"; require_once "lib/phpqrcode/phpqrcode.php"; $sth = $this->pdo->prepare("SELECT login,salt,otp_enabled @@ -860,7 +852,7 @@ class Pref_Prefs extends Handler_Protected { if ($row = $sth->fetch()) { - $base32 = new Base32(); + $base32 = new \OTPHP\Base32(); $login = $row["login"]; $otp_enabled = sql_bool_to_bool($row["otp_enabled"]); @@ -876,9 +868,6 @@ class Pref_Prefs extends Handler_Protected { } function otpenable() { - require_once "lib/otphp/vendor/base32.php"; - require_once "lib/otphp/lib/otp.php"; - require_once "lib/otphp/lib/totp.php"; $password = clean($_REQUEST["password"]); $otp = clean($_REQUEST["otp"]); @@ -887,14 +876,14 @@ class Pref_Prefs extends Handler_Protected { if ($authenticator->check_password($_SESSION["uid"], $password)) { - $sth = $this->pdo->query("SELECT salt + $sth = $this->pdo->prepare("SELECT salt FROM ttrss_users WHERE id = ?"); $sth->execute([$_SESSION['uid']]); if ($row = $sth->fetch()) { - $base32 = new Base32(); + $base32 = new \OTPHP\Base32(); $secret = $base32->encode(sha1($row["salt"])); $topt = new \OTPHP\TOTP($secret); @@ -902,7 +891,7 @@ class Pref_Prefs extends Handler_Protected { $otp_check = $topt->now(); if ($otp == $otp_check) { - $sth = $this->pdo->prepare("UPDATE ttrss_users + $sth = $this->pdo->prepare("UPDATE ttrss_users SET otp_enabled = true WHERE id = ?"); $sth->execute([$_SESSION['uid']]); @@ -922,7 +911,10 @@ class Pref_Prefs extends Handler_Protected { static function isdefaultpassword() { $authenticator = PluginHost::getInstance()->get_plugin($_SESSION["auth_module"]); - if ($authenticator && function_exists($authenticator->check_password) && $authenticator->check_password($_SESSION["uid"], "password")) { + if ($authenticator && + method_exists($authenticator, "check_password") && + $authenticator->check_password($_SESSION["uid"], "password")) { + return true; } @@ -1092,7 +1084,7 @@ class Pref_Prefs extends Handler_Protected { print "
-