(function($) { $.widget("ui.galleryPanel", { _init: function() { var self = this; this.element.click(function(event) { event.preventDefault(); var element = event.currentTarget; var parent = $(element).parent().parent(); var sHref = $(element).attr("href"); var parentClass = $(parent).attr("class"); var ePanel = ""; if ($("#gPanel").length) { $("#gPanel").slideUp("slow").remove(); if ($(element).attr("orig_text")) { $(element).children(".gButtonText").text($(element).attr("orig_text")); } } else { $(parent).after(ePanel); $("#gPanel td").html(sHref); $.get(sHref, function(data) { $("#gPanel td").html(data); self._ajaxify_panel(); if ($(element).attr("open_text")) { $(element).attr("orig_text", $(element).children(".gButtonText").text()); $(element).children(".gButtonText").text($(element).attr("open_text")); } $("#gPanel").addClass(parentClass).show().slideDown("slow"); }); } return false; }); }, _ajaxify_panel: function () { var self = this; $("#gPanel td form").ajaxForm({ dataType: "json", success: function(data) { if (data.form) { $("#gPanel td form").replaceWith(data.form); self._ajaxify_panel(); } if (data.result == "success") { self._trigger("success", null, {}); if (data.location) { window.location = data.location; } else { window.location.reload(); } } } }); }, success: function(event, ui) {} }); })(jQuery);