<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->
<!-- Original:  Sean Geraty () -->
<!-- Web Site:  http://www.freewebs.com/sean_geraty/ -->
<!--
// Control flags for list selection and sort sequence
// Sequence is on option value (first 2 chars - can be stripped off in form processing)
// It is assumed that the select list is in sort sequence initially

var singleSelect = true;  // Allows an item to be selected once only
var sortSelect = false;  // Only effective if above flag set to true
var sortPick = true;  // Will order the picklist in sort sequence


function fauxHover() {
   

   var inputs = document.getElementsByTagName('input');
   for (var i=0; i<inputs.length; i++) {


  if(inputs[i].className!='readonly' && inputs[i].name!="Submit2" && inputs[i].name!="Submit" && inputs[i].name!="Delete")
     {
   //   inputs[i].onmouseover = function() { this.className = 'hovered' }
      inputs[i].onkeydown= function() { this.className = 'hovered' }
      inputs[i].onmouseover= function() { this.className = 'hovered' }
      inputs[i].onmouseout = function() { this.className = '' }
      }
   }



  var inputs = document.getElementsByTagName('textarea');
   for (var i=0; i<inputs.length; i++) {
   //   inputs[i].onmouseover = function() { this.className = 'hovered' }
      inputs[i].onkeydown= function() { this.className = 'hovered' }
      inputs[i].onmouseover= function() { this.className = 'hovered' }
      inputs[i].onmouseout = function() { this.className = '' }
   }


  // var fieldsets = document.getElementsByTagName('fieldset');
 //  for (var i=0; i<fieldsets.length; i++) {
 //     fieldsets[i].onmouseover = function() { this.className = 'hovered' }
 //     fieldsets[i].onmouseout = function() { this.className = '' }
 //  }
   
}
   

function openNewsletter(newURL) {
var h = 500;
var w = 750;
window.open(newURL, "window","height="+h+",width="+w+",scrollbars=yes,dependent=1,screenX=100,screenY=100,left=100,top=100,alwaysRaised=1");

}



// Initialise - invoked on load
function initCategories() {
  var selectList = document.getElementById("selected_categories");
  var pickList = document.getElementById("pick_categories");
  var pickOptions = pickList.options;

  // pickOptions[0] = null;  // Remove initial entry from picklist (was only used to set default width)
  selectList.focus();  // Set focus on the selectlist
}

function selectCategories()
{

 var selectList = document.getElementById("selected_categories");
 var pickList = document.getElementById("pick_categories");
 var course = document.getElementById("course");
 var pickValues = document.getElementById("pickValues");
 var pickOptions = pickList.options;
 var pickLength = pickOptions.length;
var temp="";
var i=0;

if (!course.value)
		{
			alert('You haven\'t filled in the course name.');
			course.focus();
			return false;
		}

var nocat=false;

if(pickLength==1)
{
if(pickOptions[0].value==" ") nocat=true;
if(pickOptions[0].value=="") nocat=true;
}
else if(pickLength <= 0) nocat=true;



if(nocat==true) {alert("Please select at least one category for this course.\nUse the up arrow button to select from the list of Available Categories."); return false;}

var sep=" ";

for(var i=0;i<pickLength;i++)
  {
temp =temp + pickOptions[i].value + sep;
  }
pickValues.value  = temp;


form = document.getElementById("form1");
form.submit();


}

// Adds a selected item into the picklist
function addCategory() {

  var selectList = document.getElementById("selected_categories");
  var selectIndex = selectList.selectedIndex;
  var selectOptions = selectList.options;
  var pickList = document.getElementById("pick_categories");
  var pickOptions = pickList.options;
  var pickOLength = pickOptions.length;

  // An item must be selected

  if (selectIndex > -1) {
    pickOptions[pickOLength] = new Option(selectList[selectIndex].text);
    pickOptions[pickOLength].value = selectList[selectIndex].value;

    // If single selection, remove the item from the select list
    if (singleSelect) {
      selectOptions[selectIndex] = null;
    }

    if (sortPick) {
      var tempText;
      var tempValue;

      // Sort the pick list
      while (pickOLength > 0 && pickOptions[pickOLength].value < pickOptions[pickOLength-1].value) {

        tempText = pickOptions[pickOLength-1].text;
        tempValue = pickOptions[pickOLength-1].value;
        pickOptions[pickOLength-1].text = pickOptions[pickOLength].text;
        pickOptions[pickOLength-1].value = pickOptions[pickOLength].value;
        pickOptions[pickOLength].text = tempText;
        pickOptions[pickOLength].value = tempValue;
        pickOLength = pickOLength - 1;
      }
    }
  }

}



// Deletes an item from the picklist

function delCategory() {


  var selectList = document.getElementById("selected_categories");
  var selectOptions = selectList.options;
  var selectOLength = selectOptions.length;
  var pickList = document.getElementById("pick_categories");
  var pickIndex = pickList.selectedIndex;
  var pickOptions = pickList.options;

  if (pickIndex > -1) {

    // If single selection, replace the item in the select list
    if (singleSelect) {
      selectOptions[selectOLength] = new Option(pickList[pickIndex].text);
      selectOptions[selectOLength].value = pickList[pickIndex].value;
    }

    pickOptions[pickIndex] = null;
    if (singleSelect && sortSelect) {

      var tempText;
      var tempValue;

      // Re-sort the select list

      while (selectOLength > 0 && selectOptions[selectOLength].value < selectOptions[selectOLength-1].value) {
        tempText = selectOptions[selectOLength-1].text;
        tempValue = selectOptions[selectOLength-1].value;
        selectOptions[selectOLength-1].text = selectOptions[selectOLength].text;
        selectOptions[selectOLength-1].value = selectOptions[selectOLength].value;
        selectOptions[selectOLength].text = tempText;
        selectOptions[selectOLength].value = tempValue;
        selectOLength = selectOLength - 1;
      }
    }
  }

}


