summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--functions.js98
-rw-r--r--functions.php24
-rw-r--r--modules/popup-dialog.php8
-rw-r--r--modules/pref-labels.php6
4 files changed, 134 insertions, 2 deletions
diff --git a/functions.js b/functions.js
index dd7f51ea6..61eb83d95 100644
--- a/functions.js
+++ b/functions.js
@@ -1737,3 +1737,101 @@ function remove_splash() {
debug("removed splash!");
}
}
+
+function addLabelExample() {
+ try {
+ var form = document.forms["label_edit_form"];
+
+ var text = form.sql_exp;
+ var op = form.label_fields[form.label_fields.selectedIndex];
+ var p = form.label_fields_param;
+
+ if (op) {
+ op = op.value;
+
+ var tmp = "";
+
+ if (text.value != "") {
+ if (text.value.substring(text.value.length-3, 3).toUpperCase() != "AND") {
+ tmp = " AND ";
+ } else {
+ tmp = " ";
+ }
+ }
+
+ if (op == "unread") {
+ tmp = tmp + "unread = true";
+ }
+
+ if (op == "updated") {
+ tmp = tmp + "last_read is null and unread = false";
+ }
+
+ if (op == "kw_title") {
+ tmp = tmp + "ttrss_entries.title like '%"+p.value+"%'";
+ }
+ if (op == "kw_content") {
+ tmp = tmp + "ttrss_entries.content like '%"+p.value+"%'";
+ }
+
+ if (op == "scoreE") {
+ tmp = tmp + "score = " + p.value;
+ }
+
+ if (op == "scoreG") {
+ tmp = tmp + "score > " + p.value;
+ }
+
+ if (op == "scoreL") {
+ tmp = tmp + "score < " + p.value;
+ }
+
+ if (op == "newerD") {
+ if (isNaN(parseInt(p))) {
+ alert("This action expects numeric parameter.");
+ return false;
+ }
+ tmp = tmp + "updated > NOW() - INTERVAL '"+parseInt(p.value)+" days'";
+ }
+
+ if (op == "newerH") {
+ if (isNaN(parseInt(p))) {
+ alert("This action expects numeric parameter.");
+ return false;
+ }
+
+ tmp = tmp + "updated > NOW() - INTERVAL '"+parseInt(p.value)+" hours'";
+ }
+
+ text.value = text.value + tmp;
+
+ p.value = "";
+
+ }
+
+ } catch (e) {
+ exception_error("addLabelExample", e);
+ }
+
+ return false;
+}
+
+function labelFieldsCheck(elem) {
+ try {
+ var op = elem[elem.selectedIndex].value;
+
+ var p = document.forms["label_edit_form"].label_fields_param;
+
+ if (op == "kw_title" || op == "kw_content" || op == "scoreL" ||
+ op == "scoreG" || op == "scoreE" || op == "newerD" ||
+ op == "newerH" ) {
+ Element.show(p);
+ } else {
+ Element.hide(p);
+ }
+
+ } catch (e) {
+ exception_error("labelFieldsCheck", e);
+
+ }
+}
diff --git a/functions.php b/functions.php
index e23590d74..a4471fcfe 100644
--- a/functions.php
+++ b/functions.php
@@ -5646,4 +5646,28 @@
print "</table>";
}
+ function print_label_dlg_common_examples() {
+
+ print __("Match ") . " ";
+
+ print "<select name=\"label_fields\" onchange=\"labelFieldsCheck(this)\">";
+ print "<option value=\"unread\">".__("Unread articles")."</option>";
+ print "<option value=\"updated\">".__("Updated articles")."</option>";
+ print "<option value=\"kw_title\">".__("Title contains")."</option>";
+ print "<option value=\"kw_content\">".__("Content contains")."</option>";
+ print "<option value=\"scoreE\">".__("Score is equals")."</option>";
+ print "<option value=\"scoreG\">".__("Score is less than")."</option>";
+ print "<option value=\"scoreL\">".__("Score is greater than")."</option>";
+ print "<option value=\"newerH\">".__("Articles newer than X hours")."</option>";
+ print "<option value=\"newerD\">".__("Articles newer than X days")."</option>";
+
+ print "</select>";
+
+ print "<input style=\"display : none\" name=\"label_fields_param\"
+ size=\"10\">";
+
+ print " <input type=\"submit\"
+ onclick=\"return addLabelExample()\"
+ value=\"".__("Add")."\">";
+ }
?>
diff --git a/modules/popup-dialog.php b/modules/popup-dialog.php
index 912ab03a6..b3fb99a62 100644
--- a/modules/popup-dialog.php
+++ b/modules/popup-dialog.php
@@ -243,7 +243,13 @@
print "<div class=\"dlgSecCont\">";
print "<textarea onkeyup=\"toggleSubmitNotEmpty(this, 'infobox_submit')\"
- rows=\"6\" name=\"sql_exp\" class=\"labelSQL\" cols=\"50\">$sql_exp</textarea>";
+ rows=\"6\" name=\"sql_exp\" class=\"labelSQL\"
+ cols=\"50\">$sql_exp</textarea>";
+
+ print "<br/>";
+
+ print_label_dlg_common_examples();
+
print "</div>";
diff --git a/modules/pref-labels.php b/modules/pref-labels.php
index eed74c263..e54550034 100644
--- a/modules/pref-labels.php
+++ b/modules/pref-labels.php
@@ -48,7 +48,11 @@
print "<div class=\"dlgSecCont\">";
print "<textarea onkeyup=\"toggleSubmitNotEmpty(this, 'infobox_submit')\"
- rows=\"6\" name=\"sql_exp\" class=\"labelSQL\" cols=\"50\">$sql_exp</textarea>";
+ rows=\"6\" name=\"sql_exp\" class=\"labelSQL\" cols=\"50\">$sql_exp</textarea>";
+
+ print "<br/>";
+
+ print_label_dlg_common_examples();
print "</div>";