function SetFocus(TargetFormName) {
  var target = 0;
  if (TargetFormName != "")
    for (i=0; i<document.forms.length; i++) {
      if (document.forms[i].name == TargetFormName) {
        target=i;
        break;
      }
    }
  var TargetForm = document.forms[target];
    
  for (i=0; i<TargetForm.length; i++) {
    if ( (TargetForm.elements[i].type != "image") && 
         (TargetForm.elements[i].type != "hidden") && 
         (TargetForm.elements[i].type != "reset") && 
         (TargetForm.elements[i].type != "submit") ) {
      TargetForm.elements[i].focus();
      if ( (TargetForm.elements[i].type == "text") || 
           (TargetForm.elements[i].type == "password") )
        TargetForm.elements[i].select();
      
      break;
    }
  }
}
function NewWindow(mypage, myname, w, h, top, left, scroll, resize, status, menubar, toolbar, resizable, address) {
var winl = (screen.width - w) / 2;
var wint = (screen.height - h) / 2;
winops = 'height='+h+',width='+w+',top='+top+',left='+left+',scrollbars='+scroll+',resize='+resize+',status='+status+',toolbar='+toolbar+',resizable='+resizable+',location='+address+''
win = window.open(mypage, myname, winops)
if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}
///////submit once
var submitcount = 0;
///One submit
function oneSubmit()
{
    if (submitcount == 0) 
    {
	    submitcount ++;	
	    return true;	
    }else{	
		alert("Data submission is in progress.");
		return false;
	}
}
function verifyDelete(){
msg = "Are you sure you wish to DELETE this record?";
return confirm(msg);
}
function verifyDisable(){
msg = "Are you sure you wish to DISABLE this record?";
return confirm(msg);
}
function verifyEnable(){
msg = "Are you sure you wish to ENABLE this record?";
return confirm(msg);
}
function verifyRestore(){
msg = "Are you sure you wish to Restore this record?";
return confirm(msg);
}
function replace(string,text,by) {
// Replaces text with by in string
    var strLength = string.length, txtLength = text.length;
    if ((strLength == 0) || (txtLength == 0)) return string;
    var i = string.indexOf(text);
    if ((!i) && (text != string.substring(0,txtLength))) return string;
    if (i == -1) return string;
    var newstr = string.substring(0,i) + by;
    if (i+txtLength < strLength)
        newstr += replace(string.substring(i+txtLength,strLength),text,by);
    return newstr;
}
/**
 * Checks/unchecks all tables
 *
 * @param   string   the form name
 * @param   boolean  whether to check or to uncheck the element
 *
 * @return  boolean  always true
 */
function setCheckboxes(the_form, do_check)
{
    var elts      = (typeof(document.forms[the_form].elements['pr_id[]']) != 'undefined')
                  ? document.forms[the_form].elements['pr_id[]']
                  : 0;
    var elts_cnt  = (typeof(elts.length) != 'undefined')
                  ? elts.length
                  : 0;
    if (elts_cnt) {
        for (var i = 0; i < elts_cnt; i++) {
            elts[i].checked = do_check;
        } // end for
    } else {
        elts.checked        = do_check;
    } // end if... else
    return true;
} // end of the 'setCheckboxes()' function
 /* Checks/unchecks all tables
 *
 * @param   string   the form name
 * @param   boolean  whether to check or to uncheck the element
 *
 * @return  boolean  always true
 */
function setCheckboxes2(the_form, do_check)
{
    var elts      = (typeof(document.forms[the_form].elements['jo_checked[]']) != 'undefined')
                  ? document.forms[the_form].elements['jo_checked[]']
                  : 0;
    var elts_cnt  = (typeof(elts.length) != 'undefined')
                  ? elts.length
                  : 0;
    if (elts_cnt) {
        for (var i = 0; i < elts_cnt; i++) {
            elts[i].checked = do_check;
        } // end for
        
        if (do_check == true){
        	changedjobsids = '';
        	document.js2.jobsarray.value = changedjobsids;
			for (var i = 0; i < elts_cnt; i++) {
				if (elts[i].value != document.js2.jobs.value){
					changedjobsids = elts[i].value + '-' + changedjobsids ;
				}
				
			} // end for
			document.js2.jobsarray.value = changedjobsids;
        } else {
        	document.js2.jobsarray.value = '';
        }
    } else {
        elts.checked        = do_check;
    } // end if... else
    return true;
} // end of the 'setCheckboxes()' function
function setCheckboxes3(i)
{
    if (document.getElementById("jo_id_"+i).checked == false)
	{
      document.getElementById("jo_id_"+i).checked = true;
    }else{
	  document.getElementById("jo_id_"+i).checked = false;
	}
} // end of the 'setCheckboxes()' function
/**
 * Checks/unchecks all tables
 *
 * @param   string   the form name
 * @param   boolean  whether to check or to uncheck the element
 *
 * @return  boolean  always true
 */