function submitme_update(id)
{
var f = document.form1;
f.updatefield.value=id;
f.submit();
}


function submitme_update2(id,hiddenid)
{
var f = document.form2;
f.updatefield2.value=id;
f.hiddenid.value=hiddenid;
f.submit();
}


function confirmDelete()
{
var f = document.form1;

var x = confirm('Do you really want to delete this record?');
if(x == true) {f.submit();}

else return false;

}

function test()
{
alert("HEY");
}

function submitme_delete(id)
{

var f = document.form1;

var x = confirm('Do you really want to delete this record?');
if(x == true) {
   f.deletefield.value=id;
   f.submit();}

}

function submitme_delete2(id)
{

var f = document.form2;

var x = confirm('Do you really want to delete this record?');
if(x == true) {
   f.deletefield2.value=id;
   f.submit();}

}

function showError(str)
{
alert(str);
}

function checkCurrField(fld)
{ if(!fld.value) return true;
    var temp_value = fld.value; 
    if (temp_value == "")  { fld.value = "0.00";  return; } 
       var Chars = ",0123456789.-"; 
         for (var i = 0; i < temp_value.length; i++) 
            { 
               if (Chars.indexOf(temp_value.charAt(i)) == -1) 
                 { 
                   alert("Invalid Character(s)\n\nOnly numbers (0-9), a minus sign, a comma for thousands-separator, and a period are allowed in this field."); 
                   fld.focus(); fld.select();  return false; 
                 } 
            } 
   return true;
} 

function checkDateField(fld)
{
 if(!fld.value) return true;
    var temp_value = fld.value; 
    if (temp_value == "")  { fld.value = "";  return; } 
       var Chars = "/0123456789"; 

    d = new Date(temp_value.replace('//',''));
    if (isNaN(d)) {alert('Invalid Character(s)\n\n Please enter a date in the format mm/dd/yy or mm/dd/yyyy');  fld.focus(); fld.select();  return false; }
      else if (d.getDate() != parseInt(dString)) {alert('Invalid Character(s)\n\n Please enter a date in the format mm/dd/yy or mm/dd/yyyy');  fld.focus(); fld.select();  return false; } // 35-MAR-2005

return true;
} 



function checkTimeField(fld)
{ if(!fld.value) return true;
    var temp_value = fld.value; 
    if (temp_value == "")  { fld.value = "";  return; } 
       var Chars = ":0123456789 ampAMP"; 
         for (var i = 0; i < temp_value.length; i++) 
            { 
               if (Chars.indexOf(temp_value.charAt(i)) == -1) 
                 { 
                   alert("Invalid Character(s)\n\n Please enter a time in the format hh:mm am or hh:mm pm, e.g 9:00 am or 3:00 pm."); 
                   fld.focus(); fld.select();  return false; 
                 } 
            } 

  // calcEndTime.value = temp_value + 6;
form1.submit();
  // this.submit();
} 


function checkEmailField(fld)
{
if(!fld.value) return true;
var objRegExp  = /(^[a-z0-9]([a-z_\.0-9]*)@([a-z_\.0-9]*)([.][a-z]{3})$)|(^[a-z]([a-z_\.]*)@([a-z_\.]*)(\.[a-z]{3})(\.[a-z]{2})*$)/i;
if( objRegExp.test(fld.value)) return true;
else {showError("Email is not properly formatted"); fld.focus; return false;}

}


function checkIntField(fld)
{
if(!fld.value) return true;

var objRegExp  =  /(^-?\d\d*\.\d*$)|(^-?\d\d*$)|(^-?\.\d\d*$)/;
if( objRegExp.test(fld.value)) return true;
else {showError("Numeric input only"); fld.focus; return false;}
}




function checkEmptyField(fld)
{
if(!fld.value) {
            showError("This cannot be empty"); fld.focus; return false;
                }
return true;
} 

function checkZip(fld)
{
var objRegExp  = /(^\d{5}$)|(^\d{5}-\d{4}$)/;
  //check for valid US Zipcode
    if (!objRegExp.test(fld.value))    {showError("Invalid zipcode. Format is 12345 or 12345-6789."); fld.focus; return false;}
  
 return true;
 
 }


function checkField(fld)
{
if(!fld.value) return false;
}

function checkPassword(fld)
{
if(!fld.value) return false;
}

function checkEmptyFields(form,field,field2)
{
var i,j;

for (i=0;i<form.elements.length;i++)
	{
		j = form.elements[i];

        if(j.name == field  && !j.value)
           {
            alert('You haven\'t filled in: ' +j.name + '.');
			j.focus();
			return false;
           }

        else if(j.name == field2  && !j.value)
           {
            alert('You haven\'t filled in: ' +j.name + '.');
			j.focus();
			return false;
           }

			
	}
	return true;
}


function checkSendMail(form,step)
{
 switch(step)
     {
     case 1: form.step1.value=1;
     case 2: form.step2.value=2; 
    case 3: form.step3.value=3;

  break;

default:break;
    }

return true;

}


function checkForm(form)
{

var i,j;

for (i=0;i<form.elements.length;i++)
	{
		j = form.elements[i];

		if (!j.value && j.name!="lname")
		{
			alert('You haven\'t filled in your: ' +j.id + '.');
			j.focus();
			return false;
		}
			//}
	}
	return true;


}