;(function($){var oldDiv="";$.fn.dd=function(options){$this=this;options=$.extend({height:120,visibleRows:7,rowHeight:23,showIcon:true,zIndex:9999,style:''},options);var selectedValue="";var actionSettings={};actionSettings.insideWindow=true;actionSettings.keyboardAction=false;actionSettings.currentKey=null;var ddList=false;config={postElementHolder:'_msddHolder',postID:'_msdd',postTitleID:'_title',postTitleTextID:'_titletext',postChildID:'_child',postAID:'_msa',postOPTAID:'_msopta',postInputID:'_msinput',postArrowID:'_arrow',postInputhidden:'_inp'};styles={dd:'dd',ddTitle:'ddTitle',arrow:'arrow',ddChild:'ddChild',disbaled:.30};attributes={actions:"onfocus,onblur,onchange,onclick,ondblclick,onmousedown,onmouseup,onmouseover,onmousemove,onmouseout,onkeypress,onkeydown,onkeyup",prop:"size,multiple,disabled,tabindex"};var elementid=$(this).attr("id");var inlineCSS=$(this).attr("style");options.style+=(inlineCSS==undefined)?"":inlineCSS;var allOptions=$(this).children();ddList=($(this).attr("size")>0||$(this).attr("multiple")==true)?true:false;if(ddList){options.visibleRows=$(this).attr("size");};var a_array={};createDropDown();function getPostID(id){return elementid+config[id];};function getOptionsProperties(option){var currentOption=option;var styles=$(currentOption).attr("style");return styles;};function matchIndex(index){var selectedIndex=$("#"+elementid+" option:selected");if(selectedIndex.length>1){for(var i=0;i<selectedIndex.length;i++){if(index==selectedIndex[i].index){return true;};};}else if(selectedIndex.length==1){if(selectedIndex[0].index==index){return true;};};return false;}
function createATags(){var childnodes=allOptions;var aTag="";var aidfix=getPostID("postAID");var aidoptfix=getPostID("postOPTAID");childnodes.each(function(current){var currentOption=childnodes[current];if(currentOption.nodeName=="OPTGROUP"){aTag+="<div class='opta'>";aTag+="<span style='font-weight:bold;font-style:italic; clear:both;'>"+$(currentOption).attr("label")+"</span>";var optChild=$(currentOption).children();optChild.each(function(currentopt){var currentOptOption=optChild[currentopt];var aid=aidoptfix+"_"+(current)+"_"+(currentopt);var arrow=$(currentOptOption).attr("title");arrow=(arrow.length==0)?"":'<img src="'+arrow+'" align="left" /> ';var sText=$(currentOptOption).text();var sValue=$(currentOptOption).val();var sEnabledClass=($(currentOptOption).attr("disabled")==true)?"disabled":"enabled";a_array[aid]={html:arrow+sText,value:sValue,text:sText,index:currentOptOption.index,id:aid};var innerStyle=getOptionsProperties(currentOptOption);if(matchIndex(currentOptOption.index)==true){aTag+='<a href="javascript:void(0);" class="selected '+sEnabledClass+'"';}else{aTag+='<a  href="javascript:void(0);" class="'+sEnabledClass+'"';};if(innerStyle!=false)
aTag+=' style="'+innerStyle+'"';aTag+=' id="'+aid+'">';aTag+=arrow+'<span class="text">'+sText+'</span></a>';});aTag+="</div>";}else{var aid=aidfix+"_"+(current);var arrow=$(currentOption).attr("title");arrow=(arrow.length==0)?"":'<img src="'+arrow+'" align="left" rel="test" /> ';var sText=$(currentOption).text();var sValue=$(currentOption).val();var sEnabledClass=($(currentOption).attr("disabled")==true)?"disabled":"enabled";a_array[aid]={html:arrow+sText,value:sValue,text:sText,index:currentOption.index,id:aid};var innerStyle=getOptionsProperties(currentOption);if(matchIndex(currentOption.index)==true){aTag+='<a href="javascript:void(0);" class="selected '+sEnabledClass+'"';}else{aTag+='<a  href="javascript:void(0);" class="'+sEnabledClass+'"';};if(innerStyle!=false)
aTag+=' style="'+innerStyle+'"';aTag+=' id="'+aid+'">';aTag+=arrow+'<span class="text">'+sText+'</span></a>';};});return aTag;};function createChildDiv(){var id=getPostID("postID");var childid=getPostID("postChildID");var sStyle=options.style;sDiv="";sDiv+='<div id="'+childid+'" class="'+styles.ddChild+'"';if(!ddList){sDiv+=(sStyle!="")?' style="'+sStyle+'"':'';}else{sDiv+=(sStyle!="")?' style="border-top:1px solid #c3c3c3;display:block;position:relative;'+sStyle+'"':'';}
sDiv+='>';return sDiv;};function createTitleDiv(){var titleid=getPostID("postTitleID");var arrowid=getPostID("postArrowID");var titletextid=getPostID("postTitleTextID");var inputhidden=getPostID("postInputhidden");var sText=$("#"+elementid+" option:selected").text();var arrow=$("#"+elementid+" option:selected").attr("title");arrow=(arrow.length==0||arrow==undefined||options.showIcon==false)?"":'<img src="'+arrow+'" align="left" /> ';var sDiv='<div id="'+titleid+'" class="'+styles.ddTitle+'"';sDiv+='>';sDiv+='<span id="'+arrowid+'" class="'+styles.arrow+'"></span><span class="textTitle" id="'+titletextid+'">'+arrow+'<span class="text">'+sText+'</span></span></div>';return sDiv;};function createDropDown(){var changeInsertionPoint=false;var id=getPostID("postID");var titleid=getPostID("postTitleID");var titletextid=getPostID("postTitleTextID");var childid=getPostID("postChildID");var arrowid=getPostID("postArrowID");var iWidth=$("#"+elementid).width();var sStyle=options.style;if($("#"+id).length>0){$("#"+id).remove();changeInsertionPoint=true;}
var sDiv='<div id="'+id+'" class="'+styles.dd+'"';sDiv+=(sStyle!="")?' style="'+sStyle+'"':'';sDiv+='>';if(!ddList)
sDiv+=createTitleDiv();sDiv+=createChildDiv();sDiv+=createATags();sDiv+="</div>";sDiv+="</div>";if(changeInsertionPoint==true){var sid=getPostID("postElementHolder");$("#"+sid).after(sDiv);}else{$("#"+elementid).after(sDiv);}
$("#"+id).css("width",iWidth+"px");$("#"+childid).css("width",(iWidth-2)+"px");if(allOptions.length>options.visibleRows){var margin=parseInt($("#"+childid+" a:first").css("padding-bottom"))+parseInt($("#"+childid+" a:first").css("padding-top"));var iHeight=((options.rowHeight)*options.visibleRows)-margin;$("#"+childid).css("height",iHeight+"px");}
if(changeInsertionPoint==false){setOutOfVision();addNewEvents(elementid);}
if($("#"+elementid).attr("disabled")==true){$("#"+id).css("opacity",styles.disbaled);}else{applyEvents();if(!ddList){$("#"+titleid).bind("mouseover",function(event){hightlightArrow(1);});$("#"+titleid).bind("mouseout",function(event){hightlightArrow(0);});};$("#"+childid+" a.enabled").bind("click",function(event){event.preventDefault();manageSelection(this);if(!ddList){$("#"+childid).unbind("mouseover");setInsideWindow(false);var sText=(options.showIcon==false)?$(this).text():$(this).html();setTitleText(sText);closeMe();};setValue();});$("#"+childid+" a.disabled").css("opacity",styles.disbaled);if(ddList){$("#"+childid).bind("mouseover",function(event){if(!actionSettings.keyboardAction){actionSettings.keyboardAction=true;$(document).bind("keydown",function(event){var keyCode=event.keyCode;actionSettings.currentKey=keyCode;if(keyCode==39||keyCode==40){event.preventDefault();event.stopPropagation();next();setValue();};if(keyCode==37||keyCode==38){event.preventDefault();event.stopPropagation();previous();setValue();};});}});};$("#"+childid).bind("mouseout",function(event){setInsideWindow(false);$(document).unbind("keydown");actionSettings.keyboardAction=false;actionSettings.currentKey=null;});if(!ddList){$("#"+titleid).bind("click",function(event){setInsideWindow(false);if($("#"+childid+":visible").length==1){$("#"+childid).unbind("mouseover");}else{$("#"+childid).bind("mouseover",function(event){setInsideWindow(true);});openMe();};});};$("#"+titleid).bind("mouseout",function(evt){setInsideWindow(false);})};};function getByIndex(index){for(var i in a_array){if(a_array[i].index==index){return a_array[i];}}}
function manageSelection(obj){var childid=getPostID("postChildID");if(!ddList){$("#"+childid+" a.selected").removeClass("selected");}
var selectedA=$("#"+childid+" a.selected").attr("id");if(selectedA!=undefined){var oldIndex=(actionSettings.oldIndex==undefined||actionSettings.oldIndex==null)?a_array[selectedA].index:actionSettings.oldIndex;};if(obj&&!ddList){$(obj).addClass("selected");};if(ddList){var keyCode=actionSettings.currentKey;if($("#"+elementid).attr("multiple")==true){if(keyCode==17){actionSettings.oldIndex=a_array[$(obj).attr("id")].index;$(obj).toggleClass("selected");}else if(keyCode==16){$("#"+childid+" a.selected").removeClass("selected");$(obj).addClass("selected");var currentSelected=$(obj).attr("id");var currentIndex=a_array[currentSelected].index;for(var i=Math.min(oldIndex,currentIndex);i<=Math.max(oldIndex,currentIndex);i++){$("#"+getByIndex(i).id).addClass("selected");}}else{$("#"+childid+" a.selected").removeClass("selected");$(obj).addClass("selected");actionSettings.oldIndex=a_array[$(obj).attr("id")].index;};}else{$("#"+childid+" a.selected").removeClass("selected");$(obj).addClass("selected");actionSettings.oldIndex=a_array[$(obj).attr("id")].index;};};};function addNewEvents(id){document.getElementById(id).refresh=function(e){$("#"+this.id).dd(options);};};function setInsideWindow(val){actionSettings.insideWindow=val;};function getInsideWindow(){return actionSettings.insideWindow;};function applyEvents(){var mainid=getPostID("postID");var actions_array=attributes.actions.split(",");for(var iCount=0;iCount<actions_array.length;iCount++){var action=actions_array[iCount];var actionFound=$("#"+elementid).attr(action);if(actionFound!=undefined){switch(action){case"onfocus":$("#"+mainid).bind("mouseenter",function(event){document.getElementById(elementid).focus();});break;case"onclick":$("#"+mainid).bind("click",function(event){document.getElementById(elementid).onclick();});break;case"ondblclick":$("#"+mainid).bind("dblclick",function(event){document.getElementById(elementid).ondblclick();});break;case"onmousedown":$("#"+mainid).bind("mousedown",function(event){document.getElementById(elementid).onmousedown();});break;case"onmouseup":$("#"+mainid).bind("mouseup",function(event){document.getElementById(elementid).onmouseup();});break;case"onmouseover":$("#"+mainid).bind("mouseover",function(event){document.getElementById(elementid).onmouseover();});break;case"onmousemove":$("#"+mainid).bind("mousemove",function(event){document.getElementById(elementid).onmousemove();});break;case"onmouseout":$("#"+mainid).bind("mouseout",function(event){document.getElementById(elementid).onmouseout();});break;};};};};function setOutOfVision(){var sId=getPostID("postElementHolder");$("#"+elementid).after("<div style='height:0px;overflow:hidden;position:absolute;' id='"+sId+"'></div>");$("#"+elementid).appendTo($("#"+sId));};function setTitleText(sText){var titletextid=getPostID("postTitleTextID");$("#"+titletextid).html(sText);};function next(){var titletextid=getPostID("postTitleTextID");var childid=getPostID("postChildID");var allAs=$("#"+childid+" a.enabled");for(var current=0;current<allAs.length;current++){var currentA=allAs[current];var id=$(currentA).attr("id");if($(currentA).hasClass("selected")&&current<allAs.length-1){$("#"+childid+" a.selected").removeClass("selected");$(allAs[current+1]).addClass("selected");var selectedA=$("#"+childid+" a.selected").attr("id");if(!ddList){var sText=(options.showIcon==false)?a_array[selectedA].text:a_array[selectedA].html;setTitleText(sText);}
if(parseInt(($("#"+selectedA).position().top+$("#"+selectedA).height()))>=parseInt($("#"+childid).height())){$("#"+childid).scrollTop(($("#"+childid).scrollTop())+$("#"+selectedA).height()+$("#"+selectedA).height());};break;};};};function previous(){var titletextid=getPostID("postTitleTextID");var childid=getPostID("postChildID");var allAs=$("#"+childid+" a.enabled");for(var current=0;current<allAs.length;current++){var currentA=allAs[current];var id=$(currentA).attr("id");if($(currentA).hasClass("selected")&&current!=0){$("#"+childid+" a.selected").removeClass("selected");$(allAs[current-1]).addClass("selected");var selectedA=$("#"+childid+" a.selected").attr("id");if(!ddList){var sText=(options.showIcon==false)?a_array[selectedA].text:a_array[selectedA].html;setTitleText(sText);}
if(parseInt(($("#"+selectedA).position().top+$("#"+selectedA).height()))<=0){$("#"+childid).scrollTop(($("#"+childid).scrollTop()-$("#"+childid).height())-$("#"+selectedA).height());};break;};};};function setValue(){var childid=getPostID("postChildID");var allSelected=$("#"+childid+" a.selected");if(allSelected.length==1){var sText=$("#"+childid+" a.selected").text();var selectedA=$("#"+childid+" a.selected").attr("id");if(selectedA!=undefined){var sValue=a_array[selectedA].value;document.getElementById(elementid).selectedIndex=a_array[selectedA].index;};}else if(allSelected.length>1){var alls=$("#"+elementid+" > option:selected").removeAttr("selected");for(var i=0;i<allSelected.length;i++){var selectedA=$(allSelected[i]).attr("id");var index=a_array[selectedA].index;document.getElementById(elementid).options[index].selected="selected";};};};function openMe(){var childid=getPostID("postChildID");if(oldDiv!=""&&childid!=oldDiv){$("#"+oldDiv).slideUp("fast");$("#"+oldDiv).css({zIndex:'0'});};if($("#"+childid).css("display")=="none"){selectedValue=a_array[$("#"+childid+" a.selected").attr("id")].text;$(document).bind("keydown",function(event){var keyCode=event.keyCode;if(keyCode==39||keyCode==40){event.preventDefault();event.stopPropagation();next();};if(keyCode==37||keyCode==38){event.preventDefault();event.stopPropagation();previous();};if(keyCode==27||keyCode==13){closeMe();setValue();};if($("#"+elementid).attr("onkeydown")!=undefined){document.getElementById(elementid).onkeydown();};});$(document).bind("keyup",function(event){if($("#"+elementid).attr("onkeyup")!=undefined){document.getElementById(elementid).onkeyup();};});$(document).bind("mouseup",function(evt){if(getInsideWindow()==false){closeMe();}});$("#"+childid).css({zIndex:options.zIndex});$("#"+childid).slideDown("fast");if(childid!=oldDiv){oldDiv=childid;}};};function closeMe(){var childid=getPostID("postChildID");$(document).unbind("keydown");$(document).unbind("keyup");$(document).unbind("mouseup");$("#"+childid).slideUp("fast",function(event){checkMethodAndApply();$("#"+childid).css({zIndex:'0'});});};function checkMethodAndApply(){var childid=getPostID("postChildID");if($("#"+elementid).attr("onchange")!=undefined){var currentSelectedValue=a_array[$("#"+childid+" a.selected").attr("id")].text;if(selectedValue!=currentSelectedValue){document.getElementById(elementid).onchange();};}
if($("#"+elementid).attr("onmouseup")!=undefined){document.getElementById(elementid).onmouseup();}
if($("#"+elementid).attr("onblur")!=undefined){$(document).bind("mouseup",function(evt){$("#"+elementid).focus();$("#"+elementid)[0].blur();setValue();$(document).unbind("mouseup");});};};function hightlightArrow(ison){var arrowid=getPostID("postArrowID");if(ison==1)
$("#"+arrowid).css({backgroundPosition:'0 100%'});else
$("#"+arrowid).css({backgroundPosition:'0 0'});};};$.fn.msDropDown=function(properties){var dds=$(this);for(var iCount=0;iCount<dds.length;iCount++){var id=$(dds[iCount]).attr("id");if(properties==undefined){$("#"+id).dd();}else{$("#"+id).dd(properties);};};};})(jQuery);
