(function(a){
/*!
 * mcDropdown jQuery Plug-in
 *
 * Copyright 2008 Giva, Inc. (http://www.givainc.com/labs/)
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *	http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 * Date: 2009-10-29
 * Rev:	 1.2.10
 */
a.fn.mcDropdown=function(f,e){var d;this.each(function(){d=a.data(this,"mcDropdown");if(d){return false}new a.mcDropDownMenu(this,f,e)});return d||this};a.mcDropdown={version:"1.2.10",setDefaults:function(d){a.extend(b,d)}};var b={minRows:8,maxRows:25,targetColumnSize:2,openFx:"slideDown",openSpeed:250,closeFx:"slideUp",closeSpeed:250,hoverOverDelay:200,hoverOutDelay:0,showFx:"show",showSpeed:0,hideFx:"hide",hideSpeed:0,dropShadow:true,autoHeight:true,lineHeight:19,screenPadding:10,allowParentSelect:false,delim:":",showACOnEmptyFocus:false,valueAttr:"rel",click:null,select:null,init:null};var c=(a.browser.version&&a.browser.version<=6);a.mcDropDownMenu=function(V,x,A){var p,ac=this,G,g,W,q="",h,H,C,j,w,T=false;p=a(V);w=p.is(":input");W=a.extend({},b,A);if(W.click==null){W.click=function(af,ag,ae){ag.setValue(this[0].getAttribute(ae.valueAttr))}}a(document).bind("click",function(ah){var ae=a(ah.target);var ag=ae.parents().filter(function(){return this===G[0]||(!!C&&C[0]===this)});if(ag.length){var af=ae.is(".mc_parent");if(af&&C&&ag[0]===C[0]){clearTimeout(s);B(ae.find("> ul > li:first"),false);ah.stopPropagation();return false}else{if(!W.allowParentSelect&&af){return false}}if(ae.not(".mc_root")){Y.apply(ae.parent().parent()[0],[ah])}if(W.click!=null&&W.click.apply(ae,[ah,ac,W])==false){return false}}ac.closeMenu()});G=(((typeof x=="object")&&!!x.jquery))?x:a(x);G.appendTo("body").css({position:"absolute",top:-10000,left:-10000}).find("ul").andSelf().css("display","block").each(function(){var ae=a(this);ae.data("width",ae[0].clientWidth)}).css({top:0,left:0,display:"none"});G.find("> li").addClass("mc_root");a("li > ul",G).parent().addClass("mc_parent");g=a('<div class="mcdropdown"><a href="#" tabindex="-1"></a><input type="hidden" name="'+(V.name||V.id)+'" id="'+(V.id||V.name)+'" /></div>').appendTo(a('<div style="position: relative;"></div>')).parent();var L=p.replaceWith(g).attr({id:"",name:""});var v=g.find(":input");g=g.find(".mcdropdown").prepend(L);var E=g.clone().css({position:"absolute",top:-9999999,left:-999999,visibility:"visible"}).show().appendTo("body");var l={width:E.width()-a("a",E).width(),height:E.outerHeight()};E.remove();a.data(v[0],"mcDropdown",ac);g.parent().height(l.height);if(a.browser.safari){setTimeout(function(){p.width(g.width()-a("a",g).width())},100)}p.width(l.width).filter(":input").attr("autocomplete","off").bind("keypress",ab).bind("mousedown",function(ae){a(this).triggerHandler("focus");ae.stopPropagation();return false}).bind("contextmenu",function(){return false}).bind("focus",I).bind("blur",u);if(a.browser.msie||a.browser.safari){p.bind("keydown",function(ae){if(",8,9,37,38,39,40,".indexOf(","+ae.keyCode+",")>-1){return ab(ae)}})}a("a",g).bind("click",function(ae){if(T){return false}ac.openMenu(ae);return false});this.setValue=function(ag,af){v.val(ag);var ae=R(ag);if(W.select!=null&&af!=true){W.select.apply(ac,[ag,ae])}return p[w?"val":"text"](ae)};if(w){this.setValue(p.attr("defaultValue"),true)}this.getValue=function(ae){return[v.val(),p[w?"val":"text"]()]};this.openMenu=function(af){if(G.is(":visible")){return(!!af)?ac.closeMenu():false}function ae(){D(G).hide();f(G);m(g.parent(),G,true);G.find(".mc_hover").removeClass("mc_hover");G[W.openFx](W.openSpeed,function(){P(G)});if(c&&!!a.fn.bgIframe){G.bgIframe()}}if(af){ae()}else{setTimeout(ae,1)}};this.closeMenu=function(ae){G.find("ul:visible").parent().each(function(){Y.apply(this)});e(G);G[W.closeFx](W.closeSpeed)};this.focus=function(){p.focus()};this.disable=function(ae){T=!!ae;g[T?"addClass":"removeClass"]("mcdropdownDisabled");L.attr("disabled",T?"disabled":"")};function i(ae){return ae.contents()[0]?a.trim(ae.contents()[0].nodeValue):""}function t(af){if(af.length==0){return[]}var ae=[i(af)];af.parents().each(function(){var ag=a(this);if(this===G[0]){return false}else{if(ag.is("li")){ae.push(i(ag))}}});return ae.reverse()}function ad(ae){return t(J(ae))}function R(ae){return ad(ae).join(W.delim)}function F(af){var ae=[],ag=(arguments.length>1)?++arguments[1]:1;a("> li",af).each(function(){var ai=a(this);var ah=a("> ul",this);ae.push({name:i(ai),element:this,children:(ah.length)?F(ah,ag):[]})});return ae}function f(ae){e(ae);a("> li",ae).bind("mouseover",S).bind("mouseout",X)}function e(ae){a("> li",ae).unbind("mouseover",S).unbind("mouseout",X)}function P(ae){var ag=O(ae,true);var af=U();if(ag.bottom>af.y){a("html,body").animate({scrollTop:"+="+((ag.bottom-af.y)+W.screenPadding)+"px"})}}function S(af){var ae=this;var ag=a.data(ae,"timer");if(!isNaN(ag)){clearTimeout(ag)}a(this).addClass("mc_hover");a.data(ae,"timer",setTimeout(function(){N.apply(ae)},W.hoverOverDelay))}function X(af){var ae=this;var ag=a.data(ae,"timer");if(!isNaN(ag)){clearTimeout(ag)}a(this).removeClass("mc_hover");a.data(ae,"timer",setTimeout(function(){var ah=a(ae);setTimeout(function(){if(ah.parent().find("> li.mc_hover").length==0){ah.parents("li").each(function(){var ai=this;clearTimeout(a.data(ai,"timer"));Y.apply(ai);if(a(this).siblings().filter(".mc_hover").length>0){return false}})}},W.hoverOverDelay);Y.apply(ae)},W.hoverOutDelay));if(c){af.stopPropagation()}}function k(af){var ae=p.data("shadows");if(!ae){ae={}}if(!ae[af]){ae[af]=a('<div class="mcdropdown_shadow"></div>').appendTo("body");if(!!a.fn.bgIframe){ae[af].bgIframe()}p.data("shadows",ae)}return ae[af]}function N(){var af=this;var ag=a("> ul",this);if(ag.is(":visible")||(ag.length==0)){return false}a(this).parent().find("> li ul:visible").not(ag).parent().each(function(){Y.apply(this)});D(ag);f(ag);var ak=ag.parents("ul").length;var aj=U();var ai=O(a(this));ag.css({top:ai.bottom,left:ai.marginLeft}).show();var ae=ag.outerHeight()+ag.offset().top;if(ae>aj.y){ag.css("top",ai.bottom-(ae-aj.y)-W.screenPadding)}var ah=function(){if(W.dropShadow){var al=k(ak);var am=O(ag);al.css({top:am.top+am.marginTop,left:am.left+am.marginLeft,width:am.width,height:am.height}).insertAfter(ag).show();a.data(af,"shadow",al)}};if(W.showSpeed<=0){ah()}else{ag.hide()[W.showFx](W.showSpeed,ah)}}function Y(){var ae=a("> ul",this);if(ae.is(":hidden")||(ae.length==0)){return false}if(W.dropShadow&&a.data(this,"shadow")){a.data(this,"shadow").hide()}if(c){ae.css("visibility","hidden").parent().removeClass("mc_hover")}ae.stop()[W.hideFx](W.hideSpeed)}function O(ae,ag){var af=false;if(ae.is(":hidden")){af=!!ae.css("visibility","hidden").show()}var ah=a.extend(ae[ag===true?"offset":"position"](),{width:ae.outerWidth(),height:ae.outerHeight(),marginLeft:parseInt(a.curCSS(ae[0],"marginLeft",true),10)||0,marginRight:parseInt(a.curCSS(ae[0],"marginRight",true),10)||0,marginTop:parseInt(a.curCSS(ae[0],"marginTop",true),10)||0,marginBottom:parseInt(a.curCSS(ae[0],"marginBottom",true),10)||0});if(ah.marginTop<0){ah.top+=ah.marginTop}if(ah.marginLeft<0){ah.left+=ah.marginLeft}ah.bottom=ah.top+ah.height;ah.right=ah.left+ah.width;if(af){ae.hide().css("visibility","visible")}return ah}function m(af,ae,ag){var ah=O(af,ag);ae.css({position:"absolute",top:ah.bottom,left:ah.left});return ah.bottom}function U(){var ae={scrollLeft:a(window).scrollLeft(),scrollTop:a(window).scrollTop(),width:a(window).width(),height:a(window).height()};ae.x=ae.scrollLeft+ae.width;ae.y=ae.scrollTop+ae.height;return ae}function n(ag,af){var ah=af=="height"?"Top":"Left",ae=af=="height"?"Bottom":"Right";return(parseInt("0"+a.curCSS(ag,"border"+ah+"Width",true),10)+parseInt("0"+a.curCSS(ag,"border"+ae+"Width",true),10)+parseInt("0"+a.curCSS(ag,"padding"+ah,true),10)+parseInt("0"+a.curCSS(ag,"padding"+ae,true),10)+parseInt("0"+a.curCSS(ag,"margin"+ah,true),10)+parseInt("0"+a.curCSS(ag,"margin"+ae,true),10))}function Z(ae,ah){if(!ae.data("dimensions")){var ag=g.outerWidth();var af=((ae===G)&&(ae.data("width")*ah<ag))?Math.floor(ag/ah):ae.data("width");ae.data("dimensions",{column:af,item:af-n(ae.children().eq(0)[0],"width"),height:ae.height()})}return ae.data("dimensions")}function K(ae){if(W.autoHeight===false){return W.lineHeight}if(!ae.data("height")){ae.data("height",ae.outerHeight())}return ae.data("height")}function D(ao){var an=ao.find("> li");var ai=an.length;var aj=Math.ceil(ai/W.maxRows);var al=!!arguments[1]?arguments[1]:(ai<=W.minRows)?1:(aj>W.targetColumnSize)?aj:W.targetColumnSize;var af=Z(ao,al);var ah=0;var ak=0;var ag=0;var am=Math.ceil(ai/al);var ae=ao.parent("li").width();ao.css({visibility:"hidden",display:"block"});an.each(function(ar){var aq=ar+1;var ap=Math.floor((aq/ai)*al);var at=Math.floor((ar/ai)*al);var av=a(this);var au;if(ah!=at){au=(ak+1)*-1;ak=0}else{au=0}ak+=(K(av)||W.lineHeight);av.css({marginLeft:(af.column*at),marginTop:au,width:af.item})[((ap>at)||(aq==ai))?"addClass":"removeClass"]("mc_endcol")[(au!=0)?"addClass":"removeClass"]("mc_firstrow");if(ak>ag){ag=ak}ah=at});if((ao!==G)&&(ag+(W.screenPadding*2)>=U().height)){return D(ao,al+1)}ao.css("visibility","visible").height(ag);return ao}function J(ae){return G.find("li["+W.valueAttr+"='"+ae+"']")}function z(){return J(v.val())}function I(ak){var ah=z();var ai=p.val().toLowerCase();var al=ai.toLowerCase().split(W.delim);var ae=al.pop();var ag=ai.lastIndexOf(W.delim)+1;q=al.join(W.delim)+(al.length>0?W.delim:"");setTimeout(function(){Q(p[0],ag,ag+ae.length)},0);if(!C){C=a('<ul class="mcdropdown_autocomplete"></ul>').appendTo("body");if(c&&!!a.fn.bgIframe){j=a("<div></div>").bgIframe().appendTo("body")}}var aj=!(W.showACOnEmptyFocus&&(q.length==0));var af=(ah.length==0||ah.hasClass("mc_root"))?G.find("> li"):ah.parent().find("> li");r(af,aj)}var s;function u(ae){s=setTimeout(function(){var af=z();if(!W.allowParentSelect&&af.is(".mc_parent")){var ag=af.find("li:not('.mc_parent'):first").attr(W.valueAttr);ac.setValue(ag,true)}if(W.select!=null){W.select.apply(ac,ac.getValue())}M()},200)}function r(aj,ah){var af=(aj===H),ai=af?C.find("> li").removeClass("mc_hover mc_hover_parent mc_firstrow"):aj.clone().removeAttr("style").removeClass("mc_hover mc_hover_parent mc_firstrow mc_endcol").filter(":last").addClass("mc_endcol").end();if(!af||C.is(":hidden")){C.empty().append(ai).width(g.outerWidth()-n(C[0],"width")).css("height","auto");m(g.parent(),C,true);ai.hover(function(){C.find("> li").removeClass("mc_hover_parent mc_hover");a(this).addClass("mc_hover")},function(){a(this).removeClass("mc_hover")});ai.find("> ul").css("display","none");C.show().css("visibility",(ah===true)?"hidden":"visible");if(c){var ag=parseInt(C.css("max-height"),10)||0;if((ag>0)&&(ag<C.outerHeight())){C.height(ag)}if(!!a.fn.bgIframe){m(g.parent(),j.css({height:C.outerHeight(),width:C.width()},true).show())}}if(ah!==true){P(C)}}if(ah===true){C.css({top:"-10000px",left:"-10000px"});if(c&&!!a.fn.bgIframe){j.css("display","none")}}var ae=C.find("li["+W.valueAttr+"='"+v.val()+"']");ae.addClass("mc_hover"+(ae.is(".mc_parent")?"_parent":""));if(ae.length>0&&(ah!=true)){d(ae)}H=h=aj}function M(){if(c&&!!a.fn.bgIframe&&j){j.hide()}if(C){C.hide()}}function ab(al){var an=String.fromCharCode(al.keyCode||al.charCode).toLowerCase();var ae=z();var ak=(ae.length==0||ae.hasClass("mc_root"))?G.find("> li"):ae.parent().find("> li");var aj=q.split(W.delim);var ag=aj.pop();var af=ag+an;var ah=o(p[0]).toLowerCase();var am=p.val().toLowerCase();if(al.keyCode==38){y(-1);return false}else{if(al.keyCode==40){y(1);return false}else{if(al.keyCode==27){q="";ac.setValue("");r(G.find("> li"));return false}else{if(al.keyCode==8||al.keyCode==37){af=(al.keyCode==37)?"":ag.substring(0,ag.length-1);if(ah==ag){ag=""}if(aj.length>0&&ag.length==0){B(ae.parent().parent());return false}else{if(ah==am){q="";ac.setValue("");return false}}}else{if(al.keyCode==9||al.keyCode==13||al.keyCode==39||an==W.delim){var ai=ae.find("> ul > li:first");if(ai.length>0){B(ai)}else{if(a.browser.msie){Q(p[0],0,0)}if(al.keyCode==9){p.triggerHandler("blur");M();return true}else{p.trigger("blur");M()}}return false}else{if(ah==am){q="";af=an}}}}}}h=aa(ak,af);if(h.length>0){q=aj.join(W.delim)+(aj.length>0?W.delim:"")+af;B(h.eq(0),true)}else{af=af.length?af.substring(0,af.length-1):"";h=aa(ak,af);if(h.length>0){r(h)}else{M()}}al.preventDefault();return false}function y(ag){var af=z(),ae,ah=0;if(af.length==0){af=h.filter(".mc_hover, .mc_hover_parent")}if(af.length==0||C.is(":hidden")){af=h.eq(0);ag=0}h.each(function(ai){if(this===af[0]){ah=ai;return false}});if(!h||h.length==0||af.length==0){return false}ah=ah+ag;if(ah<0){ah=h.length-1}else{if(ah>=h.length){ah=0}}ae=h.eq(ah);B(ae,true)}function aa(ae,ag){var af=a([]);ae.each(function(){var ai=a(this),ah=i(ai);if(ah.substring(0,ag.length).toLowerCase()==ag){af=af.add(ai)}});return af}function B(ai,ag){var af=ag?h:(ai.length==0||ai.hasClass("mc_root"))?G.find("> li"):ai.parent().find("> li");var ah=t(ai);var ae=ah.pop().toLowerCase();if(!ag){q=ah.join(W.delim).toLowerCase()+(ah.length>0?W.delim:"")}ac.setValue(ai.attr(W.valueAttr),true);Q(p[0],q.length,ae.length+q.length);af.filter(".mc_hover,.mc_hover_parent").removeClass("mc_hover mc_hover_parent");ai.addClass("mc_hover"+(ai.is(".mc_parent")?"_parent":""));r(af)}function o(af){var ag="";if(af.setSelectionRange){ag=af.value.substring(af.selectionStart,af.selectionEnd)}else{if(document.selection){var ae=document.selection.createRange();if(ae.parentElement()==af){ag=ae.text}}}return ag}function Q(ag,ah,af){if(ag.createTextRange){var ae=ag.createTextRange();ae.collapse(true);ae.moveStart("character",ah);ae.moveEnd("character",af);ae.select()}else{if(ag.setSelectionRange){ag.setSelectionRange(ah,af)}else{if(ag.selectionStart){ag.selectionStart=ah;ag.selectionEnd=af}}}ag.focus()}function d(af,ae){var ah=af[0];var ai=C[0];var ag={pTop:parseInt(C.css("paddingTop"),10)||0,pBottom:parseInt(C.css("paddingBottom"),10)||0,bTop:parseInt(C.css("borderTopWidth"),10)||0,bBottom:parseInt(C.css("borderBottomWidth"),10)||0};if((ah.offsetTop+ah.offsetHeight)>(ai.scrollTop+ai.clientHeight)){ai.scrollTop=af.offset().top+(ai.scrollTop-C.offset().top)-((ai.clientHeight/((ae==true)?2:1))-(af.outerHeight()+ag.pBottom))}else{if(ah.offsetTop-ag.bTop-ag.bBottom<=(ai.scrollTop+ag.pTop+ag.pBottom)){ai.scrollTop=af.offset().top+(ai.scrollTop-C.offset().top)-ag.pTop}}}if(W.init!=null){W.init.apply(ac,[L,v,G])}}})(jQuery);