function setCheckboxesUn(the_form, do_check)
{
    var elts      = (typeof(document.forms[the_form].elements['un_id[]']) != 'undefined')
                  ? document.forms[the_form].elements['un_id[]']
                  : 0;
    var elts_cnt  = (typeof(elts.length) != 'undefined')
                  ? elts.length
                  : 0;
    if (elts_cnt) {
        for (var i = 0; i < elts_cnt; i++) {
            elts[i].checked = do_check;
        } // end for
    } else {
        elts.checked        = do_check;
    } // end if... else
    return true;
} // end of the 'setCheckboxesUn()' function
function getkey(e)
{
  if (window.event) return window.event.keyCode;
  else if (e) return e.which; else return null;
}
function goodchars(e, goods)
{
  var key, keychar;
  key = getkey(e);
  if (key == null) return true;
  // get character
  keychar = String.fromCharCode(key);
  keychar = keychar.toLowerCase();
  goods = goods.toLowerCase();
  // check goodkeys
  if (goods.indexOf(keychar) != -1)
  {
    return true;
  }
  // control keys
  if ( key==null || key==0 || key==8 || key==9 || key==13 || key==27 )
  {
    return true;
  }
    // else return false
  return false;
}
function autoTab(e)
{
  if(e.value.length == e.getAttribute("maxlength") && e.KeyCode != 8 && e.keyCode != 16 && e.keyCode != 9 && e.keyCode != 46)
  {
      new Field.activate(findNextElement(e.getAttribute("tabindex")));
  }
}
function findNextElement(index)
{
  elements = new Form.getElements('job3');
  for(i = 0; i < elements.length; i++)
  {
    element = elements[i];
    
	if(parseInt(element.getAttribute("tabindex")) == (parseInt(index) + 1))
	{
      return element;
    }
  }
  return elements[0];
}
function timeFormat(x)
{ 
    //test if it ahears to the regex
    var regex = /([0-2][0-9]:[0-5][0-9])/;
    var regex1 = /([0-9][.:][0-5][0-9])/;
    var regex2 = /([0-9][.:][0-5])/;
    var regex3 = /([.])/;
    
    if (x != '' && !regex.test(x))
    {
        if(x.length < 5)
        {
            if(regex1.test(x) || regex2.test(x))
            {
                if(regex3.test(x))
                {
                  var time_array=x.split(".");
                }else{
                  var time_array=x.split(":");
                }
                
                if (Math.abs(parseInt(time_array[0])) < 10)
                {
                    x = "0"+ Math.abs(time_array[0]) + ':' +  time_array[1];
                }
                
                if (time_array[1].length < 2)
                {
                    x = x + "0";
                }
            }else{
                if (Math.abs(parseInt(x)) < 10)
                {
                    x = "0"+ Math.abs(x);
                }
                x = x + ":00"
            }
        }
        
        if(x.length == 5)
        {
          if(regex3.test(x))
          {
            var time_array2=x.split(".");
            x = Math.abs(time_array2[0]) + ':' +  time_array2[1];
          }
        }
        
        if(x.length > 5)
        {
            x = x.substring(0,4);
        }
    }
    return (x);
}
function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }
  return [ scrOfX, scrOfY ];
}
function jstbl_setCheckboxes(i)
{
  selCell = document.getElementById("jo_id_"+i);
  selRow = document.getElementById("cells_"+i);
  
  if (selCell.checked == false)
  {
	selCell.checked = true;
	selRow.className = "select";
  }else{
	selCell.checked = false;                
	selRow.className = "mouseOut";
  }
}
function jstbl_setTickbox(i)
{
  selRow = document.getElementById("cells_"+i);
  selCell = document.getElementById("jo_id_"+i);
  if(this.checked == false)
  {
	selRow.className = "mouseOut";
  }else{               
	selRow.className = "select";
  }
}
function jstbl_setCheckboxesTrue(i)
{
  selCell = document.getElementById("jo_id_"+i);
  selRow = document.getElementById("cells_"+i);
  selCell.checked = true;
}
function jstbl_setMouseOut(i)
{
  var id;
  id = i.split("|");
  selCell = document.getElementById("jo_id_"+id[0]);
  selRow = document.getElementById("cells_"+id[0]);
  if (selCell.checked == false) selRow.className='mouseOut'+id[1];
  if (selCell.checked == false && id[2]==1) selRow.className='mouseOutS';
}
function jstbl_setMouseOver(i)
{
  selCell = document.getElementById("jo_id_"+i);
  selRow = document.getElementById("cells_"+i);
  if (selCell.checked == false) selRow.className='mouseOver';
}
function jstblun_setCheckboxes(i)
{
  selCell = document.getElementById("un_id_"+i);
  selRow = document.getElementById("cells_"+i);
  
  if (selCell.checked == false)
  {
	selCell.checked = true;
	selRow.className = "select";
  }else{
	selCell.checked = false;                
	selRow.className = "mouseOut";
  }
}
function jstblun_setTickbox(i)
{
  selRow = document.getElementById("cells_"+i);
  selCell = document.getElementById("un_id_"+i);
  if(this.checked == false)
  {
	selRow.className = "mouseOut";
  }else{               
	selRow.className = "select";
  }
}
function jstblun_setCheckboxesTrue(i)
{
  selCell = document.getElementById("un_id_"+i);
  selRow = document.getElementById("cells_"+i);
  selCell.checked = true;
}
function jstblun_setMouseOut(i)
{
  var id;
  id = i.split("|");
  selCell = document.getElementById("un_id_"+id[0]);
  selRow = document.getElementById("cells_"+id[0]);
  if (selCell.checked == false) selRow.className='mouseOut'+id[1];
}
function jstblun_setMouseOver(i)
{
  selCell = document.getElementById("un_id_"+i);
  selRow = document.getElementById("cells_"+i);
  if (selCell.checked == false) selRow.className='mouseOver';
}
function showHideDiv(divID) 
{ 
  if ( $(divID).style.display == "none" )
  {
    $(divID).show();
  }else{
	$(divID).hide();
  }
}

