diff options
Diffstat (limited to 'lib/gallery.dialog.js')
-rw-r--r-- | lib/gallery.dialog.js | 50 |
1 files changed, 8 insertions, 42 deletions
diff --git a/lib/gallery.dialog.js b/lib/gallery.dialog.js index 26de9bad..0197682b 100644 --- a/lib/gallery.dialog.js +++ b/lib/gallery.dialog.js @@ -1,4 +1,6 @@ + + (function($) { $.widget("ui.gallery_dialog", { _init: function() { @@ -23,7 +25,7 @@ } $("body").append(eDialog); if (!self.options.zIndex) { - self.options.zIndex = 9999; + self.options.zIndex = 9999; } if (!self.options.close) { @@ -36,22 +38,12 @@ $.ajax({ url: sHref, type: "GET", - beforeSend: function(xhr) { - // Until we convert to jquery 1.4, we need to save the XMLHttpRequest object so that we - // can detect the mime type of the reply - this.xhrData = xhr; - }, success: function(data, textStatus, xhr) { - // Pre jquery 1.4, get the saved XMLHttpRequest object - if (xhr == undefined) { - xhr = this.xhrData; - } var mimeType = /^(\w+\/\w+)\;?/.exec(xhr.getResponseHeader("Content-Type")); var content = ""; if (mimeType[1] == "application/json") { - data = JSON.parse(data); - content = data.html; + content = unescape(data.html); } else { content = data; } @@ -75,9 +67,9 @@ }, error: function(xhr, textStatus, errorThrown) { - $("#g-dialog").html(xhr.responseText); - self._set_title(); - self._layout(); + $("#g-dialog").html(xhr.responseText); + self._set_title(); + self._layout(); }, _layout: function() { @@ -134,40 +126,14 @@ _ajaxify_dialog: function() { var self = this; $("#g-dialog form").ajaxForm({ + dataType: "json", beforeSubmit: function(formData, form, options) { form.find(":submit") .addClass("ui-state-disabled") .attr("disabled", "disabled"); return true; }, - beforeSend: function(xhr) { - // Until we convert to jquery 1.4, we need to save the XMLHttpRequest object so that we - // can detect the mime type of the reply - this.xhrData = xhr; - }, success: function(data) { - // Pre jquery 1.4, get the saved XMLHttpRequest object - xhr = this.xhrData; - if (xhr) { - var mimeType = /^(\w+\/\w+)\;?/.exec(xhr.getResponseHeader("Content-Type")); - - var content = ""; - if (mimeType[1] == "application/json") { - data = JSON.parse(data); - } else { - data = {"html": escape(data)}; - } - } else { - // Uploading files (eg: watermark) uses a fake xhr in jquery.form.js so - // all we have is in the data field, which should be some very simple JSON. - // Weirdly enough in Chrome the result gets wrapped in a <pre> element and - // looks like this: - // <pre style="word-wrap: break-word; white-space: pre-wrap;">{"result":"success", - // "location":"\/~bharat\/gallery3\/index.php\/admin\/watermarks"}</pre> - // bizarre. Strip that off before parsing. - data = JSON.parse(data.match("({.*})")[0]); - } - if (data.html) { $("#g-dialog").html(data.html); $("#g-dialog").dialog("option", "position", "center"); |