summaryrefslogtreecommitdiff
path: root/lib/gallery.dialog.js
diff options
context:
space:
mode:
authorAndy Staudacher <andy.st@gmail.com>2009-11-15 19:44:47 -0800
committerAndy Staudacher <andy.st@gmail.com>2009-11-15 19:44:47 -0800
commit0733dc37fda27a5ba35f9020edf3c66aa41a95a0 (patch)
tree6877946232f1b01b1c8709054c689f6658cef34f /lib/gallery.dialog.js
parent218493c50be9362d4abed6900a816308fee5d978 (diff)
parent9379308f91a476f790fb8d444536719535c584e4 (diff)
Merge commit 'upstream/master'
Conflicts: modules/gallery/tests/xss_data.txt
Diffstat (limited to 'lib/gallery.dialog.js')
-rw-r--r--lib/gallery.dialog.js80
1 files changed, 44 insertions, 36 deletions
diff --git a/lib/gallery.dialog.js b/lib/gallery.dialog.js
index 39c451e3..3587108c 100644
--- a/lib/gallery.dialog.js
+++ b/lib/gallery.dialog.js
@@ -15,75 +15,75 @@
_show: function(sHref) {
var self = this;
- var eDialog = '<div id="gDialog"></div>';
+ var eDialog = '<div id="g-dialog"></div>';
$("body").append(eDialog);
if (!self.options.close) {
self.options.close = self.close_dialog;
}
- $("#gDialog").dialog(self.options);
+ $("#g-dialog").dialog(self.options);
- $("#gDialog").gallery_show_loading();
+ $("#g-dialog").gallery_show_loading();
$.get(sHref, function(data) {
- $("#gDialog").html(data).gallery_show_loading();
+ $("#g-dialog").html(data).gallery_show_loading();
- if ($("#gDialog form").length) {
- self.form_loaded(null, $("#gDialog form"));
+ if ($("#g-dialog form").length) {
+ self.form_loaded(null, $("#g-dialog form"));
}
self._layout();
- $("#gDialog").dialog("open");
+ $("#g-dialog").dialog("open");
// Remove titlebar for progress dialogs or set title
- if ($("#gDialog #gProgress").length) {
+ if ($("#g-dialog #g-progress").length) {
$(".ui-dialog-titlebar").remove();
- } else if ($("#gDialog h1").length) {
- $("#gDialog").dialog('option', 'title', $("#gDialog h1:eq(0)").html());
- } else if ($("#gDialog fieldset legend").length) {
- $("#gDialog").dialog('option', 'title', $("#gDialog fieldset legend:eq(0)").html());
+ } else if ($("#g-dialog h1").length) {
+ $("#g-dialog").dialog('option', 'title', $("#g-dialog h1:eq(0)").html());
+ } else if ($("#g-dialog fieldset legend").length) {
+ $("#g-dialog").dialog('option', 'title', $("#g-dialog fieldset legend:eq(0)").html());
}
- if ($("#gDialog form").length) {
+ if ($("#g-dialog form").length) {
self._ajaxify_dialog();
}
});
- $("#gDialog").dialog("option", "self", self);
+ $("#g-dialog").dialog("option", "self", self);
},
_layout: function() {
var dialogWidth;
- var dialogHeight = $("#gDialog").height();
- var cssWidth = new String($("#gDialog form").css("width"));
+ var dialogHeight = $("#g-dialog").height();
+ var cssWidth = new String($("#g-dialog form").css("width"));
var childWidth = cssWidth.replace(/[^0-9]/g,"");
var size = $.gallery_get_viewport_size();
- if ($("#gDialog iframe").length) {
+ if ($("#g-dialog iframe").length) {
dialogWidth = size.width() - 100;
// Set the iframe width and height
- $("#gDialog iframe").width("100%").height(size.height() - 100);
- } else if ($("#gDialog .gDialogPanel").length) {
+ $("#g-dialog iframe").width("100%").height(size.height() - 100);
+ } else if ($("#g-dialog .g-dialog-panel").length) {
dialogWidth = size.width() - 100;
- $("#gDialog").dialog("option", "height", size.height() - 100);
+ $("#g-dialog").dialog("option", "height", size.height() - 100);
} else if (childWidth == "" || childWidth > 300) {
dialogWidth = 500;
}
- $("#gDialog").dialog('option', 'width', dialogWidth);
+ $("#g-dialog").dialog('option', 'width', dialogWidth);
},
form_loaded: function(event, ui) {
// Should be defined (and localized) in the theme
MSG_CANCEL = MSG_CANCEL || 'Cancel';
- var eCancel = '<a href="#" class="gCancel">' + MSG_CANCEL + '</a>';
- if ($("#gDialog .submit").length) {
- $("#gDialog .submit").addClass("ui-state-default ui-corner-all");
+ var eCancel = '<a href="#" class="g-cancel g-left">' + MSG_CANCEL + '</a>';
+ if ($("#g-dialog .submit").length) {
+ $("#g-dialog .submit").addClass("ui-state-default ui-corner-all");
$.fn.gallery_hover_init();
- $("#gDialog .submit").parent().append(eCancel);
- $("#gDialog .gCancel").click(function(event) {
- $("#gDialog").dialog("close");
+ $("#g-dialog .submit").parent().append(eCancel);
+ $("#g-dialog .g-cancel").click(function(event) {
+ $("#g-dialog").dialog("close");
event.preventDefault();
});
}
- $("#gDialog .ui-state-default").hover(
+ $("#g-dialog .ui-state-default").hover(
function() {
$(this).addClass("ui-state-hover");
},
@@ -94,23 +94,31 @@
},
close_dialog: function(event, ui) {
- var self = $("#gDialog").dialog("option", "self");
- if ($("#gDialog form").length) {
- self._trigger("form_closing", null, $("#gDialog form"));
+ var self = $("#g-dialog").dialog("option", "self");
+ if ($("#g-dialog form").length) {
+ self._trigger("form_closing", null, $("#g-dialog form"));
}
- self._trigger("dialog_closing", null, $("#gDialog"));
- $("#gDialog").dialog("destroy").remove();
+ self._trigger("dialog_closing", null, $("#g-dialog"));
+ $("#g-dialog").dialog("destroy").remove();
},
_ajaxify_dialog: function() {
var self = this;
- $("#gDialog form").ajaxForm({
+ $("#g-dialog form").ajaxForm({
dataType: "json",
+ beforeSubmit: function(formData, form, options) {
+ form.find(":submit")
+ .addClass("ui-state-disabled")
+ .attr("disabled", "disabled");
+ return true;
+ },
success: function(data) {
if (data.form) {
- $("#gDialog form").replaceWith(data.form);
+ $("#g-dialog form").replaceWith(data.form);
+ $("#g-dialog form :submit").removeClass("ui-state-disabled")
+ .attr("disabled", null);
self._ajaxify_dialog();
- self.form_loaded(null, $("#gDialog form"));
+ self.form_loaded(null, $("#g-dialog form"));
if (typeof data.reset == 'function') {
eval(data.reset + '()');
}