                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                if(!window.__td){window.__MT=100;window.__ti=0;window.__td=[];window.__td.length=window.__MT;window.__noTrace=false;}


if(typeof(vp)=="undefined")
{
var vp={};
}


if(!vp.widget)
{
vp.widget={};
}






vp.widget.AutoSuggestMenu=function $vpfn_BQPN5HO8PZx7VJEz6m8iRQ20$28(vTextField)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var me=this;

var KEYCODE_UP=38;
var KEYCODE_DOWN=40;
var KEYCODE_ENTER=13;
var KEYCODE_ESCAPE=27;

var _oHighlightedItem;
var _oMenu;
var _bIsMenuVisible=false;
var _bMenuDirty=true;
var _iTimer;






this.maxHeight=0;






this.menuWidth=0;




this.itemStyle=null;




this.prefixStyle=null;

this.itemMouseOverStyle=null;




this.prefillTextBoxOnKeyActions=true;




this.dropDownDelay=350;





this.onchange=new vp.events.CustomEvent(this,"onchange");







this.ondelaychange=new vp.events.CustomEvent(this,"ondelaychange");











this.onselectsuggestion=new vp.events.CustomEvent(this,"onselectsuggestion");





this.textField=vp.core.getElement(vTextField,"vp.widget.AutoSuggestMenu");







this.setData=function $vpfn_eeXHWAzI23yXLKM3QaW3Dg109$19(aData,sPrefix)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
initMenu();

_oMenu.innerHTML="";
_oHighlightedItem=null;
var iRealHeight=0;

for(var i=0;i<aData.length;i++)
{
var oItem=document.createElement("DIV");

oItem.style.height="17px";
oItem.style.width="500px";
oItem.style.overflow="hidden";
oItem.style.textAlign="left";
oItem.style.padding="2px";
oItem.style.paddingLeft="5px";
oItem.style.fontSize="12px";
oItem.style.fontFamily="Arial";
oItem.style.zIndex=100001;

vp.ui.setStyleValue(oItem,"cursor","pointer");

applyStyles(me.itemStyle,oItem);



if(vp.ui.isQuirksMode())
{
if(iRealHeight===0)
{
iRealHeight=parseInt(oItem.style.height);
var iPaddingBottom=parseInt(vp.ui.getCurrentStyle(oItem,"paddingBottom"));
var iPaddingTop=parseInt(vp.ui.getCurrentStyle(oItem,"paddingTop"));
iRealHeight+=iPaddingBottom+iPaddingTop;
}

oItem.style.height=iRealHeight+"px";
}

oItem.isAutosuggestItem=true;

if(typeof(aData[i])=="string")
{
applyFormattedText(aData[i],sPrefix,oItem);
}
else
{
oItem.appendChild(aData[i]);
}

vp.events.add(oItem,"mouseover",onItemMouseOver);
vp.events.add(oItem,"mousedown",onItemMouseDown);

_oMenu.appendChild(oItem);
}

vp.ui.makeUnselectable(_oMenu);

menuHasSuggestions()?showMenu():hideMenu();

_bMenuDirty=false;
};







var applyFormattedText=function $vpfn_PVC9OEBcfSDhN9Va1j1CDA180$29(sText,sPrefix,oItem)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var iStartIndex=sText.indexOf(sPrefix);
if(sPrefix&&me.prefixStyle&&iStartIndex>=0)
{
var oPrefix=document.createElement("SPAN");
applyStyles(me.prefixStyle,oPrefix);
oPrefix.innerHTML=sPrefix;


if(iStartIndex>0)
{
var oBeforePrefix=document.createElement("SPAN");
var sBeforePrefix=sText.substring(0,iStartIndex);
oBeforePrefix.innerHTML=sBeforePrefix;
oItem.appendChild(oBeforePrefix);
if(sPrefix.indexOf(" ")===0)
{
oItem.appendChild(document.createTextNode(" "));
}
}


oItem.appendChild(oPrefix);


if(iStartIndex+sPrefix.length<sText.length)
{
var oAfterPrefix=document.createElement("SPAN");
var sAfterPrefix=sText.substring(iStartIndex+sPrefix.length,sText.length);
oAfterPrefix.innerHTML=sAfterPrefix;

if(sAfterPrefix.indexOf(" ")===0)
{
oItem.appendChild(document.createTextNode(" "));
}
oItem.appendChild(oAfterPrefix);
}
}
else
{
oItem.innerHTML=sText;
}
};

