unify create filter interface
This commit is contained in:
parent
84025daba8
commit
7b5c6012d1
4 changed files with 98 additions and 80 deletions
20
backend.php
20
backend.php
|
@ -2233,6 +2233,8 @@
|
|||
|
||||
if ($quiet) return;
|
||||
|
||||
print "<div id=\"infoBoxShadow\"><div id=\"infoBox\">PLACEHOLDER</div></div>";
|
||||
|
||||
$result = db_query($link, "SELECT description
|
||||
FROM ttrss_filter_types ORDER BY description");
|
||||
|
||||
|
@ -2242,7 +2244,7 @@
|
|||
array_push($filter_types, $line["description"]);
|
||||
}
|
||||
|
||||
print "<div class=\"prefGenericAddBox\">
|
||||
/* print "<div class=\"prefGenericAddBox\">
|
||||
<input id=\"fadd_regexp\" size=\"40\"> ";
|
||||
|
||||
print_select("fadd_match", "Title", $filter_types);
|
||||
|
@ -2282,11 +2284,16 @@
|
|||
class=\"button\" onclick=\"javascript:testFilter()\"
|
||||
value=\"Test filter\"> "; */
|
||||
|
||||
print "<input type=\"submit\"
|
||||
/* print "<input type=\"submit\"
|
||||
class=\"button\" onclick=\"javascript:addFilter()\"
|
||||
value=\"Create filter\">";
|
||||
value=\"Create filter\">"; */
|
||||
|
||||
print "</div>";
|
||||
print "<input type=\"submit\"
|
||||
class=\"button\"
|
||||
onclick=\"javascript:displayDlg('quickAddFilter', false)\"
|
||||
value=\"Create filter\">";
|
||||
|
||||
// print "</div>";
|
||||
|
||||
$result = db_query($link, "SELECT
|
||||
ttrss_filters.id AS id,reg_exp,
|
||||
|
@ -2743,6 +2750,8 @@
|
|||
$id = $_GET["id"];
|
||||
$param = $_GET["param"];
|
||||
|
||||
print "<div class=\"infoBoxContents\">";
|
||||
|
||||
if ($id == "quickAddFeed") {
|
||||
print "
|
||||
Feed URL: <input
|
||||
|
@ -2895,6 +2904,9 @@
|
|||
|
||||
print "</td></tr></table>";
|
||||
}
|
||||
|
||||
print "</div>";
|
||||
|
||||
}
|
||||
|
||||
// update feeds of all users, may be used anonymously
|
||||
|
|
80
functions.js
80
functions.js
|
@ -917,3 +917,83 @@ function center_element(e) {
|
|||
exception_error("center_element", e);
|
||||
}
|
||||
}
|
||||
|
||||
function displayDlg(id, param) {
|
||||
|
||||
if (!xmlhttp_ready(xmlhttp)) {
|
||||
printLockingError();
|
||||
return
|
||||
}
|
||||
|
||||
notify("");
|
||||
|
||||
xmlhttp.open("GET", "backend.php?op=dlg&id=" +
|
||||
param_escape(id) + "¶m=" + param_escape(param), true);
|
||||
xmlhttp.onreadystatechange=dlg_display_callback;
|
||||
xmlhttp.send(null);
|
||||
|
||||
disableHotkeys();
|
||||
}
|
||||
|
||||
function closeDlg() {
|
||||
var dlg = document.getElementById("infoBoxShadow");
|
||||
dlg.style.display = "none";
|
||||
enableHotkeys();
|
||||
}
|
||||
|
||||
function dlg_submit_callback() {
|
||||
if (xmlhttp.readyState == 4) {
|
||||
notify(xmlhttp.responseText);
|
||||
closeDlg();
|
||||
|
||||
// called from prefs, reload tab
|
||||
if (active_tab) {
|
||||
selectTab(active_tab, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function dlg_display_callback() {
|
||||
if (xmlhttp.readyState == 4) {
|
||||
var dlg = document.getElementById("infoBox");
|
||||
var dlg_s = document.getElementById("infoBoxShadow");
|
||||
|
||||
dlg.innerHTML = xmlhttp.responseText;
|
||||
dlg_s.style.display = "block";
|
||||
}
|
||||
}
|
||||
|
||||
function qaddFilter() {
|
||||
|
||||
if (!xmlhttp_ready(xmlhttp)) {
|
||||
printLockingError();
|
||||
return
|
||||
}
|
||||
|
||||
var regexp = document.getElementById("fadd_regexp");
|
||||
var match = document.getElementById("fadd_match");
|
||||
var feed = document.getElementById("fadd_feed");
|
||||
var action = document.getElementById("fadd_action");
|
||||
|
||||
if (regexp.value.length == 0) {
|
||||
notify("Missing filter expression.");
|
||||
} else {
|
||||
notify("Adding filter...");
|
||||
|
||||
var v_match = match[match.selectedIndex].text;
|
||||
var feed_id = feed[feed.selectedIndex].id;
|
||||
var action_id = action[action.selectedIndex].id;
|
||||
|
||||
xmlhttp.open("GET", "backend.php?op=pref-filters&quiet=1&subop=add®exp=" +
|
||||
param_escape(regexp.value) + "&match=" + v_match +
|
||||
"&fid=" + param_escape(feed_id) + "&aid=" + param_escape(action_id), true);
|
||||
|
||||
xmlhttp.onreadystatechange=dlg_submit_callback;
|
||||
xmlhttp.send(null);
|
||||
|
||||
regexp.value = "";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
74
tt-rss.js
74
tt-rss.js
|
@ -58,23 +58,6 @@ function dlg_frefresh_callback() {
|
|||
}
|
||||
}
|
||||
|
||||
function dlg_submit_callback() {
|
||||
if (xmlhttp.readyState == 4) {
|
||||
notify(xmlhttp.responseText);
|
||||
closeDlg();
|
||||
}
|
||||
}
|
||||
|
||||
function dlg_display_callback() {
|
||||
if (xmlhttp.readyState == 4) {
|
||||
var dlg = document.getElementById("userDlg");
|
||||
var dlg_s = document.getElementById("userDlgShadow");
|
||||
|
||||
dlg.innerHTML = xmlhttp.responseText;
|
||||
dlg_s.style.display = "block";
|
||||
}
|
||||
}
|
||||
|
||||
function hide_unread_callback() {
|
||||
if (xmlhttp.readyState == 4) {
|
||||
|
||||
|
@ -578,63 +561,6 @@ function qafAdd() {
|
|||
}
|
||||
}
|
||||
|
||||
function qaddFilter() {
|
||||
|
||||
if (!xmlhttp_ready(xmlhttp)) {
|
||||
printLockingError();
|
||||
return
|
||||
}
|
||||
|
||||
var regexp = document.getElementById("fadd_regexp");
|
||||
var match = document.getElementById("fadd_match");
|
||||
var feed = document.getElementById("fadd_feed");
|
||||
var action = document.getElementById("fadd_action");
|
||||
|
||||
if (regexp.value.length == 0) {
|
||||
notify("Missing filter expression.");
|
||||
} else {
|
||||
notify("Adding filter...");
|
||||
|
||||
var v_match = match[match.selectedIndex].text;
|
||||
var feed_id = feed[feed.selectedIndex].id;
|
||||
var action_id = action[action.selectedIndex].id;
|
||||
|
||||
xmlhttp.open("GET", "backend.php?op=pref-filters&quiet=1&subop=add®exp=" +
|
||||
param_escape(regexp.value) + "&match=" + v_match +
|
||||
"&fid=" + param_escape(feed_id) + "&aid=" + param_escape(action_id), true);
|
||||
|
||||
xmlhttp.onreadystatechange=dlg_submit_callback;
|
||||
xmlhttp.send(null);
|
||||
|
||||
regexp.value = "";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
function displayDlg(id, param) {
|
||||
|
||||
if (!xmlhttp_ready(xmlhttp)) {
|
||||
printLockingError();
|
||||
return
|
||||
}
|
||||
|
||||
notify("");
|
||||
|
||||
xmlhttp.open("GET", "backend.php?op=dlg&id=" +
|
||||
param_escape(id) + "¶m=" + param_escape(param), true);
|
||||
xmlhttp.onreadystatechange=dlg_display_callback;
|
||||
xmlhttp.send(null);
|
||||
|
||||
disableHotkeys();
|
||||
}
|
||||
|
||||
function closeDlg() {
|
||||
var dlg = document.getElementById("userDlgShadow");
|
||||
dlg.style.display = "none";
|
||||
enableHotkeys();
|
||||
}
|
||||
|
||||
function qfdDelete(feed_id) {
|
||||
|
||||
notify("Removing feed...");
|
||||
|
|
|
@ -96,7 +96,7 @@ window.onload = init;
|
|||
<div id="notify"><span id="notify_body"> </span></div>
|
||||
</td>
|
||||
|
||||
<div id="userDlgShadow"><div id="userDlg"> </div></div>
|
||||
<div id="infoBoxShadow"><div id="infoBox"> </div></div>
|
||||
|
||||
</tr><tr><td class="welcomePrompt">
|
||||
<? if (!SINGLE_USER_MODE) { ?>
|
||||
|
@ -240,7 +240,7 @@ window.onload = init;
|
|||
<option id="qmcShowOnlyUnread"> Show only unread</option>
|
||||
<option disabled>--------</option>
|
||||
<option style="color : #5050aa" disabled>Other actions:</option>
|
||||
<option id="qmcAddFilter"> Add filter</option>
|
||||
<option id="qmcAddFilter"> Create filter</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
|
|
Loading…
Reference in a new issue