+function isCdmMode() {
+ return !document.getElementById("headlinesList");
+}
+
+function getSelectedArticleIds2() {
+ var rows = new Array();
+ var cdm_mode = isCdmMode();
+
+ if (cdm_mode) {
+ rows = cdmGetSelectedArticles();
+ } else {
+ rows = getSelectedTableRowIds("headlinesList", "RROW", "RCHK");
+ }
+
+ var ids = new Array();
+
+ for (var i = 0; i < rows.length; i++) {
+ var chk = document.getElementById("RCHK-" + rows[i]);
+ if (chk && chk.checked) {
+ ids.push(rows[i]);
+ }
+ }
+
+ return ids;
+}
+
+function displayHelpInfobox(topic_id) {
+
+ var url = "backend.php?op=help&tid=" + param_escape(topic_id);
+
+ var w = window.open(url, "ttrss_help",
+ "status=0,toolbar=0,location=0,width=450,height=500,scrollbars=1,menubar=0");
+
+ return false;
+}
+
+function focus_element(id) {
+ try {
+ var e = document.getElementById(id);
+ if (e) e.focus();
+ } catch (e) {
+ exception_error("focus_element", e);
+ }
+ return false;
+}
+
+function loading_set_progress(p) {
+ try {
+ if (p < last_progress_point || !Element.visible("overlay")) return;
+
+ debug("<b>loading_set_progress : " + p + " (" + last_progress_point + ")</b>");
+
+ var o = document.getElementById("l_progress_i");
+
+// o.style.width = (p * 2) + "px";
+
+ new Effect.Scale(o, p, {
+ scaleY : false,
+ scaleFrom : last_progress_point,
+ scaleMode: { originalWidth : 200 },
+ queue: { position: 'end', scope: 'LSP-Q', limit: 3 } });
+
+ last_progress_point = p;
+
+ } catch (e) {
+ exception_error("loading_set_progress", e);
+ }
+}
+
+function remove_splash() {
+ if (Element.visible("overlay")) {
+ debug("about to remove splash, OMG!");
+ Element.hide("overlay");
+ 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") {
+ if (p.value == "") {
+ alert("This action requires a parameter.");
+ return false;
+ }
+ tmp = tmp + "ttrss_entries.title like '%"+p.value+"%'";
+ }
+
+ if (op == "kw_content") {
+ if (p.value == "") {
+ alert("This action requires a parameter.");
+ return false;
+ }
+
+ tmp = tmp + "ttrss_entries.content like '%"+p.value+"%'";
+ }
+
+ if (op == "scoreE") {
+ if (isNaN(parseInt(p.value))) {
+ alert("This action expects numeric parameter.");
+ return false;
+ }
+ tmp = tmp + "score = " + p.value;
+ }
+
+ if (op == "scoreG") {
+ if (isNaN(parseInt(p.value))) {
+ alert("This action expects numeric parameter.");
+ return false;
+ }
+ tmp = tmp + "score > " + p.value;
+ }
+
+ if (op == "scoreL") {
+ if (isNaN(parseInt(p.value))) {
+ alert("This action expects numeric parameter.");
+ return false;
+ }
+ tmp = tmp + "score < " + p.value;
+ }
+
+ if (op == "newerD") {
+ if (isNaN(parseInt(p.value))) {
+ alert("This action expects numeric parameter.");
+ return false;
+ }
+ tmp = tmp + "updated > NOW() - INTERVAL '"+parseInt(p.value)+" days'";
+ }
+
+ if (op == "newerH") {
+ if (isNaN(parseInt(p.value))) {
+ 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);
+
+ }
+}
+
+function getSelectedFeedsFromBrowser() {
+
+ var list = document.getElementById("browseFeedList");
+ if (!list) list = document.getElementById("browseBigFeedList");
+
+ var selected = new Array();
+
+ for (i = 0; i < list.childNodes.length; i++) {
+ var child = list.childNodes[i];
+ if (child.id && child.id.match("FBROW-")) {
+ var id = child.id.replace("FBROW-", "");
+
+ var cb = document.getElementById("FBCHK-" + id);
+
+ if (cb.checked) {
+ selected.push(id);
+ }
+ }
+ }
+
+ return selected;
+}
+
+function updateFeedBrowser() {
+ try {
+
+ var query = "backend.php?op=rpc&subop=feedBrowser";
+
+ var search = document.getElementById("feed_browser_search");
+ var limit = document.getElementById("feed_browser_limit");
+
+ if (limit) {
+ query = query + "&limit=" + limit[limit.selectedIndex].value;
+ }
+
+ if (search) {
+ query = query + "&search=" + param_escape(search.value);
+ }
+
+ notify_progress("Loading, please wait...", true);
+
+ new Ajax.Request(query, {
+ onComplete: function(transport) {
+ notify('');
+
+ var c = document.getElementById("browseFeedList");
+ var r = transport.responseXML.getElementsByTagName("content")[0];
+ var nr = transport.responseXML.getElementsByTagName("num-results")[0];
+ var sb = document.getElementById("feed_browser_subscribe");
+
+ if (c && r) {
+ c.innerHTML = r.firstChild.nodeValue;
+ }
+
+ if (nr && sb) {
+ if (nr.getAttribute("value") > 0) {
+ sb.disabled = false;
+ } else {
+ sb.disabled = true;
+ }
+ }
+
+ } });
+
+
+ } catch (e) {
+ exception_error("updateFeedBrowser", e);
+ }
+}
+
+