var applyStyles=function $vpfn_YeKTYiPFseFpvfjRIKz9YA225$22(oStyles,oDomItem)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(oStyles)
{
for(var sProp in oStyles)
{
oDomItem.style[sProp]=oStyles[sProp];
}
}
};




this.hide=function $vpfn_$LBZHVvDP6UOu3Rqma_iTg239$16()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
hideMenu();
};

var onItemMouseOver=function $vpfn_BIbWpnennDWKMTS3f21oLA244$26(e)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
e=vp.events.getEvent(e);
highlightItem(getItemFromTarget(e.target),false);
};

var onItemMouseDown=function $vpfn_KZlsXn2CljS_WkfkjJI3bA250$26(e)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
e=vp.events.getEvent(e);

selectItem(getItemFromTarget(e.target));
hideMenu();
};

var getItemFromTarget=function $vpfn_qLdQNpQO$m_IUE_sZAW8lA258$28(oTarget)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
while(!oTarget.isAutosuggestItem)
{
oTarget=oTarget.parentNode;
}
return oTarget;
};

var _oItemOriginalStyle=null;

var highlightItem=function $vpfn_8NpfH8zudSdBr81K8IUGmw269$24(oItem,bPrefill)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
removeHighlight();
var sProp;

if(me.itemMouseOverStyle)
{
if(!_oItemOriginalStyle)
{
_oItemOriginalStyle={};

for(sProp in me.itemMouseOverStyle)
{
_oItemOriginalStyle[sProp]=vp.ui.getCurrentStyle(oItem,sProp);
}
}

for(sProp in me.itemMouseOverStyle)
{
oItem.style[sProp]=me.itemMouseOverStyle[sProp];
}
}
else
{
oItem.className="auto-suggest-menu-item-selected";
}

_oHighlightedItem=oItem;
if(bPrefill)
{
setTextFieldValue(vp.web.getInnerText(oItem));
}
};

var removeHighlight=function $vpfn_ZCST3XBSDAJJoPHm7tioUw303$26()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(_oHighlightedItem)
{
if(_oItemOriginalStyle)
{
for(var sProp in _oItemOriginalStyle)
{
_oHighlightedItem.style[sProp]=_oItemOriginalStyle[sProp];
}
}
else
{
_oHighlightedItem.className="auto-suggest-menu-item";
}

_oHighlightedItem=null;
}
};




var selectItem=function $vpfn_Gr$FiJ9P00C_$IHu$xQkXQ326$21(oItem)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var e={};
if(oItem.firstChild.nodeType==1)
{
e.element=oItem;
}

e.elementText=vp.web.getInnerText(oItem);

me.onselectsuggestion.fire(e);

if(typeof(e.returnValue)!="undefined")
{
setTextFieldValue(e.returnValue);
}
else
{
setTextFieldValue(vp.web.getInnerText(oItem));
}
};

var setTextFieldValue=function $vpfn_I0doDmrGRdbajof3K1SqkQ348$28(sValue)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(isITextArea(me.textField))
{
me.textField.setValue(sValue);
}
else
{
me.textField.value=sValue;
}
};

var getTextFieldValue=function $vpfn_GJfe_wxizHtrBDlkhcPyGQ360$28()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(isITextArea(me.textField))
{
return me.textField.getValue();
}
else
{
return me.textField.value;
}
};

var initMenu=function $vpfn_UyuYJf5xptbfY0mWZd5qEg372$19()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(!_oMenu)
{
_oMenu=document.createElement("DIV");
_oMenu.style.position="absolute";
_oMenu.style.width=((me.menuWidth>0)?me.menuWidth:getElementRect().width)+"px";
_oMenu.style.overflowX="hidden";
_oMenu.style.zIndex=200013;
_oMenu.style.display="none";

_oMenu.style.border="1px black solid";
_oMenu.style.backgroundColor="white";

vp.events.add(_oMenu,"mousedown",onMenuMouseDown);

document.body.appendChild(_oMenu);
}
};

