jQuery.fn.popup=function(H,D,B){$("body").append('<div id="'+H+'" class="popup" style="display:none"><div class="popup-tl"></div><div class="popup-tr"></div><div class="popup-tc"></div><div class="popup-clf"></div><div class="popup-cls"></div><div class="popup-cc"></div><div class="popup-crf"></div><div class="popup-crs"></div><div class="popup-bl"></div><div class="popup-bc"></div><div class="popup-br"></div></div>');var G=$("#"+H);var F={clickOutside:function(){$(this).shake()}};G.get(0).options=$.extend(F,B);G.find(".popup-cc").append(D);var C=this;var E=C.offset();var A=C.width();return G.css("top",(E.top-50)+"px").css("left",(E.left+A)+"px")};jQuery.fn.popIn=function(B){var A=this;$("body").append('<div id="popup-overlay"></div>');$("#popup-overlay").click(function(C){A.get(0).options.clickOutside.call(A,C)});if(jQuery.browser.msie){this.show();if(B){this.each(B)}return this}else{return this.fadeIn(300,B)}};jQuery.fn.popOut=function(A){$("#popup-overlay").remove();if(jQuery.browser.msie){this.hide();if(A){this.each(A)}return this}else{return this.fadeOut(200,A)}};jQuery.fn.popOutAndDispose=function(A){return this.popOut(function(){$(this).disposePopup();if(A){A.call(this)}})};jQuery.fn.disposePopup=function(){return this.each(function(){jQuery(this).remove()})};$.fn.showPopupEditor=function(C,H,M){M=$.extend({cancelLabel:"Cancel",saveLabel:"Save",autoCloseOnSave:true},M);H=$.createElement("div .popup-body",[H,$.createElement("div .popup-buttons",[$.createElement("a .pbutton",[$.createElement("span",M.cancelLabel)]),$.createElement("a .pbutton .submit",[$.createElement("span",M.saveLabel)])])]);if(M.footer){H.append(M.footer)}var A=this.popup(C,H,{clickOutside:function(){$(this).shake()}});var D=A.find("a.pbutton");var F=D.eq(0);var B=D.eq(1);var E=null;function K(O){var N=M?M[O]:undefined;if(N){return N(E)}else{return undefined}}var L=function(){if(K("cancel")!=false){A.popOutAndDispose()}};var I=function(){if(K("save")==false){A.shake()}else{if(M.autoCloseOnSave){A.popOutAndDispose()}}};F.makeButton().click(L);B.makeButton().click(I);if(M.altLabel){var G=function(){if(K("alt")==false){A.shake()}else{A.popOutAndDispose()}};var J=$.createElement("a .pbutton .alt",[$.createElement("span",M.altLabel)]);$(".popup-buttons").prepend(J);J.makeButton().click(G)}var E={popup:A,cancelButton:F,saveButton:B,save:I,cancel:L,alt:G,escape:ifKeyCode(27,L),close:function(){A.popOutAndDispose()}};K("willBecomeVisible");A.popIn();K("didBecomeVisible");return E};$.fn.showConfirmPopup=function(A,B){B=$.extend({cancelLabel:"No",saveLabel:"Yes"},B);$(this).showPopupEditor("confirm",$.createElement("div",A),B)};