summaryrefslogtreecommitdiff
path: root/lib/gallery.dialog.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/gallery.dialog.js')
-rw-r--r--lib/gallery.dialog.js87
1 files changed, 44 insertions, 43 deletions
diff --git a/lib/gallery.dialog.js b/lib/gallery.dialog.js
index e3597eab..6c2993fd 100644
--- a/lib/gallery.dialog.js
+++ b/lib/gallery.dialog.js
@@ -2,56 +2,53 @@
$.widget("ui.gallery_dialog", {
_init: function() {
var self = this;
- this.element.click(function(event){
- event.preventDefault();
- var element = event.currentTarget;
- var sHref = $(element).attr("href");
- var sTitle = $(element).attr("title");
- var eDialog = '<div id="gDialog"></div>';
-
- $("body").append(eDialog);
+ if (!self.options.immediate) {
+ this.element.click(function(event) {
+ event.preventDefault();
+ self._show($(event.currentTarget).attr("href"));
+ return false;
+ });
+ } else {
+ self._show(this.element.attr("href"));
+ }
+ },
- if (!self.options.close) {
- self.options.close = self.close_dialog;
- }
- $("#gDialog").dialog(self.options);
+ _show: function(sHref) {
+ var self = this;
+ var eDialog = '<div id="gDialog"></div>';
- $("#gDialog").gallery_show_loading();
+ $("body").append(eDialog);
- $.get(sHref, function(data) {
- $("#gDialog").html(data).gallery_show_loading();
+ if (!self.options.close) {
+ self.options.close = self.close_dialog;
+ }
+ $("#gDialog").dialog(self.options);
- if ($("#gDialog form").length) {
- self._trigger("form_loaded", null, $("#gDialog form"));
- }
- self._layout();
+ $("#gDialog").gallery_show_loading();
- $("#gDialog").dialog("open");
- // Remove titlebar for progress dialogs or set title
- if ($("#gDialog #gProgress").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());
- }
+ $.get(sHref, function(data) {
+ $("#gDialog").html(data).gallery_show_loading();
- if ($("#gDialog form").length) {
- self._ajaxify_dialog();
- }
- });
- $("#gDialog").dialog("option", "self", self);
- return false;
- });
- },
+ if ($("#gDialog form").length) {
+ self._trigger("form_loaded", null, $("#gDialog form"));
+ }
+ self._layout();
- destroy: function() {
- if ($("#gDialog form").length) {
- this._trigger("form_closing", null, $("#gDialog form"));
- }
- this._trigger("dialog_closing", null, $("#gDialog"));
+ $("#gDialog").dialog("open");
+ // Remove titlebar for progress dialogs or set title
+ if ($("#gDialog #gProgress").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());
+ }
- $("#gDialog").dialog("destroy").remove();
+ if ($("#gDialog form").length) {
+ self._ajaxify_dialog();
+ }
+ });
+ $("#gDialog").dialog("option", "self", self);
},
_layout: function() {
@@ -97,7 +94,11 @@
close_dialog: function (event, ui) {
var self = $("#gDialog").dialog("option", "self");
- self.destroy();
+ if ($("#gDialog form").length) {
+ self._trigger("form_closing", null, $("#gDialog form"));
+ }
+ self._trigger("dialog_closing", null, $("#gDialog"));
+ $("#gDialog").dialog("destroy").remove();
},
_ajaxify_dialog: function() {