(function(D){var C=D.browser.msie&&parseInt(D.browser.version)==6&&typeof window.XMLHttpRequest!="object",E=null,B=D.browser.opera&&parseInt(D.browser.version)>=9.5,A=[];
D.modal=function(G,F){return D.modal.impl.init(G,F)
};
D.modal.close=function(){D.modal.impl.close()
};
D.fn.modal=function(F){return D.modal.impl.init(this,F)
};
D.modal.defaults={appendTo:"form",focus:true,opacity:50,overlayId:"simplemodal-overlay",overlayCss:{},containerId:"simplemodal-container",containerCss:{},dataId:"simplemodal-data",dataCss:{},minHeight:200,minWidth:300,maxHeight:null,maxWidth:null,autoResize:false,autoPosition:true,zIndex:1000,close:true,closeHTML:'<a class="modalCloseImg" title="Close"></a>',closeClass:"simplemodal-close",escClose:true,overlayClose:false,position:null,persist:false,onOpen:null,onShow:null,onClose:null};
D.modal.impl={o:null,d:{},init:function(H,F){var G=this;
if(G.d.data){return false
}E=D.browser.msie&&!D.boxModel;
G.o=D.extend({},D.modal.defaults,F);
G.zIndex=G.o.zIndex;
G.occb=false;
if(typeof H=="object"){H=H instanceof jQuery?H:D(H);
if(H.parent().parent().size()>0){G.d.parentNode=H.parent();
if(!G.o.persist){G.d.orig=H.clone(true)
}}}else{if(typeof H=="string"||typeof H=="number"){H=D("<div></div>").html(H)
}else{alert("SimpleModal Error: Unsupported data type: "+typeof H);
return G
}}G.create(H);
H=null;
G.open();
if(D.isFunction(G.o.onShow)){G.o.onShow.apply(G,[G.d])
}return G
},create:function(G){var F=this;
A=F.getDimensions();
if(C){F.d.iframe=D('<iframe src="javascript:false;"></iframe>').css(D.extend(F.o.iframeCss,{display:"none",opacity:0,position:"fixed",height:A[0],width:A[1],zIndex:F.o.zIndex,top:0,left:0})).appendTo(F.o.appendTo)
}F.d.overlay=D("<div></div>").attr("id",F.o.overlayId).addClass("simplemodal-overlay").css(D.extend(F.o.overlayCss,{display:"none",opacity:F.o.opacity/100,height:A[0],width:A[1],position:"fixed",left:0,top:0,zIndex:F.o.zIndex+1})).appendTo(F.o.appendTo);
F.d.container=D("<div></div>").attr("id",F.o.containerId).addClass("simplemodal-container").css(D.extend(F.o.containerCss,{display:"none",position:"fixed",zIndex:F.o.zIndex+2})).append(F.o.close&&F.o.closeHTML?D(F.o.closeHTML).addClass(F.o.closeClass):"").appendTo(F.o.appendTo);
F.d.wrap=D("<div></div>").attr("tabIndex",-1).addClass("simplemodal-wrap").css({height:"100%",outline:0,width:"100%"}).appendTo(F.d.container);
F.d.data=G.attr("id",G.attr("id")||F.o.dataId).addClass("simplemodal-data").css(D.extend(F.o.dataCss,{display:"none"})).appendTo(F.o.appendTo);
G=null;
F.setContainerDimensions();
F.d.data.appendTo(F.d.wrap);
if(C||E){F.fixIE()
}},bindEvents:function(){var F=this;
D("."+F.o.closeClass).bind("click.simplemodal",function(G){G.preventDefault();
F.close()
});
if(F.o.close&&F.o.overlayClose){F.d.overlay.bind("click.simplemodal",function(G){G.preventDefault();
F.close()
})
}D(document).bind("keydown.simplemodal",function(G){if(F.o.focus&&G.keyCode==9){F.watchTab(G)
}else{if((F.o.close&&F.o.escClose)&&G.keyCode==27){G.preventDefault();
F.close()
}}});
D(window).bind("resize.simplemodal",function(){A=F.getDimensions();
F.setContainerDimensions(true);
if(C||E){F.fixIE()
}else{F.d.iframe&&F.d.iframe.css({height:A[0],width:A[1]});
F.d.overlay.css({height:A[0],width:A[1]})
}})
},unbindEvents:function(){D("."+this.o.closeClass).unbind("click.simplemodal");
D(document).unbind("keydown.simplemodal");
D(window).unbind("resize.simplemodal");
this.d.overlay.unbind("click.simplemodal")
},fixIE:function(){var F=this,G=F.o.position;
D.each([F.d.iframe||null,F.d.overlay,F.d.container],function(R,K){if(K){var P="document.body.clientHeight",T="document.body.clientWidth",V="document.body.scrollHeight",S="document.body.scrollLeft",N="document.body.scrollTop",J="document.body.scrollWidth",I="document.documentElement.clientHeight",Q="document.documentElement.clientWidth",O="document.documentElement.scrollLeft",W="document.documentElement.scrollTop",X=K[0].style;
X.position="absolute";
if(R<2){X.removeExpression("height");
X.removeExpression("width");
X.setExpression("height",""+V+" > "+P+" ? "+V+" : "+P+' + "px"');
X.setExpression("width",""+J+" > "+T+" ? "+J+" : "+T+' + "px"')
}else{var M,H;
if(G&&G.constructor==Array){var U=G[0]?typeof G[0]=="number"?G[0].toString():G[0].replace(/px/,""):K.css("top").replace(/px/,"");
M=U.indexOf("%")==-1?U+" + (t = "+W+" ? "+W+" : "+N+') + "px"':parseInt(U.replace(/%/,""))+" * (("+I+" || "+P+") / 100) + (t = "+W+" ? "+W+" : "+N+') + "px"';
if(G[1]){var L=typeof G[1]=="number"?G[1].toString():G[1].replace(/px/,"");
H=L.indexOf("%")==-1?L+" + (t = "+O+" ? "+O+" : "+S+') + "px"':parseInt(L.replace(/%/,""))+" * (("+Q+" || "+T+") / 100) + (t = "+O+" ? "+O+" : "+S+') + "px"'
}}else{M="("+I+" || "+P+") / 2 - (this.offsetHeight / 2) + (t = "+W+" ? "+W+" : "+N+') + "px"';
H="("+Q+" || "+T+") / 2 - (this.offsetWidth / 2) + (t = "+O+" ? "+O+" : "+S+') + "px"'
}X.removeExpression("top");
X.removeExpression("left");
X.setExpression("top",M);
X.setExpression("left",H)
}}})
},focus:function(I){var G=this,H=I||"first";
var F=D(":input:enabled:visible:"+H,G.d.wrap);
F.length>0?F.focus():G.d.wrap.focus()
},getDimensions:function(){var G=D(window);
var F=D.browser.opera&&D.browser.version>"9.5"&&D.fn.jquery<="1.2.6"?document.documentElement.clientHeight:D.browser.opera&&D.browser.version<"9.5"&&D.fn.jquery>"1.2.6"?window.innerHeight:G.height();
return[F,G.width()]
},getVal:function(F){return F=="auto"?0:F.indexOf("%")>0?F:parseInt(F.replace(/px/,""))
},setContainerDimensions:function(I){var K=this;
if(!I||(I&&K.o.autoResize)){var J=K.getVal(K.d.container.css("height")),F=K.getVal(K.d.container.css("width")),L=K.d.data.outerHeight(true),H=K.d.data.outerWidth(true);
var G=K.o.maxHeight&&K.o.maxHeight<A[0]?K.o.maxHeight:A[0],M=K.o.maxWidth&&K.o.maxWidth<A[1]?K.o.maxWidth:A[1];
if(!J){if(!L){J=K.o.minHeight
}else{if(L>G){J=G
}else{if(L<K.o.minHeight){J=K.o.minHeight
}else{J=L
}}}}else{J=J>G?G:J
}if(!F){if(!H){F=K.o.minWidth
}else{if(H>M){F=M
}else{if(H<K.o.minWidth){F=K.o.minWidth
}else{F=H
}}}}else{F=F>M?M:F
}K.d.container.css({height:J,width:F});
if(L>J||H>F){K.d.wrap.css({overflow:"visible"})
}}if(K.o.autoPosition){K.setPosition()
}},setPosition:function(){var G=this,I,H,J=(A[0]/2)-(G.d.container.outerHeight(true)/2),F=(A[1]/2)-(G.d.container.outerWidth(true)/2);
if(G.o.position&&Object.prototype.toString.call(G.o.position)==="[object Array]"){I=G.o.position[0]||J;
H=G.o.position[1]||F
}G.d.container.css({left:H,top:I})
},watchTab:function(G){var F=this;
if(D(G.target).parents(".simplemodal-container").length>0){F.inputs=D(":input:enabled:visible:first, :input:enabled:visible:last",F.d.data[0]);
if((!G.shiftKey&&G.target==F.inputs[F.inputs.length-1])||(G.shiftKey&&G.target==F.inputs[0])||F.inputs.length==0){G.preventDefault();
var H=G.shiftKey?"last":"first";
setTimeout(function(){F.focus(H)
},10)
}}else{G.preventDefault();
setTimeout(function(){F.focus()
},10)
}},open:function(){var F=this;
F.d.iframe&&F.d.iframe.show();
if(D.isFunction(F.o.onOpen)){F.o.onOpen.apply(F,[F.d])
}else{F.d.overlay.show();
F.d.container.show();
F.d.data.show()
}F.focus();
F.bindEvents()
},close:function(){var F=this;
if(!F.d.data){return false
}F.unbindEvents();
if(D.isFunction(F.o.onClose)&&!F.occb){F.occb=true;
F.o.onClose.apply(F,[F.d])
}else{if(F.d.parentNode){if(F.o.persist){F.d.data.hide().appendTo(F.d.parentNode)
}else{if(B){ph.replaceWith(F.d.orig);
F.d.data.hide().remove()
}else{F.d.data.hide().remove();
ph.replaceWith(F.d.orig)
}}}else{F.d.data.hide().remove()
}F.d.container.hide().remove();
F.d.overlay.hide().remove();
F.d.iframe&&F.d.iframe.hide().remove();
F.d={}
}}}
})(jQuery);