function center(element) {
    try {
        element = $(element);
    } catch (e) {
        return;
    }
    var the_width = 0;
    var the_height = 0;
    if (typeof window.innerWidth == "number") {
        the_width = window.innerWidth;
        the_height = window.innerHeight;
    } else if (document.documentElement &&
        (document.documentElement.clientWidth ||
        document.documentElement.clientHeight)) {
        the_width = document.documentElement.clientWidth;
        the_height = document.documentElement.clientHeight;
    } else if (document.body &&
        (document.body.clientWidth || document.body.clientHeight)) {
        the_width = document.body.clientWidth;
        the_height = document.body.clientHeight;
    }
    element.style.position = "absolute";
    element.style.zIndex = 80;
    var scrollY = 0;
    if (document.documentElement && document.documentElement.scrollTop) {
        scrollY = document.documentElement.scrollTop;
    } else if (document.body && document.body.scrollTop) {
        scrollY = document.body.scrollTop;
    } else if (window.pageYOffset) {
        scrollY = window.pageYOffset;
    } else if (window.scrollY) {
        scrollY = window.scrollY;
    }
    var elementDimensions = Element.getDimensions(element);
    var setX = (the_width - elementDimensions.width) / 2;
    var setY = (the_height - elementDimensions.height) / 2 + scrollY;
    setX = setX < 0 ? 0 : setX;
	/* added a -40 to move the box up */
    setY = setY < 0 ? 0 : setY - 40;
	
    element.style.left = setX + "px";
    $(element).setStyle({top:setY + "px"});
}
