+ exception_error("toggle_pub", e);
+ }
+}
+
+function fatal_error(code, msg) {
+ try {
+
+ if (code == 6) {
+ window.location.href = "digest.php";
+ } else if (code == 5) {
+ window.location.href = "update.php";
+ } else {
+
+ if (msg == "") msg = "Unknown error";
+
+ console.error("Fatal error: " + code + "\n" +
+ msg);
+
+ }
+
+ } catch (e) {
+ exception_error("fatalError", e);
+ }
+}
+
+function fatal_error_check(transport) {
+ try {
+ if (transport.responseXML) {
+ var error = transport.responseXML.getElementsByTagName("error")[0];
+
+ if (error) {
+ var code = error.getAttribute("error-code");
+ var msg = error.getAttribute("error-msg");
+ if (code != 0) {
+ fatal_error(code, msg);
+ return false;
+ }
+ }
+ }
+ } catch (e) {
+ exception_error("fatal_error_check", e);
+ }
+ return true;
+}
+
+function feed_mi(elem) {
+ try {
+ var imgs = elem.getElementsByTagName('IMG');
+ var spans = elem.getElementsByTagName('SPAN');
+
+ for (var i = 0; i < imgs.length; i++) {
+ if (imgs[i].className == "dismiss")
+ Element.show(imgs[i]);
+ }
+
+ for (var i = 0; i < spans.length; i++) {
+ if (spans[i].className == "unread")
+ Element.hide(spans[i]);
+ }
+
+
+ } catch (e) {
+ exception_error("feed_mi", e);
+ }
+}
+
+function feed_mo(elem) {
+ try {
+ var imgs = elem.getElementsByTagName('IMG');
+ var spans = elem.getElementsByTagName('SPAN');
+
+ for (var i = 0; i < imgs.length; i++) {
+ if (imgs[i].className == "dismiss")
+ Element.hide(imgs[i]);
+ }
+
+ for (var i = 0; i < spans.length; i++) {
+ if (spans[i].className == "unread")
+ Element.show(spans[i]);
+ }
+
+ } catch (e) {
+ exception_error("feed_mo", e);
+ }
+}
+
+function update_title(unread) {
+ try {
+ document.title = "Tiny Tiny RSS";
+
+ if (unread > 0)
+ document.title += " (" + unread + ")";
+
+ } catch (e) {
+ exception_error("update_title", e);