summaryrefslogtreecommitdiffstats
path: root/install/ui/ipa.js
diff options
context:
space:
mode:
authorAlexander Bokovoy <abokovoy@redhat.com>2012-10-04 15:05:17 +0300
committerMartin Kosek <mkosek@redhat.com>2012-10-09 10:18:40 +0200
commit6f45de10d7251f4b3da8e28575c535f911c10ac6 (patch)
tree33ba0ef143c5402c9242d0f238c94448c825e5f3 /install/ui/ipa.js
parent0575e680137ef3da1722370ccb595f2758f728a0 (diff)
downloadfreeipa-6f45de10d7251f4b3da8e28575c535f911c10ac6.tar.gz
freeipa-6f45de10d7251f4b3da8e28575c535f911c10ac6.tar.xz
freeipa-6f45de10d7251f4b3da8e28575c535f911c10ac6.zip
support multi-line error messages in exceptions
Diffstat (limited to 'install/ui/ipa.js')
-rw-r--r--install/ui/ipa.js31
1 files changed, 25 insertions, 6 deletions
diff --git a/install/ui/ipa.js b/install/ui/ipa.js
index 45195bc49..e20d3c08a 100644
--- a/install/ui/ipa.js
+++ b/install/ui/ipa.js
@@ -1419,6 +1419,25 @@ IPA.error_dialog = function(spec) {
that.visible_buttons = spec.visible_buttons || ['retry', 'cancel'];
};
+ that.beautify_message = function(container, message) {
+ var lines = message.split(/\n/g);
+ var line_span;
+ for(var i=0; i<lines.length; i++) {
+ // multi-lined text may contain TAB character as first char of the line
+ // to hint at marking the whole line differently
+ if (lines[i].charAt(0) == '\t') {
+ line_span = $('<p />', {
+ 'class': 'error-message-hinted',
+ text: lines[i].substr(1)
+ }).appendTo(container);
+ } else {
+ line_span = $('<p />', {
+ text: lines[i]
+ }).appendTo(container);
+ }
+ }
+ };
+
that.create = function() {
if (that.error_thrown.url) {
$('<p/>', {
@@ -1426,9 +1445,9 @@ IPA.error_dialog = function(spec) {
}).appendTo(that.container);
}
- $('<p/>', {
- html: that.error_thrown.message
- }).appendTo(that.container);
+ var error_message = $('<div />', {});
+ that.beautify_message(error_message, that.error_thrown.message);
+ error_message.appendTo(that.container);
if(that.errors && that.errors.length > 0) {
//render errors
@@ -1457,9 +1476,9 @@ IPA.error_dialog = function(spec) {
for(var i=0; i < that.errors.length; i++) {
var error = that.errors[i];
if(error.message) {
- var error_div = $('<li />', {
- text: error.message
- }).appendTo(errors_container);
+ var error_div = $('<li />', {});
+ that.beautify_message(error_div, error.message);
+ error_div.appendTo(errors_container);
}
}