(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);