From 42c329162265a17e9f8f2444de2d061fb3cfb4a5 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Fri, 2 Mar 2007 20:58:58 +0100 Subject: UI improvements --- functions.js | 89 ++++++++++++++++++++++++++++++------------------------------ 1 file changed, 45 insertions(+), 44 deletions(-) (limited to 'functions.js') diff --git a/functions.js b/functions.js index da12a3c36..39b77d6a0 100644 --- a/functions.js +++ b/functions.js @@ -103,34 +103,18 @@ function delay(gap) { } var notify_hide_timerid = false; -var notify_last_doc = false; - -var notify_effect = false; function hide_notify() { - if (notify_last_doc) { - var n = notify_last_doc.getElementById("notify"); + var n = document.getElementById("notify"); + if (n) { n.style.display = "none"; - -/* if (browser_has_opacity()) { - if (notify_opacity >= 0) { - notify_opacity = notify_opacity - 0.1; - n.style.opacity = notify_opacity; - notify_hide_timerid = window.setTimeout("hide_notify()", 20); - } else { - n.style.display = "none"; - n.style.opacity = 1; - } - } else { - n.style.display = "none"; - } */ } } -function notify_real(msg, doc, no_hide, is_err) { +function notify_real(msg, no_hide, n_type) { - var n = doc.getElementById("notify"); - var nb = doc.getElementById("notify_body"); + var n = document.getElementById("notify"); + var nb = document.getElementById("notify_body"); if (!n || !nb) return; @@ -138,9 +122,6 @@ function notify_real(msg, doc, no_hide, is_err) { window.clearTimeout(notify_hide_timerid); } - notify_last_doc = doc; - notify_opacity = 1; - if (msg == "") { if (n.style.display == "block") { notify_hide_timerid = window.setTimeout("hide_notify()", 0); @@ -150,17 +131,25 @@ function notify_real(msg, doc, no_hide, is_err) { n.style.display = "block"; } - if (is_err) { + /* types: + + 1 - generic + 2 - progress + 3 - error + 4 - info + + */ + + if (n_type == 1) { + n.className = "notify"; + } else if (n_type == 2) { + n.className = "notifyProgress"; + msg = " " + msg; + } else if (n_type == 3) { n.className = "notifyError"; -// n.style.backgroundColor = "#ffcccc"; -// n.style.color = "black"; -// n.style.borderColor = "#ff0000"; msg = " " + msg; - } else { - n.className = "notify"; -// n.style.backgroundColor = "#fff7d5"; -// n.style.borderColor = "#d7c47a"; -// n.style.color = "black"; + } else if (n_type == 4) { + n.className = "notifyInfo"; msg = " " + msg; } @@ -173,16 +162,26 @@ function notify_real(msg, doc, no_hide, is_err) { } } -function p_notify(msg, no_hide, is_err) { - notify_real(msg, document, no_hide, is_err); +function notify(msg, no_hide) { + notify_real(msg, no_hide, 1); } -function notify(msg, no_hide, is_err) { - notify_real(msg, document, no_hide, is_err); +function notify_progress(msg, no_hide) { + notify_real(msg, no_hide, 2); +} + +function notify_error(msg, no_hide) { + notify_real(msg, no_hide, 3); + +} + +function notify_info(msg, no_hide) { + notify_real(msg, no_hide, 4); } function printLockingError() { - notify("Please wait until operation finishes");} + notify_info("Please wait until operation finishes."); +} function hotkey_handler(e) { @@ -668,14 +667,14 @@ function parse_counters(reply, scheduled_call) { function parse_counters_reply(xmlhttp, scheduled_call) { if (!xmlhttp.responseXML) { - notify("refetch_callback: backend did not return valid XML", true, true); + notify_error("Backend did not return valid XML", true); return; } var reply = xmlhttp.responseXML.firstChild; if (!reply) { - notify("refetch_callback: backend did not return expected XML object", true, true); + notify_error("Backend did not return expected XML object", true); updateTitle(""); return; } @@ -1344,7 +1343,7 @@ function infobox_submit_callback() { } } catch (e) { } - notify(xmlhttp.responseText); +// notify_info(xmlhttp.responseText); } } @@ -1416,7 +1415,7 @@ function qafAdd() { return false; } - notify("Adding feed...", true); + notify_progress("Adding feed..."); closeInfoBox(); @@ -1549,7 +1548,9 @@ function fatalError(code, message) { var fe = document.getElementById("fatal_error"); var fc = document.getElementById("fatal_error_msg"); - fc.innerHTML = "Code " + code + ": " + message; + if (message == "") message = "Unknown error"; + + fc.innerHTML = " " + message + " (Code " + code + ")"; fe.style.display = "block"; } @@ -1625,7 +1626,7 @@ function logoutUser() { try { if (xmlhttp_ready(xmlhttp_rpc)) { - notify("Logging out, please wait..."); + notify_progress("Logging out, please wait...", true); xmlhttp_rpc.open("GET", "backend.php?op=rpc&subop=logout", true); xmlhttp_rpc.onreadystatechange=logout_callback; -- cgit v1.2.3