summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2020-12-21 08:50:34 +0300
committerAndrew Dolgov <[email protected]>2020-12-21 08:50:34 +0300
commit6da576dbe4dd933cc385569fbaab234cae21efff (patch)
tree4f05b0de8a7f5611409f8242d39b334a0318a3b4
parentf59c567831662fc78a570c785027e6e7b1c31880 (diff)
BLACKLISTED_TAGS: use textarea for editing; normalize value when saving
-rw-r--r--classes/pref/prefs.php29
-rw-r--r--themes/compact.css6
-rw-r--r--themes/compact_night.css6
-rw-r--r--themes/light.css6
-rw-r--r--themes/light/prefs.less7
-rw-r--r--themes/night.css6
-rw-r--r--themes/night_blue.css6
7 files changed, 63 insertions, 3 deletions
diff --git a/classes/pref/prefs.php b/classes/pref/prefs.php
index 4e57ea846..bce3c171b 100644
--- a/classes/pref/prefs.php
+++ b/classes/pref/prefs.php
@@ -66,9 +66,13 @@ class Pref_Prefs extends Handler_Protected {
]
];
+ $this->pref_help_bottom = [
+ "BLACKLISTED_TAGS" => __("Never apply these tags automatically (comma-separated list)."),
+ ];
+
$this->pref_help = [
"ALLOW_DUPLICATE_POSTS" => array(__("Allow duplicate articles"), ""),
- "BLACKLISTED_TAGS" => array(__("Blacklisted tags"), __("Never apply these tags automatically (comma-separated list).")),
+ "BLACKLISTED_TAGS" => array(__("Blacklisted tags"), ""),
"DEFAULT_SEARCH_LANGUAGE" => array(__("Default language"), __("Used for full-text search")),
"CDM_AUTO_CATCHUP" => array(__("Mark read on scroll"), __("Mark articles as read as you scroll past them")),
"CDM_EXPANDED" => array(__("Always expand articles")),
@@ -192,6 +196,12 @@ class Pref_Prefs extends Handler_Protected {
case 'USER_CSS_THEME':
if (!$need_reload) $need_reload = get_pref($pref_name) != $value;
break;
+
+ case 'BLACKLISTED_TAGS':
+ $cats = FeedItem_Common::normalize_categories(explode(",", $value));
+ asort($cats);
+ $value = implode(", ", $cats);
+ break;
}
set_pref($pref_name, $value);
@@ -671,6 +681,19 @@ class Pref_Prefs extends Handler_Protected {
$timezones = explode("\n", file_get_contents("lib/timezones.txt"));
print_select($pref_name, $value, $timezones, 'dojoType="dijit.form.FilteringSelect"');
+
+ } else if ($pref_name == "BLACKLISTED_TAGS") { # TODO: other possible <textarea> prefs go here
+
+ print "<div>";
+
+ print "<textarea dojoType='dijit.form.SimpleTextarea' rows='4'
+ style='width: 500px; font-size : 12px;'
+ name='$pref_name'>$value</textarea><br/>";
+
+ print "<div class='help-text-bottom text-muted'>" . $this->pref_help_bottom[$pref_name] . "</div>";
+
+ print "</div>";
+
} else if ($pref_name == "USER_CSS_THEME") {
$themes = array_merge(glob("themes/*.php"), glob("themes/*.css"), glob("themes.local/*.css"));
@@ -725,8 +748,8 @@ class Pref_Prefs extends Handler_Protected {
print "<input type='checkbox' name='$pref_name' $checked $disabled
dojoType='dijit.form.CheckBox' id='CB_$pref_name' value='1'>";
- } else if (array_search($pref_name, array('FRESH_ARTICLE_MAX_AGE',
- 'PURGE_OLD_DAYS', 'LONG_DATE_FORMAT', 'SHORT_DATE_FORMAT')) !== false) {
+ } else if (in_array($pref_name, ['FRESH_ARTICLE_MAX_AGE',
+ 'PURGE_OLD_DAYS', 'LONG_DATE_FORMAT', 'SHORT_DATE_FORMAT'])) {
$regexp = ($type_name == 'integer') ? 'regexp="^\d*$"' : '';
diff --git a/themes/compact.css b/themes/compact.css
index 2ce41eacc..c2828c587 100644
--- a/themes/compact.css
+++ b/themes/compact.css
@@ -1472,6 +1472,9 @@ body.ttrss_prefs .user-css-editor {
}
body.ttrss_prefs fieldset.prefs {
min-height: 30px;
+ display: flex;
+ flex-direction: row;
+ align-items: center;
}
body.ttrss_prefs fieldset.prefs label:first-of-type {
min-width: 300px;
@@ -1480,6 +1483,9 @@ body.ttrss_prefs fieldset.prefs .help-text {
display: inline-block;
margin-left: 10px;
}
+body.ttrss_prefs fieldset.prefs .help-text-bottom {
+ margin-top: 10px;
+}
body.ttrss_prefs fieldset.plugin label.description {
width: 600px;
margin-right: 150px;
diff --git a/themes/compact_night.css b/themes/compact_night.css
index 4b939a00f..6666787b0 100644
--- a/themes/compact_night.css
+++ b/themes/compact_night.css
@@ -1472,6 +1472,9 @@ body.ttrss_prefs .user-css-editor {
}
body.ttrss_prefs fieldset.prefs {
min-height: 30px;
+ display: flex;
+ flex-direction: row;
+ align-items: center;
}
body.ttrss_prefs fieldset.prefs label:first-of-type {
min-width: 300px;
@@ -1480,6 +1483,9 @@ body.ttrss_prefs fieldset.prefs .help-text {
display: inline-block;
margin-left: 10px;
}
+body.ttrss_prefs fieldset.prefs .help-text-bottom {
+ margin-top: 10px;
+}
body.ttrss_prefs fieldset.plugin label.description {
width: 600px;
margin-right: 150px;
diff --git a/themes/light.css b/themes/light.css
index facd16c05..d2f5aa4ee 100644
--- a/themes/light.css
+++ b/themes/light.css
@@ -1472,6 +1472,9 @@ body.ttrss_prefs .user-css-editor {
}
body.ttrss_prefs fieldset.prefs {
min-height: 30px;
+ display: flex;
+ flex-direction: row;
+ align-items: center;
}
body.ttrss_prefs fieldset.prefs label:first-of-type {
min-width: 300px;
@@ -1480,6 +1483,9 @@ body.ttrss_prefs fieldset.prefs .help-text {
display: inline-block;
margin-left: 10px;
}
+body.ttrss_prefs fieldset.prefs .help-text-bottom {
+ margin-top: 10px;
+}
body.ttrss_prefs fieldset.plugin label.description {
width: 600px;
margin-right: 150px;
diff --git a/themes/light/prefs.less b/themes/light/prefs.less
index 92084a9c8..4d3e93688 100644
--- a/themes/light/prefs.less
+++ b/themes/light/prefs.less
@@ -82,6 +82,9 @@ body.ttrss_prefs {
fieldset.prefs {
min-height : 30px;
+ display : flex;
+ flex-direction : row;
+ align-items: center;
label:first-of-type {
min-width : 300px;
@@ -91,6 +94,10 @@ body.ttrss_prefs {
display : inline-block;
margin-left : 10px;
}
+
+ .help-text-bottom {
+ margin-top : 10px;
+ }
}
fieldset.plugin {
diff --git a/themes/night.css b/themes/night.css
index 88ae685d2..face01932 100644
--- a/themes/night.css
+++ b/themes/night.css
@@ -1473,6 +1473,9 @@ body.ttrss_prefs .user-css-editor {
}
body.ttrss_prefs fieldset.prefs {
min-height: 30px;
+ display: flex;
+ flex-direction: row;
+ align-items: center;
}
body.ttrss_prefs fieldset.prefs label:first-of-type {
min-width: 300px;
@@ -1481,6 +1484,9 @@ body.ttrss_prefs fieldset.prefs .help-text {
display: inline-block;
margin-left: 10px;
}
+body.ttrss_prefs fieldset.prefs .help-text-bottom {
+ margin-top: 10px;
+}
body.ttrss_prefs fieldset.plugin label.description {
width: 600px;
margin-right: 150px;
diff --git a/themes/night_blue.css b/themes/night_blue.css
index b80699747..d5cda927f 100644
--- a/themes/night_blue.css
+++ b/themes/night_blue.css
@@ -1473,6 +1473,9 @@ body.ttrss_prefs .user-css-editor {
}
body.ttrss_prefs fieldset.prefs {
min-height: 30px;
+ display: flex;
+ flex-direction: row;
+ align-items: center;
}
body.ttrss_prefs fieldset.prefs label:first-of-type {
min-width: 300px;
@@ -1481,6 +1484,9 @@ body.ttrss_prefs fieldset.prefs .help-text {
display: inline-block;
margin-left: 10px;
}
+body.ttrss_prefs fieldset.prefs .help-text-bottom {
+ margin-top: 10px;
+}
body.ttrss_prefs fieldset.plugin label.description {
width: 600px;
margin-right: 150px;