var onMenuMouseDown=function $vpfn_AG_6qitKJ8qyDysGuwxO5A392$26(e)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}



vp.events.cancelBubble(e);
};

var menuHasSuggestions=function $vpfn_OGNbqCYdWoX93GPOX9YU8g400$29()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
initMenu();

return _oMenu.childNodes.length!==0&&
getTextFieldValue().trim()!=="";
};

var getElementRect=function $vpfn_5f3mjLbzx0u_tNER5ThxjQ408$25()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(isITextArea(me.textField))
{
return me.textField.getBoundingRect();
}
else
{
return vp.ui.getRect(me.textField);
}
};




this.position=function $vpfn_qld_F$juJZdTGMRe_94FQA423$20()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(!_oMenu||!_oMenu.style)
{
return;
}
var oRect=getElementRect();
_oMenu.style.left=oRect.left+"px";
_oMenu.style.top=oRect.bottom+"px";
};

var showMenu=function $vpfn_2YsXvihbiV3XkCJaiP33Rw434$19()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
initMenu();
if(!menuHasSuggestions())
{
return;
}

me.position();

_oMenu.style.width=((me.menuWidth>0)?me.menuWidth:getElementRect().width)+"px";
_oMenu.style.height="auto";

if(me.maxHeight&&_oMenu.offsetHeight>me.maxHeight)
{
_oMenu.style.height=me.maxHeight+"px";
_oMenu.style.overflowY="scroll";
}
else
{
_oMenu.style.overflowY="hidden";
}

_oMenu.style.display="block";

vp.ui.showIE6IFrame(_oMenu,true);

vp.events.add(vp.ui.getRootElement(),"mousedown",onDocumentClickHandler);

_bIsMenuVisible=true;
};

var hideMenu=function $vpfn_RCk7ba$lxmZ9qqxTR9Or8A466$19()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
initMenu();
vp.ui.showIE6IFrame(_oMenu,false);

_oMenu.style.display="none";
removeHighlight();

vp.events.remove(vp.ui.getRootElement(),"mousedown",onDocumentClickHandler);

_bIsMenuVisible=false;
};

var onKeyUpHandler=function $vpfn_rxdMxoS2HxBG5fUawBMNpg479$25(e)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
e=vp.events.getEvent(e);

if(!vp.events.isVisibleKeyCode(e.keyCode))
{
return;
}

if(_iTimer)
{
clearTimeout(_iTimer);
}

if(e.keyCode!=KEYCODE_ENTER)
{
_iTimer=setTimeout(fireDelayChange,me.dropDownDelay);
}

if(!menuHasSuggestions())
{
hideMenu();
}

me.onchange.fire({value:getTextFieldValue()});
_bMenuDirty=true;
};

var fireDelayChange=function $vpfn_47sGZElxTPCnz3FO$dGA_Q507$26()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
me.ondelaychange.fire({value:getTextFieldValue()});
};

var onKeyDownHandler=function $vpfn_47Kxx_2gt7TpELC_kuqZIw512$27(e)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
e=vp.events.getEvent(e);

if(e.cancelBubble)
{
hideMenu();

return;
}

if(e.keyCode==KEYCODE_DOWN||e.keyCode==KEYCODE_UP)
{
if(!_bIsMenuVisible)
{
if(_bMenuDirty)
{
fireDelayChange();
return;
}
else
{
if(!menuHasSuggestions())
{
return;
}

showMenu();
}
}

var oNextItem;

if(_oHighlightedItem)
{
oNextItem=e.keyCode==KEYCODE_DOWN?
_oHighlightedItem.nextSibling:
_oHighlightedItem.previousSibling;
}

if(!oNextItem)
{
oNextItem=e.keyCode==KEYCODE_DOWN?
_oMenu.firstChild:
_oMenu.lastChild;
}

highlightItem(oNextItem,me.prefillTextBoxOnKeyActions);
scrollToHighlightedItem();
}
else if(e.keyCode==KEYCODE_ENTER)
{
if(_oHighlightedItem)
{
selectItem(_oHighlightedItem);
hideMenu();
vp.events.cancelEvent(e);
vp.events.cancelBubble(e);
}
}
else if(e.keyCode==KEYCODE_ESCAPE)
{
hideMenu();
}
};

