(function(a){a.modal={themes:["dark","light","win98","box","telsys"],types:["","notice","warning","error","question"],defaults:{theme:"light",width:300,hideByClick:false},init:function(b){a.modal.settings=a.extend({},a.modal.defaults,b);if(a.inArray(a.modal.settings.theme,a.modal.themes)==-1){a.modal.settings.theme=a.modal.themes[0]}a(window).scroll(a.modal.center);a(window).resize(a.modal.center)},show:function(c){if(a.modal.settings==undefined){a.modal.init()}if(a.modal.windows.length>4){return}var d=a.modal.create(c);a.modal.center();var b=a("#"+d.id);a.overlay.show({loading:false,hideByClick:c.hideByClick,callback:function(){var e=b.find("input[type=text],textarea")[0];b.fadeTo(800,1,function(){if(e){e.focus()}})}})},load:function(b){b=a.extend({},{noclose:false,buttons:"none",type:"",width:"auto",title:"",theme:"box",cache:false,method:"GET"},b);if(b.url==undefined){return}a.overlay.show({loading:true});a.ajax({type:b.method,cache:b.cache,dataType:"html",url:b.url,success:function(c){b.message=c;a.modal.show(b)}})},connectionError:function(){a.modal.show({title:a.modal.connectionError.title,message:a.modal.connectionError.message,type:"error",width:350,noclose:true,buttons:"ok"})},sessionTimeout:function(b){a.modal.show({title:a.modal.sessionTimeout.title,message:a.modal.sessionTimeout.message,type:"warning",width:350,noclose:true,buttons:"ok",func_ok:function(){if(typeof(b)=="function"){b()}}})},windows:[],create:function(h){var d=-1;for(var j=0;j<a.modal.windows.length;j++){if(a.modal.windows[j].number>d){d=a.modal.windows[j].number}}d++;h=a.extend({theme:a.modal.settings.theme,number:d,title:"",message:" ",type:"notice",width:a.modal.settings.width,height:"auto",noclose:false,buttons:"ok",func_ok:undefined,func_yes:undefined,func_no:undefined,id:"modal_"+d.toString()},h);if(a.inArray(h.theme,a.modal.themes)==-1){h.theme=a.modal.settings.theme}if(h.buttons!="none"&&h.buttons!="ok"&&h.buttons!="yes_no"){h.buttons="ok"}if(a.inArray(h.type,a.modal.types)==-1){h.type=""}if(h.width!="auto"){if(isNaN(h.width)){h.width=a.modal.settings.width}if(h.width<a.modal.settings.width){h.width=a.modal.settings.width}if(h.width>800){h.width=800}}if(isNaN(h.height)){h.height="auto"}if(h.height!="auto"&&h.height>600){h.height=600}a.modal.windows.push(h);var n="modal_container modaltheme_"+h.theme;var o="";if(h.title!=""){o+="title"}a("body").append('<div id="'+h.id+'" class="'+n+'" style="width:'+(h.width=="auto"?"100px":h.width+"px")+';"></div>');var k=a("#"+h.id);var l='<div class="'+o+'">';l+='				<div class="modal_lt left"></div>				<div class="modal_t left">';if(h.title){l+='<div class="modal_title"><p>'+h.title+"</p></div>"}l+='</div>				<div class="modal_rt left"></div>						<div class="modal_l left"></div>						<div class="modal_body left">							<div class="modal_message"><div class="modal_inner'+(h.type!=""?" "+h.type:"")+'">'+h.message+"</div></div>";if(h.buttons!="none"){if(h.buttons=="ok"){l+='							<div class="modal_buttons">								<a href="javascript:void(0);" class="modal_ok"></a>							</div>'}if(h.buttons=="yes_no"){l+='							<div class="modal_buttons">								<a href="javascript:void(0);" class="modal_yes"></a>								<a href="javascript:void(0);" class="modal_no"></a>							</div>'}}l+='						</div>						<div class="modal_r left"></div>				<div class="modal_lb left"></div>				<div class="modal_b left"></div>				<div class="modal_rb left"></div>			</div>';if(!h.noclose){l+='<a href="javascript:void(0);" class="modal_close"></a>'}k.html(l);if(!h.noclose){a("#"+h.id+" .modal_close").click(a.modal.close)}if(h.buttons=="ok"){a("#"+h.id+" .modal_ok").click(a.modal.ok)}if(h.buttons=="yes_no"){a("#"+h.id+" .modal_yes").click(a.modal.yes);a("#"+h.id+" .modal_no").click(a.modal.no)}var b=String(a("#"+h.id+" .modal_l").css("border-left-width"));if(b.indexOf("px")!=-1){b=b.replace("px","");b=Number(b)}else{b=0}b+=Number(a("#"+h.id+" .modal_l").width());var f=String(a("#"+h.id+" .modal_r").css("border-right-width"));if(f.indexOf("px")!=-1){f=f.replace("px","");f=Number(f)}else{f=0}f+=Number(a("#"+h.id+" .modal_r").width());if(h.width=="auto"){h.width=(h.noclose?0:8)+a("#"+h.id+" .modal_inner").width()+f+b;k.width(h.width)}var c=h.width-f-b;if(h.title){var m=a("#"+h.id+" .modal_title").width()}a("#"+h.id+" .modal_t").width(c);a("#"+h.id+" .modal_b").width(c);a("#"+h.id+" .modal_body").width(c);var p="auto";if(h.height!="auto"){p=h.height-15-a("#"+h.id+" .modal_t").height()-a("#"+h.id+" .modal_b").height()-a("#"+h.id+" .modal_buttons").height()}if(p!="auto"&&p<60){p="auto"}var g=(!h.noclose&&!h.title)?c-12:c;a("#"+h.id+" .modal_message").width(g).height(p);var e=a("#"+h.id+" .modal_body").height();a("#"+h.id+" .modal_l").height(e);a("#"+h.id+" .modal_r").height(e);if(h.title){if(!h.noclose){c-=12}a("#"+h.id+" .modal_title").width(c);if(m>c){a("#"+h.id+" .modal_title p").attr("title",h.title)}}return h},destroy:function(d){var c=[];var b;while((b=a.modal.windows.shift())){if(b.id!=d.id){c.push(b)}}a.modal.windows=c;a("#"+d.id).fadeOut("fast",function(){a("#"+d.id).remove()});if(a.modal.windows.length==0){a.overlay.hide()}},center:function(){if(a.modal.windows.length==0){return}var j=a(window).height();var f=a(window).width();var d=winY=0;var c=navigator.userAgent.indexOf("MSIE");if(c>0&&navigator.userAgent.charAt(c+5)=="6"){if(document.documentElement&&document.documentElement.scrollTop){d=document.documentElement.scrollTop;winY=document.documentElement.scrollLeft}else{if(document.body){d=document.body.scrollTop;winY=document.body.scrollLeft}}}for(var e=0;e<a.modal.windows.length;e++){var b=a("#"+a.modal.windows[e].id);var h=Math.floor((f-b.width())/2)+winY;var g=Math.floor((j-b.height())/2)+d;if(h<0){h=0}if(g<0){g=0}h+=e*8;g+=e*8;b.css("top",g+"px");b.css("left",h+"px")}},getParams:function(c){for(var b=0;b<a.modal.windows.length;b++){if(a.modal.windows[b].id==c){return a.modal.windows[b]}}return null},getForm:function(g){var b=a("#"+g.id).find("input[type=text],textarea");var f={};for(var e=0;e<b.length;e++){var c=a(b[e]);var d=c.attr("name");if(d==undefined||d==""){d=c.attr("id")}if(d==undefined||d==""){continue}f[d]=c.val()}return f},close:function(){var b=a(this).parents(".modal_container").attr("id");a.modal.destroy(a.modal.getParams(b))},ok:function(){var d=a(this).parents(".modal_container").attr("id");var c=a.modal.getParams(d);var b=a.modal.getForm(c);a.modal.destroy(c);if(c.func_ok!==undefined){c.func_ok(b)}},yes:function(){var d=a(this).parents(".modal_container").attr("id");var c=a.modal.getParams(d);var b=a.modal.getForm(c);a.modal.destroy(c);if(c.func_yes!==undefined){c.func_yes(b)}},no:function(){var c=a(this).parents(".modal_container").attr("id");var b=a.modal.getParams(c);a.modal.destroy(b);if(b.func_no!==undefined){b.func_no()}}}})(jQuery);
