/***************** Diagnostix Javascript *****************/

/*********************** Variables ***********************/
var oldhlIndex;
var hlIndex;
var mfgInQc;
var itemInQc;
var itemCompsQcGroupIds;
var intervalId;
/*********************************************************/

/******************* Refresh Functions *******************/
function refresh(formObj, code, id, sfoc, event)
{
    if((event == null || !event.ctrlKey) && sfoc != "dot")
	{
        formObj.action= formObj.name + ".jsp?" + code + "&id=" + id + "&sfoc=" + sfoc + "#" + sfoc;
//		enableAllFields(formObj);
        formObj.submit();
	}
	else if(event != null && event.ctrlKey)
	{
        if(code.indexOf("filter") != -1)
    	    refresh(formObj, 'refreshCode=filterActive');
        else if(sfoc == "dot")
            globalModification(formObj, code, id);
    }
}//end refresh(..)

function openWin (fileName, windowName)
{
    return window.open(fileName,windowName,'width=350,height=350,directories=no,location=no,menubar=no,scrollbars=yes,status=no,toolbar=no,resizable=no'); 
}//end openWin(..)

/****************** Integer Validation *******************/
/**
field -- name of current field
fieldMin -- minimum value of "fieldValue"
*/
function validateIntRange(field, fieldMin)
{
	if(field.value < fieldMin)
	{
		field.value = fieldMin;
		alert(field.name + " must have a value >= " + fieldMin);
		field.focus();
	}
}//end validate(..)

/**
event -- some event value
fieldName -- name of current field
*/
function integerOnly(event, field)
{
    //Don't allow modified keystrokes
    if(event.ctrlKey || event.altKey || event.shiftKey)
    {
		field.value = field.value.substring(0, field.value.length-1);
		alert(field.name + " is an Integer field");
    }

    if(!(event.keyCode == 8  || //Backspace
		 event.keyCode == 9  || //Tab
		 event.keyCode == 16 || //Shift
		 event.keyCode == 35 || //End
	   	 event.keyCode == 36 || //Home
	   	 event.keyCode == 37 || //Left Arrow
	   	 event.keyCode == 39 || //Right Arrow
	   	 event.keyCode == 46 || //Delete
	   	 (event.keyCode > 47 && event.keyCode < 58) || //0 - 9 (keyboard)
	   	 (event.keyCode > 95 && event.keyCode < 106) || //0 - 9 (keypad)
	   	 event.keyCode == 189 || //- (keyboard)
	   	 event.keyCode == 109)) //- (keypad)
	{
		field.value = field.value.substring(0, field.value.length-1);
		alert(field.name + " is an Integer field");
	}
}//end integerOnly(..)

/**
event -- some event value
fieldName -- name of current field
*/
function doubleOnly(event, field)
{
    //Don't allow modified keystrokes
    if(event.ctrlKey || event.altKey || event.shiftKey)
    {
		field.value = field.value.substring(0, field.value.length-1);
		alert(field.name + " is a Percentage field");
    }

    if(!(event.keyCode == 8  || //Backspace
		 event.keyCode == 9  || //Tab
		 event.keyCode == 16 || //Shift
		 event.keyCode == 35 || //End
	   	 event.keyCode == 36 || //Home
	   	 event.keyCode == 37 || //Left Arrow
	   	 event.keyCode == 39 || //Right Arrow
	   	 event.keyCode == 46 || //Delete
	   	 (event.keyCode > 47 && event.keyCode < 58) || //0 - 9 (keyboard)
	   	 (event.keyCode > 95 && event.keyCode < 106) || //0 - 9 (keypad)
	   	 event.keyCode == 189 ||  //- (keyboard)
	   	 event.keyCode == 109 || //- (keypad)
         event.keyCode == 190 ||  //. (keyboard)
         event.keyCode == 110))    //. (keypad)
	{
		field.value = field.value.substring(0, field.value.length-1);
		alert(field.name + " is a Percentage field");
	}
}//end doubleOnly(..)

//force return key to submit form
function processKeyPress(event, formObj, code)
{
    if((event.keyCode == 13))
	{
        refresh(formObj, code);
	}
}

function moveNext(inpObj, len, target)
{
    if(inpObj.value.length == len)
        inpObj.form[target].focus();
}//end moveNext(..)

function showdiv(divID, evt)
{
    var e = (window.event) ? window.event : evt;
    var obj = document.getElementById(divID);

    // position div where the mouse pointer is and make it visible
    obj.style.left = (e.clientX + (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft)) + "px";//event.clientX - 300 + "px";
	obj.style.top = (e.clientY +  (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) - 100) + "px";//event.clientY + "px";
	obj.style.visibility = "visible";
}

function hidediv(divID)
{
    var obj = document.getElementById(divID);
    obj.style.visibility="hidden";
}

function addNewUser(username)
{
    if(username!=null && username!="")
    {
            refresh(document.userManager, 'refreshCode=addNewUser', username);
    }
    else
    {
        username = prompt("Please Enter a Username:","");
        if(username!=null && username!="")
        {
            if(username.length > 15)
            {
                username = username.substring(0,15);
            }
            refresh(document.userManager, 'refreshCode=addNewUser', username);
        }
    }
}//end addNewUser(.)

function confirmSelection(message, formObj, code)
{
    if(confirm("Any changes to " + message + " selections after submitting are subjected to a $50.00 charge.\nAre you sure would like to submit your " + message + " selections?"))
    {
        refresh(formObj, code);
    }
}//end addNewUser(.)



