/*
* jQuery blockUI plugin
* Version 2.35 (23-SEP-2010)
* @requires jQuery v1.2.3 or later
*
* Examples at: http://malsup.com/jquery/block/
* Copyright (c) 2007-2008 M. Alsup
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
*
* Thanks to Amir-Hossein Sobhi for some excellent contributions!
*/
(function(m){if(/1\.(0|1|2)\.(0|1|2)/.test(m.fn.jquery)||/^1.1/.test(m.fn.jquery)){alert("blockUI requires jQuery v1.2.3 or later!  You are using v"+m.fn.jquery);return}m.fn._fadeIn=m.fn.fadeIn;var f=function(){};var i=document.documentMode||0;var k=m.browser.msie&&((m.browser.version<8&&!i)||i<8);var l=m.browser.msie&&/MSIE 6.0/.test(navigator.userAgent)&&!i;m.blockUI=function(p){g(window,p)};m.unblockUI=function(p){a(window,p)};m.growlUI=function(q,p,r,s){var t=m('<div class="growlUI"></div>');if(q){t.append("<h1>"+q+"</h1>")}if(p){t.append("<h2>"+p+"</h2>")}if(r==undefined){r=3000}m.blockUI({message:t,fadeIn:700,fadeOut:1000,centerY:false,timeout:r,showOverlay:false,onUnblock:s,css:m.blockUI.defaults.growlCSS})};m.fn.block=function(p){return this.unblock({fadeOut:0}).each(function(){if(m.css(this,"position")=="static"){this.style.position="relative"}if(m.browser.msie){this.style.zoom=1}g(this,p)})};m.fn.unblock=function(p){return this.each(function(){a(this,p)})};m.blockUI.version=2.35;m.blockUI.defaults={message:"<h1>Please wait...</h1>",title:null,draggable:true,theme:false,css:{padding:0,margin:0,width:"30%",top:"40%",left:"35%",textAlign:"center",color:"#000",border:"3px solid #aaa",backgroundColor:"#fff",cursor:"wait"},themedCSS:{width:"30%",top:"40%",left:"35%"},overlayCSS:{backgroundColor:"#000",opacity:0.6,cursor:"wait"},growlCSS:{width:"350px",top:"10px",left:"",right:"10px",border:"none",padding:"5px",opacity:0.6,cursor:"default",color:"#fff",backgroundColor:"#000","-webkit-border-radius":"10px","-moz-border-radius":"10px","border-radius":"10px"},iframeSrc:/^https/i.test(window.location.href||"")?"javascript:false":"about:blank",forceIframe:false,baseZ:1000,centerX:true,centerY:true,allowBodyStretch:true,bindEvents:true,constrainTabKey:true,fadeIn:200,fadeOut:400,timeout:0,showOverlay:true,focusInput:true,applyPlatformOpacityRules:true,onBlock:null,onUnblock:null,quirksmodeOffsetHack:4,blockMsgClass:"blockMsg"};var d=null;var o=[];function g(J,F){var D=(J==window);var r=F&&F.message!==undefined?F.message:undefined;F=m.extend({},m.blockUI.defaults,F||{});F.overlayCSS=m.extend({},m.blockUI.defaults.overlayCSS,F.overlayCSS||{});var L=m.extend({},m.blockUI.defaults.css,F.css||{});var q=m.extend({},m.blockUI.defaults.themedCSS,F.themedCSS||{});r=r===undefined?F.message:r;if(D&&d){a(window,{fadeOut:0})}if(r&&typeof r!="string"&&(r.parentNode||r.jquery)){var v=r.jquery?r[0]:r;var E={};m(J).data("blockUI.history",E);E.el=v;E.parent=v.parentNode;E.display=v.style.display;E.position=v.style.position;if(E.parent){E.parent.removeChild(v)}}var A=F.baseZ;var x=(m.browser.msie||F.forceIframe)?m('<iframe class="blockUI" style="z-index:'+(A++)+';display:none;border:none;margin:0;padding:0;position:absolute;width:100%;height:100%;top:0;left:0" src="'+F.iframeSrc+'"></iframe>'):m('<div class="blockUI" style="display:none"></div>');var M=m('<div class="blockUI blockOverlay" style="z-index:'+(A++)+';display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0"></div>');var N,G;if(F.theme&&D){G='<div class="blockUI '+F.blockMsgClass+' blockPage ui-dialog ui-widget ui-corner-all" style="z-index:'+A+';display:none;position:fixed"><div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">'+(F.title||"&nbsp;")+'</div><div class="ui-widget-content ui-dialog-content"></div></div>'}else{if(F.theme){G='<div class="blockUI '+F.blockMsgClass+' blockElement ui-dialog ui-widget ui-corner-all" style="z-index:'+A+';display:none;position:absolute"><div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">'+(F.title||"&nbsp;")+'</div><div class="ui-widget-content ui-dialog-content"></div></div>'}else{if(D){G='<div class="blockUI '+F.blockMsgClass+' blockPage" style="z-index:'+A+';display:none;position:fixed"></div>'}else{G='<div class="blockUI '+F.blockMsgClass+' blockElement" style="z-index:'+A+';display:none;position:absolute"></div>'}}}N=m(G);if(r){if(F.theme){N.css(q);N.addClass("ui-widget-content")}else{N.css(L)}}if(!F.applyPlatformOpacityRules||!(m.browser.mozilla&&/Linux/.test(navigator.platform))){M.css(F.overlayCSS)}M.css("position",D?"fixed":"absolute");if(m.browser.msie||F.forceIframe){x.css("opacity",0)}var p=[x,M,N],B=D?m("form"):m(J);m.each(p,function(){this.appendTo(B)});if(F.theme&&F.draggable&&m.fn.draggable){N.draggable({handle:".ui-dialog-titlebar",cancel:"li"})}var u=k&&(!m.boxModel||m("object,embed",D?null:J).length>0);if(l||u){if(D&&F.allowBodyStretch&&m.boxModel){m("html,body").css("height","100%")}if((l||!m.boxModel)&&!D){var K=c(J,"borderTopWidth"),P=c(J,"borderLeftWidth");var H=K?"(0 - "+K+")":0;var I=P?"(0 - "+P+")":0}m.each([x,M,N],function(Q,S){var t=S[0].style;t.position="absolute";if(Q<2){D?t.setExpression("height","Math.max(document.body.scrollHeight, document.body.offsetHeight) - (jQuery.boxModel?0:"+F.quirksmodeOffsetHack+') + "px"'):t.setExpression("height",'this.parentNode.offsetHeight + "px"');D?t.setExpression("width",'jQuery.boxModel && document.documentElement.clientWidth || document.body.clientWidth + "px"'):t.setExpression("width",'this.parentNode.offsetWidth + "px"');if(I){t.setExpression("left",I)}if(H){t.setExpression("top",H)}}else{if(F.centerY){if(D){t.setExpression("top",'(document.documentElement.clientHeight || document.body.clientHeight) / 2 - (this.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"')}t.marginTop=0}else{if(!F.centerY&&D){var R=(F.css&&F.css.top)?parseInt(F.css.top):0;var z="((document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "+R+') + "px"';t.setExpression("top",z)}}}})}if(r){if(F.theme){N.find(".ui-widget-content").append(r)}else{N.append(r)}if(r.jquery||r.nodeType){m(r).show()}}if((m.browser.msie||F.forceIframe)&&F.showOverlay){x.show()}if(F.fadeIn){var O=F.onBlock?F.onBlock:f;var C=(F.showOverlay&&!r)?O:f;var w=r?O:f;if(F.showOverlay){M._fadeIn(F.fadeIn,C)}if(r){N._fadeIn(F.fadeIn,w)}}else{if(F.showOverlay){M.show()}if(r){N.show()}if(F.onBlock){F.onBlock()}}n(1,J,F);if(D){d=N[0];o=m(":input:enabled:visible",d);if(F.focusInput){setTimeout(e,20)}}else{j(N[0],F.centerX,F.centerY)}if(F.timeout){var y=setTimeout(function(){D?m.unblockUI(F):m(J).unblock(F)},F.timeout);m(J).data("blockUI.timeout",y)}}function a(r,p){var v=(r==window);var u=m(r);var s=u.data("blockUI.history");var t=u.data("blockUI.timeout");if(t){clearTimeout(t);u.removeData("blockUI.timeout")}p=m.extend({},m.blockUI.defaults,p||{});n(0,r,p);var q;if(v){q=m("form").children().filter(".blockUI").add("body > .blockUI")}else{q=m(".blockUI",r)}if(v){d=o=null}if(p.fadeOut){q.fadeOut(p.fadeOut);setTimeout(function(){h(q,s,p,r)},p.fadeOut)}else{h(q,s,p,r)}}function h(r,s,q,p){r.each(function(t,u){if(this.parentNode){this.parentNode.removeChild(this)}});if(s&&s.el){s.el.style.display=s.display;s.el.style.position=s.position;if(s.parent){s.parent.appendChild(s.el)}m(p).removeData("blockUI.history")}if(typeof q.onUnblock=="function"){q.onUnblock(p,q)}}function n(q,r,p){var u=r==window,t=m(r);if(!q&&(u&&!d||!u&&!t.data("blockUI.isBlocked"))){return}if(!u){t.data("blockUI.isBlocked",q)}if(!p.bindEvents||(q&&!p.showOverlay)){return}var s="mousedown mouseup keydown keypress";q?m(document).bind(s,p,b):m(document).unbind(s,b)}function b(q){if(q.keyCode&&q.keyCode==9){if(d&&q.data.constrainTabKey){var t=o;var p=!q.shiftKey&&q.target==t[t.length-1];var r=q.shiftKey&&q.target==t[0];if(p||r){setTimeout(function(){e(r)},10);return false}}}var s=q.data;if(m(q.target).parents("div."+s.blockMsgClass).length>0){return true}return m(q.target).parents().children().filter("div.blockUI").length==0}function e(q){if(!o){return}var p=o[q===true?o.length-1:0];if(p){p.focus()}}function j(u,w,z){var r=u.parentNode,q=u.style;var A=((r.offsetWidth-u.offsetWidth)/2)-c(r,"borderLeftWidth");var v=((r.offsetHeight-u.offsetHeight)/2)-c(r,"borderTopWidth");if(w){q.left=A>0?(A+"px"):"0"}if(z){q.top=v>0?(v+"px"):"0"}}function c(r,q){return parseInt(m.css(r,q))||0}})(jQuery);
