
var activeObject=null;var enter=false;var GXLastKeyCode;var GXBShiftPressed;var GXLastEvtControl=null;var GXKeyListener=new Object;var GXDefKeyListener=new Array;var GXKeyHandler=new Object;var GXKeyListenerContext=new Object;var GXSkipOnEnter=false;function setEnterEvent(event)
{document.forms[0]._EventName.value=GXWCP+'EENTER.';if(navigator.appName!="Netscape")
activeObject=document.activeElement;if((activeObject==undefined)&&(event!=undefined)&&event.target)
activeObject=event.target;enter=true;}
function gxcancelEvent(event,cancel)
{if(event.preventDefault==undefined)
{event.cancelBubble=cancel;event.returnValue=!cancel;}
else
{if(cancel)
{event.preventDefault();event.stopPropagation();}}}
function gxSpecialKey(evtKeyCode)
{return((evtKeyCode>0&&evtKeyCode<16)||(evtKeyCode>16&&evtKeyCode<32)||(evtKeyCode>32&&evtKeyCode<41)||evtKeyCode==46)}
function form_onkeypress(xevent,hasenter,skiponenter)
{if((xevent==null)&&(!window.event)){return;}
if((xevent!=null)&&(window.event)){return;}
var event=(xevent==null?window.event:xevent);if(GXFormDisabled==true)
{gxcancelEvent(event,true);if(window.event!=undefined)
event.keyCode=0;return false;}
var cancel;GXLastKeyCode=event.keyCode;GXShiftPressed=event.shiftKey;GXSkipOnEnter=skiponenter;if(gxChkFncKey(event)==true)
return false;activeObject=document.activeElement||event.target||GXLastFocusCtrlRef;gxUpdateLastFocus(activeObject);if(event.keyCode==13)
{if(skiponenter)
{if(gxEnterBtnHasFocus()&&(hasenter||GXWCP.length>0))
setEnterEvent(event);else
{gxSkipFocus();gxcancelEvent(event,true);enter=false;}}
else
{if(hasenter||GXWCP.length>0)
{setEnterEvent(event);}
else
{cancel=true;if(activeObject!=null)
{if(activeObject.nodeName=="A"||activeObject.nodeName=="TEXTAREA")
{cancel=false;}
else if(activeObject.nodeName=="INPUT")
{if(activeObject.attributes.item('type').value=="submit"||activeObject.attributes.item('type').value=="image")
{cancel=false;}}}
gxcancelEvent(event,cancel);enter=false;}}}
if(activeObject.nodeName=="TEXTAREA")
{if(!gxSpecialKey(event.keyCode))
{if(activeObject.nodeName=="TEXTAREA")
var MaxLength=activeObject.getAttribute("maxlength");if(MaxLength>0&&activeObject.value.length>=MaxLength&&gxGetSelection().length==0)
gxcancelEvent(event,true);}}}
function gxUpdateLastFocus(Ctrl)
{if(Ctrl!=null)
{if(Ctrl.nodeName=="A"||Ctrl.nodeName=="TEXTAREA"||Ctrl.nodeName=="INPUT"||Ctrl.nodeName=="IMG")
{GXLastFocusCtrlRef=Ctrl;}}}
function gxGetSelection()
{return(!!document.getSelection)?document.getSelection():(!!window.getSelection)?window.getSelection():document.selection.createRange().text;}
function GX_setevent(Name)
{var cancel;var triggerEvent=ctrlTriggersEvents();if(!document.forms[0]._EventName||((enter==true)&&!triggerEvent))
{return;}
cancel=true;if(enter&&activeObject!=null)
{if(triggerEvent)
{cancel=false;}}
else
{cancel=false;}
if(!cancel)
{document.forms[0]._EventName.value=Name;}}
function ctrlTriggersEvents()
{if(activeObject!=null)
{if(activeObject.nodeName=="A"||activeObject.nodeName=="TEXTAREA")
{return true;}
else if(activeObject.nodeName=="INPUT")
{if(activeObject.attributes.item('type').value=="submit"||activeObject.attributes.item('type').value=="image")
{return true;}}}
return false;}
function GX_setgridevent(GridId,RowId)
{document.forms[0]._EventGridId.value=GridId;document.forms[0]._EventRowId.value=RowId;}
function gxaddKeyListener(EventName,nKey)
{if(nKey==1)
document.body.onhelp=function(){return false;}
if(GXKeyListener[nKey]==undefined)
GXKeyListener[nKey]=new Array();GXKeyListener[nKey]['_']=EventName;if(GXDefKeyListener[nKey]==undefined)
GXDefKeyListener[nKey]={evt:EventName,ctx:''};}
function gxaddKeyHandler(EventName,nKey)
{if(nKey==1)
document.body.onhelp=function(){return false;}
if(GXKeyHandler[nKey]==undefined)
GXKeyHandler[nKey]=new Array();GXKeyHandler[nKey]['_']=EventName;}
function gxaddWCKeyListener(CmpContext,nKey,EventName)
{if(nKey==1)
document.body.onhelp=function(){return false;}
if(GXKeyListener[nKey]==undefined)
GXKeyListener[nKey]=new Array();GXKeyListener[nKey][CmpContext]=EventName;if(GXDefKeyListener[nKey]==undefined)
GXDefKeyListener[nKey]={evt:EventName,ctx:CmpContext};}
function gxaddWCKeyHandler(CmpContext,nKey,EventName)
{if(nKey==1)
document.body.onhelp=function(){return false;}
if(GXKeyHandler[nKey]==undefined)
GXKeyHandler[nKey]=new Array();GXKeyHandler[nKey][CmpContext]=EventName;}
function gxFireEvent(event,EvtName)
{document.forms[0]._EventName.value=EvtName;gxcancelEvent(event,true);if(window.event!=undefined)
event.keyCode=0;gxSubmit();return true;}
function gxChkFncKey(event)
{var fnGXWCP=GXWCP;if(fnGXWCP=='')
fnGXWCP='_';var FncKey=GXLastKeyCode-111;if(GXShiftPressed)
FncKey+=12;if(FncKey>0&&FncKey<=12&&(GXKeyListener[FncKey]!=undefined))
{if(GXKeyListener[FncKey][fnGXWCP]!=undefined)
return gxFireEvent(event,GXWCP+"E'"+GXKeyListener[FncKey][fnGXWCP]+"'.");if(GXDefKeyListener[FncKey]!=undefined)
return gxFireEvent(event,GXDefKeyListener[FncKey].ctx+"E'"+GXDefKeyListener[FncKey].evt+"'.");}
if(FncKey>0&&FncKey<=24&&(GXKeyHandler[FncKey]!=undefined))
{if(GXKeyHandler[FncKey][fnGXWCP]!=undefined)
{if(GXKeyHandler[FncKey][fnGXWCP]=='HELP')
{var Ctrl=GXgetControlRef("BTN_HELP");if(Ctrl==null)
return false;Ctrl.onclick();gxcancelEvent(event,true);if(window.event!=undefined)
event.keyCode=0;return true}
else
{if(GXKeyHandler[FncKey][fnGXWCP]=='SELECT')
{var Ctrl=GXgetControlRef("BTN_SELECT");if(Ctrl==null)
return false;Ctrl.onclick();gxcancelEvent(event,true);if(window.event!=undefined)
event.keyCode=0;return true;}
else
{if(GXKeyHandler[FncKey][fnGXWCP]=='CANCEL')
{var Ctrl=GXgetControlRef("BTN_CANCEL");if(Ctrl==null)
return false;Ctrl.onclick();gxcancelEvent(event,true);if(window.event!=undefined)
event.keyCode=0;return true;}
else
return gxFireEvent(event,GXWCP+"E"+GXKeyHandler[FncKey][fnGXWCP]+".");}}}}
return false;}