diff --git a/functions.js b/functions.js
index cb38ff37..ebf9232e 100644
--- a/functions.js
+++ b/functions.js
@@ -16,7 +16,43 @@ function is_opera() {
return window.opera;
}
+function exception_error_ext(location, e, ext_info) {
+ var msg = format_exception_error(location, e);
+ var ebc = document.getElementById("xebContent");
+
+ disableHotkeys();
+
+ if (ebc) {
+
+ Element.show("dialog_overlay");
+ Element.show("extendedErrorBox");
+
+ if (ext_info) {
+ if (ext_info.responseText) {
+ ext_info = ext_info.responseText;
+ }
+ }
+
+ ebc.innerHTML =
+ "
Error message:
" +
+ "" + msg + "
" +
+ "Additional information:
" +
+ "";
+
+ } else {
+ alert(msg);
+ }
+}
+
function exception_error(location, e, silent) {
+ var msg = format_exception_error(location, e);
+
+ if (!silent) {
+ alert(msg);
+ }
+}
+
+function format_exception_error(location, e) {
var msg;
if (e.fileName) {
@@ -34,11 +70,10 @@ function exception_error(location, e, silent) {
debug("EXCEPTION: " + msg + "");
- if (!silent) {
- alert(msg);
- }
+ return msg;
}
+
function disableHotkeys() {
hotkeys_enabled = false;
}
@@ -1243,22 +1278,33 @@ function leading_zero(p) {
return s;
}
-function closeInfoBox(cleanup) {
+function closeErrorBox() {
- Element.hide("dialog_overlay");
+ if (Element.visible("extendedErrorBox")) {
+ Element.hide("dialog_overlay");
+
+ Element.hide("extendedErrorBox");
- var box = document.getElementById('infoBox');
- var shadow = document.getElementById('infoBoxShadow');
-
- if (shadow) {
- shadow.style.display = "none";
- } else if (box) {
- box.style.display = "none";
+ enableHotkeys();
}
- if (cleanup) box.innerHTML = " ";
+ return false;
+}
- enableHotkeys();
+function closeInfoBox(cleanup) {
+
+ if (Element.visible("infoBoxShadow")) {
+ Element.hide("dialog_overlay");
+
+ var shadow = document.getElementById('infoBoxShadow');
+ var box = document.getElementById('infoBoxShadow');
+
+ Element.hide(shadow);
+
+ if (cleanup) box.innerHTML = " ";
+
+ enableHotkeys();
+ }
return false;
}
diff --git a/tt-rss.css b/tt-rss.css
index 26c2729c..96502b56 100644
--- a/tt-rss.css
+++ b/tt-rss.css
@@ -2083,3 +2083,38 @@ ul#headlineActionsBody li.insensitive:hover {
cursor : normal;
color : gray;
}
+
+div#extendedErrorBox {
+ left : 25%;
+ top : 70px;
+ width : 50%;
+ z-index : 999;
+ position : absolute;
+ min-width : 600px;
+ background-color : #ffcccc;
+ border : 1px solid #ff0000;
+ font-size : 12px;
+}
+
+div#extendedErrorBox div#xebTitle {
+ background-color : #ff0000;
+ color : white;
+ padding : 4px 2px 4px 10px;
+ color : white;
+ font-weight : bold;
+ font-size : 12px;
+}
+
+div#extendedErrorBox div#xebContent {
+ font-size : 12px;
+ padding : 10px;
+}
+
+div#extendedErrorBox textarea {
+ width : 100%;
+ height : 200px;
+}
+
+div#extendedErrorBox input {
+ margin-bottom : 10px;
+}
diff --git a/tt-rss.php b/tt-rss.php
index f56c1431..8f1dadd9 100644
--- a/tt-rss.php
+++ b/tt-rss.php
@@ -51,6 +51,14 @@
+
+
Fatal Exception
+
+
+
+
+
+