var GXLastValidRow;
var GXInvalidCtrlNum = '';
var GXFromValid=0;
var GXToValid=0;
var GXLastFocusCtrl=0;
var GXLastCurrentGrid=0;
var GXFocusCtrl;
var GXInvalidCtrl;
var GXInvalidFrmtCtrl;
var GXLastFocusCtrlRef=null;
var GXOldValue = new Array();
var GXCurrentRow = new Array();
var GXOldKeyValue = new Array();
var GXWCP = '';
var WCSV_ctx = '_';
var GXDisableFocus = false;
var GXNewRow = new Array();
var GXModifiedRows = new Array();
var gxSuggestControls = new Array();
var gxAttachedControls = [];
var gxDisabledControls = new Object;
var GXUserFocus=null;
var GXLastEvtControl=null;
var GXFormDisabled = false;
var GXOnchageTriggered = new Array();
var GXDomCache = [];
var GXModalNode = null;
function gxGetCachedCtrl( CtrlId)
{
for (var j=0; j");
}
function gxReplaceAll( Value, ToReplace, ReplaceWith)
{
return String(Value).split(ToReplace).join(ReplaceWith);
}
function gxCharReplace( Value, Chars, Repls)
{
var Ret = '';
for (var i=0;i adata.length)
Ctrl.remove( Ctrl.options.length - 1);
while( adata.length > Ctrl.options.length)
{
var E = document.createElement("OPTION");
Ctrl.options.add( E);
}
for ( var i=0;i Ctrl.options.length - 1)
{
Ctrl.options[0].selected = true;
}
}
}
function GXgetControlRef( ControlId)
{
ControlId = GXCmpControlId( ControlId);
var Control = GXgetControlRef_impl( "span_"+ControlId);
if (Control != null)
return Control;
Control = GXgetControlRef_impl( ControlId);
if (Control != null)
return Control;
Control = GXgetControlRef_impl( "_"+ControlId);
if (Control != null)
return Control;
return null;
}
function GXScreen_CtrlRef( ControlId)
{
var Control = GXgetControlGridRef( ControlId, gxControlGrid( ControlId));
if (Control.type == 'hidden')
Control = GXgetControlRef_impl( "span_"+gxSafeId(Control));
return Control;
}
function GXgetControlRef_impl( ControlId)
{
if ( ControlId == '')
return null;
var Control = gxGetCachedCtrl( ControlId);
if (Control != null)
{
return Control;
}
else
{
Control = document.forms[0][ControlId];
if (Control != null)
{
if (Control instanceof Array)
Control = Control[0];
}
else
{
Control = document.getElementById(ControlId);
if (gxIsEmptyObject(Control))
{
ControlList = document.getElementsByName( ControlId);
if (ControlList != null)
Control = ControlList[0];
}
}
}
if (!gxIsEmptyObject(Control))
{
gxAddCachedCtrl( ControlId, Control);
}
return Control;
}
function GXgetControlRef_list( ControlId)
{
var ControlList = document.getElementsByName( ControlId);
if (ControlList != null)
return ControlList;
var Control = document.getElementById(ControlId);
if (Control != null)
return [Control];
return null;
}
function gxCurrentGridRow( GridId)
{
try
{
return GXCurrentRow[GridId];
}
catch(e){}
return undefined;
}
function GXCurrentGridRow( GridId)
{
var Ret = gxCurrentGridRow( GridId);
return (typeof(Ret) == "undefined")?'0001':Ret;
}
function GXgetControlGridRef( ControlId, GridId, CurrentRow)
{
ControlId = GXCmpControlId( ControlId);
try
{
if (GridId == 0)
return GXgetControlRef_impl( ControlId);
if (typeof(CurrentRow) == "undefined")
CurrentRow = GXCurrentGridRow( GridId);
return GXgetControlRef_impl( ControlId + "_" + CurrentRow);
}
catch(e){}
}
function GXCheckRowChange( Ctrl)
{
var GridId = 0;
try
{
var GridId = GXValidStruct(Ctrl).grid;
var GXValidRow = gxCurrentGridRow( GridId);
if (GXValidRow != 0 && GXValidRow != GXLastValidRow && GXValidRow.length > 1 && GXLastValidRow.length > 1)
{
if (gxValidGridRowChange( GridId, GXValidRow) == true)
eval( "GXCurrentRow[GridId]='" + GXValidRow + "'");
return true;
}
}
catch(e){}
if (typeof(GXValidRow) != "undefined")
eval( "GXCurrentRow[GridId]='" + GXValidRow + "'");
return false;
}
function gxValidGridRow( GridId, GXValidRow)
{
if (typeof(GXValidRow) != "undefined")
eval( "GXCurrentRow[GridId]='" + GXValidRow + "'");
var firstGridCtrl = gxFirstGridControl( GridId);
var lastGridCtrl = gxLastGridControl( GridId);
return GXValidControls( firstGridCtrl, lastGridCtrl + 1, true);
}
function gxValidGridRowChange( GridId, GXValidRow)
{
if (typeof(GXLastValidRow) != "undefined")
eval( "GXCurrentRow[GridId]='" + GXLastValidRow + "'");
var firstGridCtrl = gxFirstGridControl( GridId);
var lastGridCtrl = gxLastGridControl( GridId);
var bRet = GXValidControls( firstGridCtrl, lastGridCtrl + 1, true);
if (bRet)
gxChangeGridRow( GridId, firstGridCtrl, GXValidRow);
return bRet;
}
function gxChangeGridRow( GridId, firstGridCtrl, GXValidRow)
{
var bRowisMod = GXGridRowIsMod( gxGridLvl( GridId), GXLastValidRow);
if (bRowisMod)
gxsetNewRow( GridId, GXLastValidRow, false);
GXLastFocusCtrl = firstGridCtrl;
if (GXFromValid > firstGridCtrl)
GXFromValid = firstGridCtrl;
GXLastValidRow = GXValidRow;
}
function gxFirstGridControl( GridId)
{
for(i=0;i<=GXLastCtrlId();i++)
{
var _GXValidStruct = GXValidStruct(i);
if (typeof(_GXValidStruct) != "undefined" && _GXValidStruct.grid == GridId)
return i;
}
return -1;
}
function gxLastGridControl( GridId)
{
for(i=GXLastCtrlId();i>=0;i--)
{
var _GXValidStruct = GXValidStruct(i);
if (typeof(_GXValidStruct) != "undefined" && _GXValidStruct.grid == GridId)
return i;
}
return -1;
}
function GXgetGridDecimalValue(ControlId, sRow, ThSep, DecPoint)
{
return GXgetDecimalValue( ControlId + "_" + sRow, ThSep, DecPoint);
}
function GXgetGridIntegerValue(ControlId, sRow)
{
return GXgetIntegerValue( ControlId + "_" + sRow);
}
function GXgetGridControlValue( ControlId, sRow)
{
return GXgetControlValue( ControlId + "_" + sRow);
}
function GXgetGridCheckBoxValue(ControlId,sRow,Checked,Unchecked)
{
return GXgetCheckBoxValue( ControlId + "_" + sRow, Checked, Unchecked)
}
function GXgetCheckBoxValue( ControlId, Checked, Unchecked)
{
ControlId = GXCmpControlId( ControlId);
Control = document.forms[0][ControlId];
if (Control == null)
{
ControlList = document.getElementsByName( ControlId);
if (ControlList != null)
Control = ControlList[0];
}
if (Control == null)
return 0;
if (Control.checked)
return Checked;
return Unchecked;
}
function GXgetControlValue( ControlId)
{
return GXgetControlValue_impl( GXCmpControlId( ControlId));
}
function gxSetRadioValue( Control, Value)
{
for (var i=0;i 0 && Elem.value.length >= MaxLength)
Elem.value = Elem.value.substring( 0, MaxLength)
}
catch(e){};
}
function gxAutocompleteOnchange(Ctrl)
{
if ((Ctrl != null) && (Ctrl.type == "text") && (Ctrl.getAttribute( "autocomplete") != "off"))
{
gxonchange( Ctrl);
var ctrlId = gxSafeId(Ctrl);
GXOnchageTriggered[ GXWCP+ctrlId] = true;
}
}
function GXValidLast()
{
try
{
if (GXValidStruct(GXFocusCtrl).grid != 0)
return;
}
catch(e){}
try
{
var LastValidationCtrl = GXLastValidationControl();
if (LastValidationCtrl == GXFocusCtrl)
{
GXValidControls( LastValidationCtrl, LastValidationCtrl + 1, true)
}
}
catch(e){}
}
function GXVF( evt)
{
try
{
GXValidControls( GXFromValid, GXToValid, true);
if (GXInvalidCtrl == null)
GXFromValid = GXToValid;
}
catch(e){}
}
function GXVFTail( evt)
{
try
{
GXValidControls( GXFocusCtrl, GXLastCtrlId() + 1, true);
}
catch(e){}
}
function GXValidForm()
{
gxdisableformnvis();
var bRet = true;
try
{
if (GXgetControlValue( "IsConfirmed") != "1" && document.forms[0]._EventName.value == "EENTER.")
bRet = GXValidControls( GXLastFocusCtrl, GXLastCtrlId() + 1, false);
}
catch(e){}
if (bRet)
{
gxSetModalNodeOpacity(50);
ForceEnableControls();
}
else
{
gxenableform();
gxSetModalNodeOpacity(50);
}
return bRet;
}
function ForceEnableControls()
{
for( var Ctrl in gxDisabledControls)
{
Ctrl = GXgetControlRef_list( Ctrl);
for( var i=0;i');
}
catch (e){}
}
function GXAlert( Ctrl, Message)
{
try
{
gxballoon = getGXBallon(Ctrl.id);
gxballoon.setError( Message);
gxballoon.show();
GXInvalidFrmtCtrl = Ctrl;
}
catch (e)
{
alert( Message);
}
}
function GXAddGridRow( GridId, sRowCount)
{
var Ctrl = GXgetControlRef( GridId);
if (Ctrl == null)
return;
var Node = Ctrl.firstChild;
var nRowCount = parseInt( GXgetControlValue( sRowCount),10) + 1;
GXsetControlValue( sRowCount, nRowCount);
var sNewRowId = gxrpadwc( nRowCount.toString(), 4, '0');
while( Node != null)
{
if (Node.nodeName == "TBODY")
{
var firstRow = Node.firstChild;
while( firstRow != null)
{
if ((firstRow.nodeName == "TR") && gxHasChild( firstRow, "TD"))
{
var newRow = firstRow.cloneNode( true);
gxResetRowValues( newRow);
Node.appendChild( newRow);
//newRow.innerHTML = newRow.innerHTML.replace( /0001/g, sNewRowId);
return;
}
firstRow = firstRow.nextSibling;
}
}
Node = Node.nextSibling;
}
}
function gxResetRowValues( Row)
{
var TD= Row.firstChild;
while( TD != null)
{
var Childs = TD.childNodes;
for( var i=0;i 0)
Gx_mode = gxGetGridRowMode( gxGridLvl( GXLastCurrentGrid), GXLastCurrentGrid);
if (GXValidStruct(GXFocusCtrl).nac() == true)
{
cn = gxSearchControlOnForm(GXLastFocusCtrlRef) + 1;
NextFocus = gxSearchNextFocus(cn);
if(NextFocus != null)
gxSetControlFocus( NextFocus);
return true;
}
}
catch(e){}
return false;
}
var GXLastCurrentRow = new Array();
function gxUpdateCurrentRowsControl( Control)
{
gxUpdateComponentContext( Control);
var fldName = Control.name;
var gxCurrentRow = gxGetControlRow( Control);
if( gxCurrentRow == '')
return;
var rowIdx = fldName.length - gxCurrentRow.length;
fldName = fldName.substring(0, rowIdx-1);
var validStruct = gxControlStructForField(fldName);
if ((validStruct != null) && (validStruct.grid != 0))
gxUpdateCurrentRows( fldName, gxCurrentRow, validStruct.grid, validStruct);
}
function gxUpdateCurrentRows( Ctrl, gxCurrentRow, gxCurrentGrid, auxValidStruct)
{
if( gxCurrentRow == '')
return;
GXCurrentRow[gxCurrentGrid] = gxCurrentRow;
if ( GXLastCurrentRow[gxCurrentGrid] != gxCurrentRow)
{
GXLastCurrentRow[gxCurrentGrid] = gxCurrentRow;
var rows = getCurrentRowsSplited( gxCurrentRow);
var validStruct = (typeof(auxValidStruct)=="undefined")?GXValidStruct(Ctrl):auxValidStruct;
var i = 1;
while ((validStruct != null) && ( typeof(validStruct.pgrid) != "undefined") && ( validStruct.pgrid != 0) && (i < rows.length))
{
GXCurrentRow[validStruct.pgrid] = rows[i];
validStruct = gxControlStructForGrid(validStruct.pgrid);
gxsetNewRow( validStruct.grid, rows[i], false);
i++;
}
}
}
function getCurrentRowsSplited( gxCurrentRow)
{
var rows = new Array();
var currIdx = 0;
var strLen = gxCurrentRow.length;
if ( strLen <= 4)
{
rows[0] = gxCurrentRow;
return rows;
}
var rowsQty = strLen / 4;
for( var i=0; i< rowsQty; i++)
{
rows[rows.length] = gxCurrentRow;
gxCurrentRow = gxCurrentRow.substring(4);
}
return rows;
}
function gxUpdateComponentContext( Control)
{
try
{
WCSV_ctx = Control.attributes["gxctx"].value;
}
catch(e){WCSV_ctx = '_';}
}
function gxGetControlRow( Control)
{
var gxCurrentRow = '';
try
{
gxCurrentRow = Control.attributes["gxrow"].value;
}
catch(e) { gxCurrentRow = ''; }
return gxCurrentRow;
}
function gxonfocus2(Ctrl, gxFocusCtrl, gxWCP, gxCurrentGrid, gxAddLines)
{
var gxCurrentRow = gxGetControlRow( Ctrl);
gxonfocus(Ctrl, gxFocusCtrl, gxWCP, gxCurrentRow, gxCurrentGrid, gxAddLines);
}
function gxResetOnchange( gxWCP, Ctrl)
{
var ctrId = gxSafeId(Ctrl);
Ctrl.setAttribute( "gxoldvalue", GXgetControlValue( ctrId));
GXOnchageTriggered[ gxWCP+ctrId] = false;
}
function gxonfocus(Ctrl, gxFocusCtrl, gxWCP, gxCurrentRow, gxCurrentGrid, gxAddLines)
{
gxResetOnchange( gxWCP, Ctrl);
gxUpdateComponentContext( Ctrl);
GXLastFocusCtrlRef = Ctrl;
gxinstallsuggest(Ctrl);
gxUpdateCurrentRows( gxFocusCtrl, gxCurrentRow, gxCurrentGrid);
var NewComponentContext = false;
if (GXLastCurrentGrid != gxCurrentGrid)
{
if(!gxAddLines)
{
GXLastCurrentGrid = gxCurrentGrid;
var firstGridCtrl = gxFirstGridControl( GXLastCurrentGrid);
if(GXFromValid > firstGridCtrl)
GXFromValid = firstGridCtrl;
}
}
if (GXWCP != gxWCP)
{
NewComponentContext = true;
GXFromValid = 0;
}
GXWCP = gxWCP;
if (NewComponentContext)
gxChangeComponentContext();
GXFocusCtrl = gxFocusCtrl;
if (GXDisableFocus)
{
GXDisableFocus = false;
return true;
}
try
{
if (document.forms[0].Mode.value == 'DLT' || document.forms[0].Mode.value == 'DSP')
return true;
if (Ctrl.type == 'submit' && !gxIsEventEnterControl(Ctrl, gxWCP) && !gxIsEventCheckControl(Ctrl, gxWCP) && !gxAddLines)
return true;
}
catch(e){}
if ( isGXTrn())
{
if(Ctrl.gxdisabled && GXLastFocusCtrlRef != null)
{
cn = gxSearchControlOnForm(Ctrl) + 1;
if(cn != -1)
{
NextFocus = gxSearchNextFocus(cn);
if(NextFocus != null)
{
gxSetControlFocus( NextFocus);
return true;
}
}
gxSetControlFocus( GXLastFocusCtrlRef);
return true;
}
}
if ( isGXTrn())
{
if (GXInvalidFrmtCtrl)
{
gxSetControlFocus( GXInvalidFrmtCtrl);
GXInvalidFrmtCtrl = null;
return true;
}
}
if (GXInvalidCtrl != null && GXInvalidCtrl != Ctrl && GXFocusCtrl >= GXInvalidCtrlNum)
{
if (GXInvalidCtrl == Ctrl && GXVControl( GXInvalidCtrl, GXInvalidCtrlNum, false))
{
GXInvalidCtrl = null;
return true;
}
}
Ctrl.gxvalid = 0;
if(gxAddLines)
{
GXFromValid = gxFirstGridControl( GXLastCurrentGrid);
GXToValid = gxFirstCtrlAfterGrid( GXFromValid, GXLastCurrentGrid);
GXFocusCtrl = GXToValid;
}
else
{
GXToValid = GXFocusCtrl;
if (GXFocusCtrl < GXFromValid)
{
GXFromValid = GXFocusCtrl;
}
}
if(typeof(GXLastValidRow)=="undefined" && gxCurrentGrid != 0)
GXLastValidRow = gxCurrentRow;
GXCheckRowChange( GXLastFocusCtrl);
if ( GXFocusCtrl >= GXLastFocusCtrl)
GXVF();
else
GXToValid = GXFocusCtrl;
if (GXInvalidCtrl == null)
gxSetControlSelection( Ctrl);
gxDisableFocusCondition();
return false;
}
function gxonchange(Ctrl)
{
GXLastEvtControl = Ctrl;
var ctrlId = gxSafeId(Ctrl);
if (GXOnchageTriggered[ GXWCP+ctrlId] == true)
return;
var CtrlValue = GXgetControlValue( ctrlId);
if (Ctrl.getAttribute( "gxoldvalue") != CtrlValue);
{
GXsetControlValue( "IsModified", "1")
var jsCode = '';
var bRet = true;
if (Ctrl.type == "select-one" || Ctrl.type == "checkbox" || Ctrl.type == "radio")
{
if (GXVControl( Ctrl, GXFocusCtrl, false))
{
if (GXInvalidCtrl == Ctrl)
GXInvalidCtrl = null;
}
else
bRet = false;
}
Ctrl.setAttribute( "gxoldvalue", CtrlValue);
if (bRet)
gxExecuteOnChange( Ctrl);
return gxExecuteUsrOnChange( Ctrl);
}
return true;
}
function gxExecuteUsrOnChange( Ctrl)
{ var jsCode = '';
try{jsCode = Ctrl.attributes["gxoch0"].value;}
catch(e)
{
return true;
}
var fnc = new Function(jsCode);
var ret = fnc.call();
return ret;
}
function gxExecuteOnChange( Ctrl)
{
var jsCode = '';
try{jsCode += Ctrl.attributes["gxoch1"].value + ';';} catch(e){}
if (gxControlIsAccepted( Ctrl))
try{jsCode += Ctrl.attributes["gxoch2"].value + ';';} catch(e){}
if (jsCode != '')
{
var changeFunc = new Function( jsCode);
changeFunc();
}
Ctrl.gxvalid = 0;
Ctrl.gxctrlchanged = 1;
}
function gxSetControlFocus( Control)
{
if (Control)
{
if (Control instanceof Array)
Control = Control[0];
else if (typeof(Control.Ctrl) != "undefined")
Control = Control.Ctrl;
try
{
try{document.getElementById(Control.id).focus();}
catch(e){Control.focus()}
gxSetControlSelection( Control);
}
catch(e){}
}
}
function GXSetUserFocus( Control)
{
GXUserFocus = Control;
}
function gxSetControlFocusOnload( Control)
{
if (Control)
{
try
{
if (gxControlIsAccepted( Control))
{
gxUpdateCurrentRowsControl( Control);
gxSetControlFocus( Control);
}
}
catch(e){}
}
}
function gxSetControlSelection( Control)
{
if (Control)
{
try
{
if (Control.type == "text" || Control.type == "password" || Control.type == "file")
Control.select();
else if (Control.type == "textarea")
Control.focus();
else
if( typeof(document.selection) != "undefined")
document.selection.empty();
}
catch(e){}
}
}
function gxControlIsAccepted( Control, Recursive)
{
if (typeof(Recursive)== "undefined")
Recursive = true;
if ((Control == null) || (Control.type == "hidden") || (Control.tagName == "A"))
return false;
if ((Recursive && gxVisible(Control) == false) || (!Recursive && gxControlIsVisible(Control)== false))
return false;
if ((Control.tagName == "INPUT") && (Control.type == "text") && gxControlIsVisible( Control))
{
if ( Control.style && (Control.style.visibility == 'hidden' || Control.style.display == 'none'))
return false;
}
if (Control.disabled == true)
return false;
if ((Control.tagName == "INPUT") || (Control.tagName == "SELECT")|| (Control.tagName == "TEXTAREA"))
{
var roSpan = GXgetControlRef_impl( "span_"+gxSafeId(Control));
if( roSpan && gxControlIsVisible( roSpan))
return false;
else
return true;
}
return false;
}
var bGXAutoskip = false;
function form_onkeyup(domevent)
{
var event = window.event?window.event:domevent;
var evel = (event.target || event.srcElement);
var maxlen = evel.getAttribute("maxlength");
var value = typeof(evel.value)=="undefined"?"":evel.value;
if ((evel.type == "" && GXLastKeyCode == 9) || ( bGXAutoskip && evel.type != "" && !isCtrlKeyCode( GXLastKeyCode) && value.length >= maxlen))
{
if (isTextWithLink( evel))
{
return;
}
var el = gxSearchControlOnForm( GXInvalidCtrl?GXInvalidCtrl:GXLastFocusCtrlRef);
if (el == -1)
return true;
var Control = gxSearchFocus( GXShiftPressed?el-1:el+1, !GXShiftPressed);
gxSetControlFocus( Control);
}
}
function isTextWithLink( Control)
{
if (Control != null)
{
if ((Control.tagName == "A") && Control.childNodes && (Control.childNodes.length > 0))
{
var childNode = Control.firstChild;
if ( innerChildIsText( childNode))
return true;
}
}
return false;
}
function innerChildIsText( childNode)
{
while (childNode != null)
{
if (childNode.nodeName && (childNode.nodeName == "#text"))
return true;
childNode = childNode.firstChild;
}
return false;
}
function gxEnterBtnHasFocus()
{
GXLastFocusCtrlRef;
if (GXLastFocusCtrlRef == null)
return false;
return GXLastFocusCtrlRef.type == 'submit' && gxIsEventEnterControl(GXLastFocusCtrlRef, GXWCP);
}
function gxSkipFocus()
{
var el = gxSearchControlOnForm( GXLastFocusCtrlRef);
if (el == -1)
return true;
var Control;
for (Control = gxSearchFocus( ++el, true);;Control = gxSearchFocus( ++el, true))
{
if (Control == null || el == document.forms[0].elements.length)
el = -1;
else
{
if (GXSkipOnEnter)
break;
if (Control.type == 'submit' && !gxIsEventEnterControl(Control, GXWCP))
break;
if (Control.type != 'submit' && Control.type != 'button')
break;
}
}
gxSetControlFocus( Control);
}
function gxSearchControlOnForm( Ctrl)
{
var i_max = document.forms[0].elements.length -1;
var i_min = 0;
el = getControlIndex(Ctrl,i_min,i_max);
return el;
}
function getControlIndex( Ctrl,i_min,i_max)
{
if (!document.all)
{
return Ctrl.gxIndex;
}
else
{
var i_minsi = document.forms[0].elements[i_min].sourceIndex;
var i_maxsi = document.forms[0].elements[i_max].sourceIndex;
var i_med = parseInt(i_min + ((i_max - i_min)/2)) + 1;
var i_medsi = document.forms[0].elements[i_med].sourceIndex;
if ((i_min == i_max) && (Ctrl.sourceIndex == i_minsi) && (Ctrl.sourceIndex == i_maxsi))
return i_min;
if (Ctrl.sourceIndex == i_minsi)
return i_min;
if (Ctrl.sourceIndex == i_maxsi)
return i_max;
if (Ctrl.sourceIndex == i_medsi)
return i_med;
if ((Ctrl.sourceIndex > i_medsi) && (Ctrl.sourceIndex < i_maxsi))
return getControlIndex(Ctrl,i_med+1,i_max-1);
if ((Ctrl.sourceIndex > i_minsi) && (Ctrl.sourceIndex < i_medsi))
return getControlIndex(Ctrl,i_min+1,i_med-1);
}
}
function gxSearchFocus( el, Forward)
{
if ( Forward)
return gxSearchNextFocus( el);
return gxSearchPrevFocus( el);
}
function gxDOMCtrlList()
{
return document.forms[0].elements;
}
function gxSearchPrevFocus( el)
{
var arr = gxDOMCtrlList();
for(var i=el;i>=0;i--)
{
if (gxControlIsAccepted( arr[i]))
return arr[i];
}
return null;
}
function gxSearchNextFocus( el)
{
var arr = gxDOMCtrlList();
for(var i=el;i=0;i--)
{
var _GXValidStruct = GXValidStruct(i);
if (typeof(_GXValidStruct) != "undefined" && _GXValidStruct.grid == GridId)
return _GXValidStruct.lvl;
}
}
catch(e){}
return 0;
}
function gxLvlGrid( Lvl)
{
try
{
for (i=GXLastCtrlId();i>=0;i--)
{
var _GXValidStruct = GXValidStruct(i);
if (typeof(_GXValidStruct) != "undefined" && _GXValidStruct.lvl == Lvl)
return _GXValidStruct.grid;
}
}
catch(e){}
return 0;
}
function gxControlLvl( Fld)
{
var GridId = 0;
try
{
for (i=0;i<=GXLastCtrlId();i++)
{
var _GXValidStruct = GXValidStruct(i);
if (typeof(_GXValidStruct) != "undefined" && _GXValidStruct.fld == Fld)
{
GridId = _GXValidStruct.lvl;
break;
}
}
}
catch(e){}
return GridId;
}
function gxOld( Fld, Var)
{
try
{
var Control = GXgetControlGridRef( Var, gxControlGrid( Fld));
var ctrlId = gxSafeId( Control);
if (GXOldValue[ctrlId] == null)
{
if (Control != null)
GXOldValue[ctrlId] = Control.value;
}
return GXOldValue[ctrlId];
}
catch(e){}
return '';
}
function gxControlStruct( CtrlId)
{
return gxControlStruct_Prefix( WCSV_ctx, CtrlId);
}
function gxControlStruct_Prefix( Prefix, CtrlId)
{
try
{
var LastCtrl = GXLastCtrlId_Prefix(Prefix);
for (i=0;i<=LastCtrl;i++)
{
var validStruct = GXValidStruct_Prefix(Prefix, i);
if (typeof(validStruct) != "undefined" && validStruct.fld == CtrlId)
return validStruct;
}
}
catch(e){}
return null;
}
function gxControlStructForVar( GXVarName)
{
try
{
for (i=0;i<=GXLastCtrlId();i++)
{
var _GXValidStruct = GXValidStruct(i);
if (typeof(_GXValidStruct) != "undefined" && _GXValidStruct.gxvar == GXVarName)
{
return _GXValidStruct;
}
}
}
catch(e){}
return null;
}
function gxControlStructForGrid( GridId)
{
try
{
for (i=0;i<=GXLastCtrlId();i++)
{
var _GXValidStruct = GXValidStruct(i);
if (typeof(_GXValidStruct) != "undefined" && _GXValidStruct.grid == GridId)
{
return _GXValidStruct;
}
}
}
catch(e){}
return null;
}
function gxControlStructForField( Fld)
{
try
{
for (i=0;i<=GXLastCtrlId();i++)
{
var _GXValidStruct = GXValidStruct(i);
if (typeof(_GXValidStruct) != "undefined" && _GXValidStruct.fld == Fld)
{
return _GXValidStruct;
}
}
}
catch(e){}
return null;
}
function gxFirstCtrlAfterGrid(fromCtrl, gridId)
{
var lastCtrl = GXLastCtrlId();
for(var i=fromCtrl; i=0;i--)
{
var _GXValidStruct = GXValidStruct(i);
if ( typeof(_GXValidStruct) != "undefined" && _GXValidStruct.grid == GridId)
{
var Ctrl = GXgetControlRef_impl( _GXValidStruct.fld + "_" + CurrentRow);
if (Ctrl != null && !gxIsGxRemove(Ctrl))
{
Ctrl.gxdisabled = IsRemoved;
}
}
}
}
catch(e){}
setTimeout( "gxValidGridRow("+ GridId+", '"+CurrentRow+"')", 1);
}
function gxIsGxRemove( Ctrl)
{
if(Ctrl != null)
return (Ctrl.name.indexOf("_GXREMOVE") != -1);
return false;
}
function gxIsEventEnterControl(Ctrl, gxWCP)
{
var eventAtt = Ctrl.attributes["gxevent"];
if(eventAtt)
return (eventAtt.value == (gxWCP+'EENTER.'));
return false;
}
function gxIsEventCheckControl(Ctrl, gxWCP)
{
var eventAtt = Ctrl.attributes["gxevent"];
if(eventAtt)
return (eventAtt.value == (gxWCP+'ECHECK.'));
return false;
}
function gxArrayToSource( Arr)
{
if (Arr.toSource != null)
return Arr.toSource();
var Result = "[";
var size = Arr.length - 1;
for (var i in Arr)
{
Result += gxObjectToSource(Arr[i]);
if (i < size)
Result += ',';
}
Result += ']';
return Result;
}
function gxObjectToSource( Obj)
{
if (typeof( Obj) == "object")
{
var Result = '{';
var Sep = '';
for (var i in Obj)
{
Result += Sep;
Result += i + ":\'" + gxEncodeValue(Obj[i]) + "\'";
Sep = ',';
}
Result += '}';
return Result;
}
return '\'' + gxEncodeValue(Obj.toString()) + '\'';
}
function gxFormat()
{
var msg = arguments[0];
for (var i=1;i';
}
function gxtostring( str)
{
return str.toString();
}
function gxtoformattedstring( str)
{
return str.toString();
}
function gxSubmit()
{
gxdisableformnvis();
ForceEnableControls();
var doSubmit = true;
if (typeof(document.forms[0].onsubmit) == 'function')
doSubmit = document.forms[0].onsubmit();
if (doSubmit)
document.forms[0].submit();
}
function isGXTrn()
{
return typeof(ClearNonKeyFields) != 'undefined';
}
function GXValidStruct(Ctrl)
{
return GXValidStruct_Prefix(WCSV_ctx, Ctrl);
}
function GXValidStruct_Prefix(Prefix, Ctrl)
{
try
{
return this[Prefix + 'GXValidFnc'][Ctrl];
}
catch(e){}
return undefined;
}
function GXLastCtrlId()
{
return GXLastCtrlId_Prefix(WCSV_ctx);
}
function GXLastCtrlId_Prefix(Prefix)
{
try
{
return this[Prefix + 'GXLastCtrlId'];
}
catch(e){}
return undefined;
}
function gxGetFormElements()
{
return this[WCSV_ctx + 'GXValidFnc'];
}
function gxGetFirstAcceptedFormElement()
{
try
{
var Elements = gxGetFormElements();
for( var i=0;iEnable Form
';
document.body.appendChild( ModalNode);
ModalNode = ModalNode.childNodes[0];
}
GXModalNode = ModalNode;
}
return GXModalNode;
}
function moveModalNode()
{
var modalNode = gxgetModalDOMNode();
var y=parseInt(modalNode.style.top);
var sy=document.body.scrollTop;
var newY = ((sy-y-10)/3+3)+y;
modalNode.style.top=newY+'px';
}
function resizeModalNode()
{
var modalNode = gxgetModalDOMNode();
modalNode.style.width = gxgetViewportWidth()+'px';
modalNode.style.height = gxgetViewportHeight()+'px';
}
var modalNodeInterval = null;
function showModalNodeClose()
{
var modalNodeClose = document.getElementById("gxModalNodeClose");
modalNodeClose.style.display = "block";
}
function hideModalNodeClose()
{
var modalNodeClose = document.getElementById("gxModalNodeClose");
modalNodeClose.style.display = "none";
}
function gxSetModalNodeOpacity(Opacity)
{
var nodeDiv = gxgetModalDOMNode();
var styleObj = nodeDiv.style;
styleObj.opacity = (Opacity / 100);
styleObj.MozOpacity = (Opacity / 100);
styleObj.filter = "alpha(opacity=" + Opacity + ")";
}
function gxdisableformnvis()
{
gxSetModalNodeOpacity(0);
gxdisableform();
}
function gxdisableform()
{
GXFormDisabled = true;
gxgetModalDOMNode().style.display = 'block';
modalNodeInterval = setInterval('moveModalNode()', 50);
window.onresize=resizeModalNode;
setTimeout('showModalNodeClose()', 5000);
}
function gxenableform()
{
GXFormDisabled = false;
gxgetModalDOMNode().style.display = 'none';
clearInterval(modalNodeInterval);
modalNodeInterval = null;
window.onresize=null;
hideModalNodeClose();
}
function GXsetGridSdtValue(ControlId, sRow, Value)
{
GXsetGridControlValue( ControlId, sRow, Value)
}
function GXsetSdtValue(ControlId, Value)
{
GXsetControlValue( ControlId, Value, 0);
}