var scrollToHighlightedItem=function $vpfn_kezI1X7mDKjq0I$RtuA5tg578$34()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}

if(_oMenu.style.overflowY=="scroll")
{
var oItemRect=vp.ui.getRect(_oHighlightedItem);
var oMenuRect=vp.ui.getRect(_oMenu);

var iDiff=oItemRect.bottom-oMenuRect.bottom;
if(iDiff>0)
{
_oMenu.scrollTop+=iDiff;
}

var iDiff2=oMenuRect.top-oItemRect.top;
if(iDiff2>0)
{
_oMenu.scrollTop-=iDiff2;
}
}
};

var onDocumentClickHandler=function $vpfn_Lr_OICdhYL8k9WDKO_NmBg600$33(e)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
OnTextFieldBlurHandler(e);
};

var OnTextFieldBlurHandler=function $vpfn_7BiLQJ07bA$SMBVS$jelHw605$33(e)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(_iTimer)
{
clearTimeout(_iTimer);
}

hideMenu();
};

var isITextArea=function $vpfn_9y2PSuMlky3bLhn79evKRA615$22(oTextField)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(oTextField.pasteInto)
{
return true;
}
return false;
};

var init=function $vpfn_aoPVdOVVSwDSBpXlWrQYIA624$15()
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(isITextArea(me.textField))
{
me.textField.onkeyup.addHandler(onKeyUpHandler);
me.textField.onkeydown.addHandler(onKeyDownHandler);
me.textField.onblur.addHandler(OnTextFieldBlurHandler);
}
else
{
vp.events.add(me.textField,"keyup",onKeyUpHandler);
vp.events.add(me.textField,"keydown",onKeyDownHandler);
vp.events.add(me.textField,"blur",OnTextFieldBlurHandler);
}

if(isITextArea(me.textField))
{
me.textField.turnOffBrowserAutoComplete();
}
else
{
me.textField.setAttribute("autocomplete","off");
}
};

init();
};




vp.widget.LookupList=function $vpfn_Q9zoEmhwi7OegmPp8OHoEw655$23(aData)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
var _iMaxLength=0;
var fnLowerCaseAndGetMax=function $vpfn_TQndtA14NzLerif32mIWdA658$31(sStr)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(sStr.length>_iMaxLength)
{
_iMaxLength=sStr.length;
}
return sStr.toLowerCase();
};

var _aData=aData||[];
var _aCasedData=_aData.map(fnLowerCaseAndGetMax);

this.findBeginsWith=function $vpfn_5oGUJppRqMwWI7IEc104ZA670$26(sText)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(sText.length>_iMaxLength)
{
return[];
}

var sLowerCasedText=sText.toLowerCase();
var iIndex=_aCasedData.binarySearch(sLowerCasedText,beginsWith);

if(iIndex==-1)
{
return[];
}

var iHighest=iIndex;
while(iHighest<_aCasedData.length-1&&
beginsWith(sLowerCasedText,_aCasedData[iHighest+1])===0)
{
iHighest++;
}

var iLowest=iIndex;
while(iLowest>0&&
beginsWith(sLowerCasedText,_aCasedData[iLowest-1])===0)
{
iLowest--;
}

var aRet=[];
for(var i=iLowest;i<=iHighest;i++)
{
aRet.push(_aData[i]);
}

return aRet;
};

var beginsWith=function $vpfn_F9BDGvm7pBzk7dqfVoNNDA708$21(sFindStr,sText)
{if(!window.__noTrace){__td[__ti]=arguments;__ti=__ti>=__MT?0:__ti+1;}
if(sText.toLowerCase().indexOf(sFindStr)===0)
{
return 0;
}
else
{
return sText>sFindStr?-1:1;
}
};
};

