// JavaScript Document
// Global variables
    var theFields = new Array("m0","m1","m2","m3","m4","m5","m6","m7","m8","m9","m10") // Registration form
    var checkedValue;
/* Mail */

function write_mail(user, display_name) {
 document.write('<a href="mailto:' + user + '@' + 'abc-ca.org' + '">');
 if (display_name)
    document.write(display_name);
 else
    document.write(user + '@' + 'abc-ca.org');
 document.write('</a>');
}

/* browser detection */
var BrowserDetect = {
    init: function () {
        this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
        this.version = this.searchVersion(navigator.userAgent)
            || this.searchVersion(navigator.appVersion)
            || "an unknown version";
        this.OS = this.searchString(this.dataOS) || "an unknown OS";
    },
    searchString: function (data) {
        for (var i=0;i<data.length;i++)    {
            var dataString = data[i].string;
            var dataProp = data[i].prop;
            this.versionSearchString = data[i].versionSearch || data[i].identity;
            if (dataString) {
                if (dataString.indexOf(data[i].subString) != -1)
                    return data[i].identity;
            }
            else if (dataProp)
                return data[i].identity;
        }
    },
    searchVersion: function (dataString) {
        var index = dataString.indexOf(this.versionSearchString);
        if (index == -1) return;
        return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
    },
    dataBrowser: [
        {     string: navigator.userAgent,
            subString: "OmniWeb",
            versionSearch: "OmniWeb/",
            identity: "OmniWeb"
        },
        {
            string: navigator.vendor,
            subString: "Apple",
            identity: "Safari"
        },
        {
            prop: window.opera,
            identity: "Opera"
        },
        {
            string: navigator.vendor,
            subString: "iCab",
            identity: "iCab"
        },
        {
            string: navigator.vendor,
            subString: "KDE",
            identity: "Konqueror"
        },
        {
            string: navigator.userAgent,
            subString: "Firefox",
            identity: "Firefox"
        },
        {
            string: navigator.vendor,
            subString: "Camino",
            identity: "Camino"
        },
        {        // for newer Netscapes (6+)
            string: navigator.userAgent,
            subString: "Netscape",
            identity: "Netscape"
        },
        {
            string: navigator.userAgent,
            subString: "MSIE",
            identity: "Explorer",
            versionSearch: "MSIE"
        },
        {
            string: navigator.userAgent,
            subString: "Gecko",
            identity: "Mozilla",
            versionSearch: "rv"
        },
        {         // for older Netscapes (4-)
            string: navigator.userAgent,
            subString: "Mozilla",
            identity: "Netscape",
            versionSearch: "Mozilla"
        }
    ],
    dataOS : [
        {
            string: navigator.platform,
            subString: "Win",
            identity: "Windows"
        },
        {
            string: navigator.platform,
            subString: "Mac",
            identity: "Mac"
        },
        {
            string: navigator.platform,
            subString: "Linux",
            identity: "Linux"
        }
    ]

};
BrowserDetect.init();

function topMenu() {
// create the top menu: ==============================================================

var topmenu = new MENU("top");        // new horizontal menu

// here are our menu items (level, height, text, [URL], [target], [JavaScript]):
//topmenu.entry(1, 16, "<b>Home</b>","index.php", "", "alert('You clicked menu 2 item 1')");

topmenu.entry(1, 12, "<b>Home</b>","home.php", "", "");
topmenu.entry(1, 12, "<b>About</b>","welcome.php", "", "");
topmenu.entry(2, 12, "<b>Affiliations</b>","affiliations.php", "", "");
topmenu.entry(2, 12, "<b>Contact Us</b>","contactus.php#emailform", "", "");
topmenu.entry(2, 12, "<b>Faculty & Staff</b>","faculty.php", "", "");
topmenu.entry(2, 12, "<b>How to Get Here</b>","map.php", "", "");
topmenu.entry(2, 12, "<b>Our History</b>","history.php", "", "");
topmenu.entry(2, 12, "<b>Our Passion & Faith</b>","passion.php", "", "");
topmenu.entry(2, 12, "<b>Welcome</b>","welcome.php", "", "");
topmenu.entry(1, 12, "<b>Academics</b>","academics.php", "", "");
topmenu.entry(2, 12, "<b>Library</b>","lrc.php", "", "");
topmenu.entry(2, 12, "<b>Ministry Experiences</b>","ministry.php", "", "");
topmenu.entry(2, 12, "<b>Program Overview</b>","programs.php", "", "");
topmenu.entry(2, 12, "<b>Programs</b>","programs.php", "", "");
topmenu.entry(3, 12, "<b>Distance Learning</b>","dl.php", "", "");
topmenu.entry(3, 12, "<b>PACE</b>","pace.php", "", "");
topmenu.entry(3, 12, "<b>Regular Program</b>","regularprogram.php", "", "");
topmenu.entry(3, 12, "<b>TESOL</b>","tesol.php", "", "");
topmenu.entry(1, 12, "<b>Student Life</b>","studentlife.php", "", "");
topmenu.entry(2, 12, "<b>About Town</b>","abouttown.php", "", "");
topmenu.entry(2, 12, "<b>Community Life</b>","communitylife.php", "", "");
topmenu.entry(2, 12, "<b>Sports</b>","sports.php", "", "");
topmenu.entry(1, 12, "<b>Admissions</b>","admissions.php", "", "");
topmenu.entry(2, 12, "<b>Qualifications</b>","qualifications.php", "", "");
topmenu.entry(2, 12, "<b>Cost</b>","cost.php", "", "");
topmenu.entry(2, 12, "<b>Apply</b>","application.php", "", "");
topmenu.entry(1, 12, "<b>Other Stuff</b>","", "", "");
topmenu.entry(2, 12, "<b>FAQ's</b>","faqs.php", "", "");
topmenu.entry(2, 12, "<b>Links</b>","links.php", "", "");
//topmenu.entry(2, 12, "<b>Traffic Report</b>","trafficreport.php", "", "");
topmenu.entry(2, 12, "<b>Search Site</b>","searchresults.php", "", "");
topmenu.entry(1, 12, "<b>Downloads</b>","downloads.php", "", "");

topmenu.mainTop = 0;                 // menu top position in pixels
topmenu.mainLeft = 10;               // menu left position in pixels
topmenu.mainBGColor = "";     // menu background
topmenu.floatMenu = false;            // we don't want a floating menu
topmenu.create();                     // create the menu

}



/* AJAX */

function ajaxFunction() {
    var xmlHttp;
    try {
        // Firefox, Opera 8.0+, Safari
        xmlHttp=new XMLHttpRequest();
    }
    catch (e) {
        // Internet Explorer
        try {
            xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e) {
            try {
                xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (e) {
                alert("Your browser does not support AJAX!");
                return false;
            }
        }
    }
}

function goto_URL(object, refreshPage, theVariable) {
//alert(theID);
    if (refreshPage == null) {
        window.location.href = object.options[object.selectedIndex].value;
    }
    else {
            window.location.href = "database.php?" + theVariable + "=" + object.options[object.selectedIndex].value;
    }
}

function goto_URL2(object, firstVar, refreshPage, theVariables) {
var newLocation;
    if (refreshPage == null) {
        window.location.href = object.options[object.selectedIndex].value;
    }
    else {
    //alert('First: '+object.options[object.selectedIndex].value+'Second: '+object2.options[object.selectedIndex].value);
        var mySplitResults = theVariables.split('^');
        newLocation = "database.php" + mySplitResults[0] + "=" + firstVar;
        window.location.href = newLocation + "&" + mySplitResults[1] + "=" + object.options[object.selectedIndex].value;
    }
}

function goto_URL3(object, firstVar, secondVar, refreshPage, theVariables) {
var newLocation;
    if (refreshPage == null) {
        window.location.href = object.options[object.selectedIndex].value;
    }
    else {
        var mySplitResults = theVariables.split('^');
        newLocation = "database.php" + mySplitResults[0] + "=" + firstVar;
        newLocation = newLocation + "&" + mySplitResults[1] + "=" + secondVar;
        window.location.href = newLocation + "&" + mySplitResults[2] + "=" + object.options[object.selectedIndex].value;
    }
}

/* Preload button images */

var offMenuItem = new Array("images/bg/off_home.jpg","images/bg/off_about.jpg","images/bg/off_contact.jpg","images/bg/off_product.jpg","images/bg/off_retailer.jpg","images/bg/off_login.jpg");
var onMenuItem = new Array("images/bg/over_home.jpg","images/bg/over_about.jpg","images/bg/over_contact.jpg","images/bg/over_product.jpg","images/bg/over_retailer.jpg","images/bg/over_login.jpg");

//var offMenuItem = new Array('<img src="images/bg/off_home.jpg" name="Home">',"<img src=\"images/bg/off_about.jpg\" name=\"About\">","<img src=\"images/bg/off_contact.jpg\" name=\"Contact\">","<img src=\"images/bg/off_product.jpg\" name=\"Product\">","<img src=\"images/bg/off_retailer.jpg\" name=\"Retailer\">","<img src=\"images/bg/off_login.jpg\" name=\"Login\">");
//var onMenuItem = new Array('<img src="images/bg/over_about.jpg" name="Home">',"<img src=\"images/bg/on_about.jpg\" name=\"About\">","<img src=\"images/bg/over_contact.jpg\" name=\"Contact\">","<img src=\"images/bg/over_product.jpg\" name=\"Product\">","<img src=\"images/bg/over_retailer.jpg\" name=\"Retailer\">","<img src=\"images/bg/over_login.jpg\" name=\"Login\">");

function mouseIsOver(theImage,theTag) {
    if (document.images) {
        document[theTag].src = onMenuItem[theImage];
      }
     else if (document.all)
     {
          // this is the way old msie versions work
     }
     else if (document.layers)
     {
          // this is the way nn4 works
     }
}

function mouseIsOff(theImage,theTag) {
      if (document.images) {
        document[theTag].src = offMenuItem[theImage];
      }
     else if (document.all)
     {
          // this is the way old msie versions work
     }
     else if (document.layers)
     {
          // this is the way nn4 works
     }
}

function refreshPage(address) {
    var theFields = '?';
    for(i=0; i<document.editForm.elements.length; i++) {
        theFields = theFields + document.editForm.elements[i].name + "=" + document.editForm.elements[i].value + "&";
    }

    window.location = address + theFields;
}

//Trim whitespace
String.prototype.trim = function () {
    var reExtraSpace = /^\s+(.*?)\s+$/;
    return this.replace(reExtraSpace, "$1");
};

function removeCommonSearchWords() {


    formName = document.searchform.elements;
    var commonWords = ["^the^;","^and^","^of^","^a^","^but^"];
    var searchString = "&nbsp;"+formName['search'].value+"&nbsp;";
    var searchString1 = new RegExp("|the|a| or | of |", "gi")
    //for (counter = 0; counter < commonWords.length; counter++) {
        formName['search'].value = formName['search'].value.replace(searchString1," ");
    //}
    //alert (formName['search'].value);
//formName['search'].value = "dog";
    formName['search'].value = formName['search'].value.trim();
    //return formName['search'].value = searchString;
    //formName['search'].focus;
}

function toggleLayerHide(whichLayer)
{
     if (document.getElementById)
     {
          // this is the way the standards work
          document.getElementById(whichLayer).style.display = 'none';
     }
     else if (document.all)
     {
          // this is the way old msie versions work
          var sport = document.all[whichLayer].style;
          sport.display = sport.display? "":"none";
     }
     else if (document.layers)
     {
          // this is the way nn4 works
          var sport = document.layers[whichLayer].style;
          sport.display = sport.display? "":"none";
     }
}

function toggleLayerView(whichLayer) // Hide when clicked twice
{
     if (document.getElementById)
     {
          // this is the way the standards work
          if (document.getElementById(whichLayer).style.display == 'block') {document.getElementById(whichLayer).style.display = 'none';}
          else {document.getElementById(whichLayer).style.display = 'block';}
     }
     else if (document.all)
     {
          // this is the way old msie versions work
          var theLayer = document.all[whichLayer].style;
          theLayer.display = theLayer.display? "none":"block";
     }
     else if (document.layers)
     {
          // this is the way nn4 works
          var theLayer = document.layers[whichLayer].style;
          theLayer.display = theLayer.display? "none":"block";
     }
}

function layerView(whichLayer) // Does not hide when clicked twice
{
//    alert(whichLayer)
     if (document.getElementById)
     {
          // this is the way the standards work
          document.getElementById(whichLayer).style.display = 'block';
     }
     else if (document.all)
     {
          // this is the way old msie versions work
          var theLayer = document.all[whichLayer].style;
          theLayer.display = theLayer.display? "":"block";
     }
     else if (document.layers)
     {
          // this is the way nn4 works
          var theLayer = document.layers[whichLayer].style;
          theLayer.display = theLayer.display? "":"block";
     }
}

function togglepaceeducation(whichLayer) // Hide when clicked twice
{
    if (document.getElementById)
     {
          // this is the way the standards work
          document.getElementById("admissions").style.display = 'none';
          document.getElementById("baleadership").style.display = 'none';
          document.getElementById("dipleadership").style.display = 'none';
          document.getElementById("bacounsel").style.display = 'none';
          document.getElementById("dipcounsel").style.display = 'none';
     }
     else if (document.all)
     {
          // this is the way old msie versions work
          var thelayer = document.all["admissions"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.all["baleadership"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.all["dipleadership"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.all["bacounsel"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.all["dipcounsel"].style;
          thelayer.display = thelayer.display? "":"none";
     }
     else if (document.layers)
     {
          // this is the way nn4 works
          var thelayer = document.layers["admissions"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.layers["baleadership"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.layers["dipleadership"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.layers["bacounsel"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.layers["dipcounsel"].style;
          thelayer.display = thelayer.display? "":"none";
     }

     if (document.getElementById)
     {
          // this is the way the standards work
          document.getElementById(whichLayer).style.display = 'block';
     }
     else if (document.all)
     {
          // this is the way old msie versions work
          var theLayer = document.all[whichLayer].style;
          theLayer.display = theLayer.display? "":"block";
     }
     else if (document.layers)
     {
          // this is the way nn4 works
          var theLayer = document.layers[whichLayer].style;
          theLayer.display = theLayer.display? "":"block";
     }
}

function togglerequestprogramlayer(whichLayer) // Hide when clicked twice
{
    if (document.getElementById)
     {
          // this is the way the standards work
          document.getElementById("general").style.display = 'none';
          document.getElementById("regular").style.display = 'none';
          document.getElementById("pacep").style.display = 'none';
          document.getElementById("distance").style.display = 'none';
          document.getElementById("tesol").style.display = 'none';
     }
     else if (document.all)
     {
          // this is the way old msie versions work
          var thelayer = document.all["general"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.all["regular"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.all["pacep"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.all["distance"].style;
          thelayer.display = thelayer.display? "":"none";
     }
     else if (document.layers)
     {
          // this is the way nn4 works
          var thelayer = document.layers["general"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.layers["regular"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.layers["pacep"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.layers["distance"].style;
          thelayer.display = thelayer.display? "":"none";
     }

     if (document.getElementById)
     {
          // this is the way the standards work
          document.getElementById(whichLayer).style.display = 'block';
     }
     else if (document.all)
     {
          // this is the way old msie versions work
          var theLayer = document.all[whichLayer].style;
          theLayer.display = theLayer.display? "":"block";
     }
     else if (document.layers)
     {
          // this is the way nn4 works
          var theLayer = document.layers[whichLayer].style;
          theLayer.display = theLayer.display? "":"block";
     }
}

function togglerequestlayer(whichLayer) // Hide when clicked twice
{
    if (document.getElementById)
     {
          // this is the way the standards work
          document.getElementById("request").style.display = 'none';
          document.getElementById("faqs").style.display = 'none';
     }
     else if (document.all)
     {
          // this is the way old msie versions work
          var thelayer = document.all["request"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.all["faqs"].style;
          thelayer.display = thelayer.display? "":"none";
     }
     else if (document.layers)
     {
          // this is the way nn4 works
          var thelayer = document.layers["request"].style;
          thelayer.display = thelayer.display? "":"none";
          var thelayer = document.layers["faqs"].style;
          thelayer.display = thelayer.display? "":"none";
     }

     if (document.getElementById)
     {
          // this is the way the standards work
          document.getElementById(whichLayer).style.display = 'block';
     }
     else if (document.all)
     {
          // this is the way old msie versions work
          var theLayer = document.all[whichLayer].style;
          theLayer.display = theLayer.display? "":"block";
     }
     else if (document.layers)
     {
          // this is the way nn4 works
          var theLayer = document.layers[whichLayer].style;
          theLayer.display = theLayer.display? "":"block";
     }
}

function change_color(whichLayer, color) // change text color
{
//     alert(color)
//     alert(whichLayer)
    if (document.getElementById)
     {
          // this is the way the standards work
//          alert(whichLayer)
          document.getElementById(whichLayer).style.color = color;
     }
     else if (document.all)
     {
          // this is the way old msie versions work
          var theLayer = document.all[whichLayer].style;
          theLayer.color = theLayer.color? "":color;
     }
     else if (document.layers)
     {
          // this is the way nn4 works
          var theLayer = document.layers[whichLayer].style;
          theLayer.color = theLayer.color? "":color;
     }
}

function font_color(whichLayer, color, pageNum) // change text color
{
//     alert(color)
//     alert(whichLayer)
    if (document.getElementById)
     {
          // this is the way the standards work
//          alert(whichLayer)
          document.getElementById(whichLayer).style.color = color;
     }
     else if (document.all)
     {
          // this is the way old msie versions work
          var theLayer = document.all[whichLayer].style;
          theLayer.color = theLayer.color? "":color;
     }
     else if (document.layers)
     {
          // this is the way nn4 works
          var theLayer = document.layers[whichLayer].style;
          theLayer.color = theLayer.color? "":color;
     }
}

function font_weight(whichLayer, theWeight, pageNum) // change text color
{
    var theCount
    for(theCount=0;theCount<=pageNum;theCount++){
        if (document.getElementById)
         {
              // this is the way the standards work
              document.getElementById(theFields[theCount]).style.fontWeight = theWeight;
         }
         else if (document.all)
         {
              // this is the way old msie versions work
              var theLayer = document.all[theFields[theCount]].style;
              theLayer.fontWeight = theLayer.fontWeight? "":theWeight;
         }
         else if (document.layers)
         {
              // this is the way nn4 works
              var theLayer = document.layers[theFields[theCount]].style;
              theLayer.fontWeight = theLayer.fontWeight? "":theWeight;
         }
    }
}


//Form validation

function goBack(hideWhichLayer,showWhichLayer) {
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;
    if(formDOMObj["thePage"].value == 10) {formDOMObj["thePage"].value = 0;}
    else {
        switch (formDOMObj["thePage"].value) {
            case "1":
                formDOMObj["thePage"].value = 0;
                break;
            case "2":
                formDOMObj["thePage"].value = 1;
                break;
            case "8":
                formDOMObj["thePage"].value = 2;
                break;
            case "9":
                formDOMObj["thePage"].value = 8;
                break;
            default:
                formDOMObj["thePage"].value = 11;
                break;
        }
    }

    toggleLayerHide("general_error_top");change_color("required","#000000");//toggleLayerHide("general_error_bottom")
    toggleLayerHide(hideWhichLayer);
    layerView(showWhichLayer);
    progressChange(theFields[formDOMObj["thePage"].value]);
    return true;
}

function progressChange (thefield) {

    var counter
    var elementIndex=-1;
    for(counter=0;counter<theFields.length;counter++) {
        change_color(theFields[counter],"#000000")
        if(theFields[counter] == thefield) { elementIndex = counter; }
    }
    change_color(thefield,"#ff0000")
    font_weight(thefield,"bold",elementIndex)
}

function goForward() {
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;

    switch (formDOMObj["thePage"].value) {
        case "0":
            if (registration_0()) {  return true; } else { return false; };  
            break;
        case "1":
            if (registration_1()) {  return true; } else { return false; };  
            break;
        case "2":
            if (registration_2()) {  return true; } else { return false; };  
            break;
        case "3":
            if (registration_3()) {  return true; } else { return false; };
            break;
        case "4":
            if (registration_4()) {  return true; } else { return false; };
            break;
        case "5":
            if (registration_5()) {  return true; } else { return false; };
            break;
        case "6":
            if (registration_6()) {  return true; } else { return false; };
            break;
        case "7":
            if (registration_7()) {  return true; } else { return false; };
            break;
        case "8":
            if (registration_8()) {  return true; } else { return false; };
            break;
        case "9":
            if (registration_9()) {  return true; } else { return false; };
            break;
        case "10":
            if (registration_10()) {  return true; } else { return false; };
            break;
        case "11":
            if (registration_11()) {  return true; } else { return false; };
            break;
    }

}

function validateSurvey() {
    var formDOMObj = document.surveyForm.elements;
    var failed = false;
    var rFields = new Array("r_1","r_1_1","r_1_2","r_1_3","r_2","r_2_1","r_2_2","r_2_3","r_2_4","r_3","r_3_1","r_3_2","r_3_3","r_4","r_4_1","r_4_2","r_4_3","r_5","r_5_1","r_5_2","r_5_3") // Survey form
    var eFields = new Array("e_1","e_1_1","e_1_2","e_1_3","e_2","e_2_1","e_2_2","e_2_3","e_2_4","e_3","e_3_1","e_3_2","e_3_3","e_4","e_4_1","e_4_2","e_4_3","e_5","e_5_1","e_5_2","e_5_3") // Survey form

//    var formDOMObj = document.getElementById("surveyForm");    var failed = false;
//    alert ("Hello world");
    for(counter=0;counter<rFields.length;counter++) {
        if(getCheckedValue(formDOMObj[rFields[counter]])){ font_color(rFields[counter],"#ff0000",0);failed = true; }else{font_color(rFields[counter],"#000000",0);}
    }
    for(counter=0;counter<eFields.length;counter++) {
        if(getCheckedValue(formDOMObj[eFields[counter]])){ font_color(eFields[counter],"#ff0000",0);failed = true; }else{font_color(eFields[counter],"#000000",0);}
    }
    
    if(failed) {layerView("general_error_bottom");return false;} else {return true;}
}

function validateContactForm(){
    // Make quick references to our fields
  var formDOMObj = document.contactForm.elements;
  failed = false;

    // Check each input in the order that it appears in the form!
    if(empty(formDOMObj["fromName"])){ change_color("name","#FF0000");failed = true; } else{change_color("name","#000000");}
    if(!alphabet(formDOMObj["fromName"])) { change_color("name","#FF0000");failed = true; } else{change_color("name","#000000");}
    if(empty(formDOMObj["subjectEmail"])) { change_color("subject","#FF0000");failed = true; } else{change_color("subject","#000000");}
    if(empty(formDOMObj["theNote"])) { change_color("note","#FF0000");failed = true; } else{change_color("note","#000000");}
    if(empty(formDOMObj["fromEmail"])){ change_color("email_address","#FF0000");failed = true; } else{change_color("email_address","#000000");}
    if(!validateEmail(formDOMObj["fromEmail"])){ change_color("email_address","#FF0000");failed = true; } else{change_color("email_address","#000000");}
    if(formDOMObj["secondFromEmail"].value == formDOMObj["fromEmail"].value && formDOMObj["fromEmail"].value > ""){change_color("second_email_address","#000000");change_color("email_address","#000000"); } else{ change_color("second_email_address","#FF0000");change_color("email_address","#FF0000");failed = true;failed = true;}

    if (failed) {layerView("general_error_top");layerView("general_error_bottom");return false;} else {toggleLayerHide("general_error_top");toggleLayerHide("general_error_bottom");return true;}

}

function familyday_checker(){
    // Make quick references to our fields
  var formDOMObj = document.familyday.elements;
  failed = false;

    // Check each input in the order that it appears in the form!
    if(empty(formDOMObj["code"])){ change_color("code","#FF0000");failed = true; } else{change_color("code","#000000");}    
    if(empty(formDOMObj["first_name"])){ change_color("first_name","#FF0000");failed = true; } else{change_color("first_name","#000000");}
    if(!alphabet(formDOMObj["last_name"])) { change_color("last_name","#FF0000");failed = true; } else{change_color("last_name","#000000");}
    if(empty(formDOMObj["city"])) { change_color("city","#FF0000");failed = true; } else{change_color("city","#000000");}
    if(!validateEmail(formDOMObj["email"])) { change_color("email","#FF0000");failed = true; } else{change_color("email","#000000");}
    if(formDOMObj["secondemail"].value == formDOMObj["email"].value && formDOMObj["email"].value > ""){ change_color("email","#000000");change_color("secondemail","#000000");} else{change_color("email","#FF0000");change_color("secondemail","#FF0000");failed = true; }
    if(getCheckedValue(formDOMObj["gender"])) { change_color("mygender","#FF0000");failed = true; } else{change_color("mygender","#000000");}
    if(!empty(formDOMObj["phone_areac"]) && !empty(formDOMObj["phone_first"]) && !empty(formDOMObj["phone_second"])) { 
        if(!lengthLimit(formDOMObj["phone_areac"], 3, 3) || !lengthLimit(formDOMObj["phone_first"], 3, 3) || !lengthLimit(formDOMObj["phone_second"], 4, 4)) { 
            change_color("phone","#FF0000");failed = true; 
        }
        else {change_color("phone","#000000");}
        }
    else {change_color("phone","#FF0000");failed = true;}

    if (failed) {layerView("general_error_top");layerView("general_error_bottom");return false;} else {toggleLayerHide("general_error_top");toggleLayerHide("general_error_bottom");return true;}

}

function validateGenericContactForm(){ // Request for information form
    // Make quick references to our fields
    var formDOMObj = document.generic_contact.elements;
    // Check each input in the order that it appears in the form!
    var failed = false;
    if(empty(formDOMObj["fromName"])){ change_color("name","#FF0000");failed = true; } else{change_color("name","#000000");}
    if(empty(formDOMObj["fromEmail"])){ change_color("email_address","#FF0000");failed = true; } else{change_color("email_address","#000000");}
    if(!validateEmail(formDOMObj["fromEmail"])){ change_color("email_address","#FF0000");failed = true; } else{change_color("email_address","#000000");}
    if(formDOMObj["secondFromEmail"].value == formDOMObj["fromEmail"].value){change_color("email_address","#000000");change_color("second_email_address","#000000"); } else{change_color("second_email_address","#FF0000"); change_color("email_address","#FF0000");failed = true;}
    if (failed) {layerView("general_error_top");layerView("general_error_bottom");return false;} else {toggleLayerHide("general_error_top");toggleLayerHide("general_error_bottom");return true;}
}

function form_emerge_checker(){ // Request for information form
    // Make quick references to our fields
    var formDOMObj = document.emerge_register.elements;
    var currentTime = new Date()
    var month = currentTime.getMonth()+1
    var year = currentTime.getFullYear()


    failed = false;

    if(getCheckedValue(formDOMObj["gender_id"])){ layerView("required_gender");failed = true; }else{toggleLayerHide("required_gender");}
    if(empty(formDOMObj["first_name"]) || empty(formDOMObj["last_name"])){ layerView("required_name");failed = true; }else{toggleLayerHide("required_name");}
    if(!alphabet(formDOMObj["first_name"]) || !alphabet(formDOMObj["last_name"])){ layerView("required_name");failed = true; }else{toggleLayerHide("required_name");}
    if(empty(formDOMObj["address"])){ layerView("required_address");failed = true; }else{toggleLayerHide("required_address");}
    if(empty(formDOMObj["city"])){ layerView("required_city");failed = true; }else{toggleLayerHide("required_city");}
    if(empty(formDOMObj["province"])){ layerView("required_province");failed = true; }else{toggleLayerHide("required_province");}
    if(empty(formDOMObj["postal_code"])){ layerView("required_code");failed = true; }else{toggleLayerHide("required_code");}
    if(empty(formDOMObj["phone"])){ layerView("required_phone");failed = true; }else{toggleLayerHide("required_phone");}
    if(!lengthLimit(formDOMObj["phone"], 10, 20)){ layerView("required_phone");failed = true; }else{toggleLayerHide("required_phone");}
    if(empty(formDOMObj["email"])){ layerView("required_email");failed = true; }else{toggleLayerHide("required_email");}
    if(!validateEmail(formDOMObj["email"])){ layerView("required_email");failed = true; }else{toggleLayerHide("required_email");}
    if(formDOMObj["grad_year"].value == "null"){ layerView("required_grad");failed = true; }else{toggleLayerHide("required_grad");}
    if(formDOMObj["attending_abc_when"].value == "null"){ layerView("required_attending");failed = true; }else{toggleLayerHide("required_attending");}
    if(formDOMObj["creditcard_type"].value == "null"){ layerView("required_card_type");failed = true; }else{toggleLayerHide("required_card_type");}
    if(empty(formDOMObj["creditcard_number"])){ layerView("required_card_number");failed = true; }else{toggleLayerHide("required_card_number");}
    if(empty(formDOMObj["creditcard_csv"])){ layerView("required_card_number");failed = true; }else{toggleLayerHide("required_card_number");}
    if(!lengthLimit(formDOMObj["creditcard_number"], 16, 16)){ layerView("required_card_number");failed = true; }else{toggleLayerHide("required_card_number");}
    if(empty(formDOMObj["creditcard_name"])){ layerView("required_card_name");failed = true; }else{toggleLayerHide("required_card_name");}
    if(formDOMObj["creditcard_expiry_month"].value == 0 || formDOMObj["creditcard_expiry_year"].value == 0 || (formDOMObj["creditcard_expiry_month"].value < month && formDOMObj["creditcard_expiry_year"].value == year)){ layerView("required_card_date");failed = true; }else{toggleLayerHide("required_card_date");}
    //Did verification fail?
    if (failed) {layerView("general_error_top");change_color("required","#ff0000");return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = thePage;return true;}
}

function form_gemerge_checker(){ // Request for information form
    // Make quick references to our fields
    var formDOMObj = document.emerge_register.elements;
    var currentTime = new Date()
    var month = currentTime.getMonth()+1
    var year = currentTime.getFullYear()

    failed = false;
    if(getCheckedValue(formDOMObj["gender_id"])){ layerView("required_gender");failed = true; }else{toggleLayerHide("required_gender");}
    if(empty(formDOMObj["first_name"]) || empty(formDOMObj["last_name"])){ layerView("required_name");failed = true; }else{toggleLayerHide("required_name");}
    if(!alphabet(formDOMObj["first_name"]) || !alphabet(formDOMObj["last_name"])){ layerView("required_name");failed = true; }else{toggleLayerHide("required_name");}
    if(empty(formDOMObj["address"])){ layerView("required_address");failed = true; }else{toggleLayerHide("required_address");}
    if(empty(formDOMObj["city"])){ layerView("required_city");failed = true; }else{toggleLayerHide("required_city");}
    if(empty(formDOMObj["province"])){ layerView("required_province");failed = true; }else{toggleLayerHide("required_province");}
    if(empty(formDOMObj["postal_code"])){ layerView("required_code");failed = true; }else{toggleLayerHide("required_code");}
    if(empty(formDOMObj["phone"])){ layerView("required_phone");failed = true; }else{toggleLayerHide("required_phone");}
    if(!lengthLimit(formDOMObj["phone"], 10, 20)){ layerView("required_phone");failed = true; }else{toggleLayerHide("required_phone");}
    if(empty(formDOMObj["email"])){ layerView("required_email");failed = true; }else{toggleLayerHide("required_email");}
    if(!validateEmail(formDOMObj["email"])){ layerView("required_email");failed = true; }else{toggleLayerHide("required_email");}
    if(formDOMObj["youthnumbers"].value == "null"){ layerView("required_youth");failed = true; }else{toggleLayerHide("required_youth");}
    if(formDOMObj["sponnumbers"].value == "99"){ layerView("required_sponsor");failed = true; }else{toggleLayerHide("required_sponsor");}
    if(formDOMObj["creditcard_type"].value == "null" ||
        empty(formDOMObj["creditcard_csv"]) || 
        empty(formDOMObj["creditcard_number"]) ||
        !lengthLimit(formDOMObj["creditcard_number"], 16, 16) || 
        empty(formDOMObj["creditcard_name"]) || (formDOMObj["creditcard_expiry_month"].value == 0 || formDOMObj["creditcard_expiry_year"].value == 0 || (formDOMObj["creditcard_expiry_month"].value < month && formDOMObj["creditcard_expiry_year"].value == year)))
            { layerView("required_creditcard");failed = true; } 
            else{toggleLayerHide("required_creditcard");}
    //Did verification fail?
    if (failed) {layerView("general_error_top");change_color("required","#ff0000");return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = thePage;return true;}
}

function form_checker(){ // Request for information form
    // Make quick references to our fields
    var formDOMObj = document.request_info.elements;
    var program_selected = "";
    var counter =0;
    // Check each input in the order that it appears in the form!
    failed = false;
    if(empty(formDOMObj["first_name"])){ change_color("first_name","#FF0000");failed = true; } else{change_color("first_name","#000000");}
    if(empty(formDOMObj["last_name"])){ change_color("last_name","#FF0000");failed = true; } else{change_color("first_name","#000000");}
    if(!alphabet(formDOMObj["first_name"])){ change_color("first_name","#FF0000");failed = true; } else{change_color("first_name","#000000");}
    if(!alphabet(formDOMObj["last_name"])){ change_color("last_name","#FF0000");failed = true; } else{change_color("last_name","#000000");}
    if(getCheckedValue(formDOMObj["gender"])){ change_color("mygender","#FF0000");failed = true; }else{change_color("mygender","#000000");}
    if(empty(formDOMObj["email"])){ change_color("email","#FF0000");failed = true; } else{change_color("email","#000000");}
    if(!validateEmail(formDOMObj["email"])){ change_color("email","#FF0000");failed = true; } else{change_color("email","#000000");}
    if(formDOMObj["secondemail"].value == formDOMObj["email"].value && formDOMObj["email"].value > ""){change_color("email","#000000");change_color("secondemail","#000000"); } else{change_color("secondemail","#FF0000"); change_color("email","#FF0000");failed = true;}
    if(formDOMObj["call_me"].checked) {if(empty(formDOMObj["phone_areac"]) || alphabet(formDOMObj["phone_areac"]) || empty(formDOMObj["phone_first"]) || alphabet(formDOMObj["phone_first"]) || empty(formDOMObj["phone_second"]) || alphabet(formDOMObj["phone_second"])){ change_color("phone","#FF0000");failed = true; } else{change_color("phone","#000000");}} else{change_color("phone","#000000"); }
    if(formDOMObj["call_me"].checked) {if(!lengthLimit(formDOMObj["phone_areac"],3,3) || !lengthLimit(formDOMObj["phone_first"],3,3) || !lengthLimit(formDOMObj["phone_second"],4,4)){ change_color("phone","#FF0000");failed = true; } else{change_color("phone","#000000");}} else{change_color("phone","#000000"); }

    if(!checkRadioArray(formDOMObj["program"])) {change_color("select_program","#FF0000");failed = true; } else{change_color("select_program","#000000");}

    for (i = 0; i < 5; i++){
//        alert(formDOMObj["program"][i].value);
        if (formDOMObj["program"][i].checked == true) program_selected = formDOMObj["program"][i].value;
    }
    if(program_selected == "Regular") {
        if(formDOMObj["The_Rock"].checked) {counter = counter + 1;}
        if(formDOMObj["Diploma_in_Christian_Ministries_Performing_Arts_Emphasis"].checked) {counter = counter + 1;}
        if(formDOMObj["Diploma_in_Christian_Ministries_Professional_Studies_Emphasis"].checked) {counter = counter + 1;}
        if(formDOMObj["BRE_Christian_Ministries_Major"].checked) {counter = counter + 1;}
        if(formDOMObj["BRE_General_Studies_Major_Bridge_Program"].checked) {counter = counter + 1;}
        if(formDOMObj["BRE_Global_Studies_Major"].checked) {counter = counter + 1;}
        if(formDOMObj["Bachelor_of_Theology_Ministerial_Concentration"].checked) {counter = counter + 1;}
        if(counter == 0){ change_color("reg_select","#FF0000");failed = true; } else{change_color("reg_select","#000000");}
    }
    if(program_selected == "PACE") {
        if(formDOMObj["Diploma_Counseling_and_Ministry"].checked) {counter = counter + 1;}
        if(formDOMObj["Diploma_Leadership_and_Ministry"].checked) {counter = counter + 1;}
        if(formDOMObj["BA_Counselling_and_Ministry"].checked) {counter = counter + 1;}
        if(formDOMObj["BA_Leadership_and_Ministry"].checked) {counter = counter + 1;}
        if(counter == 0){ change_color("pace_select","#FF0000");failed = true; } else{change_color("pace_select","#000000");}
    }
    if(program_selected == "Distance") {
        if(formDOMObj["BT103_Gospels"].checked) {counter = counter + 1;}
        if(formDOMObj["BT301_Hebrew_Poetry_and_Wisdom"].checked) {counter = counter + 1;}
        if(formDOMObj["BT112_Spiritual_Formation"].checked) {counter = counter + 1;}
        if(formDOMObj["GE237_History_of_Christianity_I"].checked) {counter = counter + 1;}
        if(formDOMObj["GE237_History_of_Christianity_II"].checked) {counter = counter + 1;}
        if(counter == 0){ change_color("distance_select","#FF0000");failed = true; } else{change_color("distance_select","#000000");}
    }
//alert (program_selected);
    if(program_selected == "TESOL") {
        if(formDOMObj["Certificate_in_TESOL"].checked) {counter = counter + 1;}
        if(formDOMObj["P233_Materials_and_Methods_in_TESOL"].checked) {counter = counter + 1;}
        if(formDOMObj["P224_TESOL_Practicum"].checked) {counter = counter + 1;}
        if(formDOMObj["G223_Second_Language_Acquisition"].checked) {counter = counter + 1;}
        if(formDOMObj["G224_Applied_Linguistics"].checked) {counter = counter + 1;}
        if(counter == 0){ change_color("tesol_select","#FF0000");failed = true; } else{change_color("tesol_select","#000000");}
    }
    
    if (failed) {layerView("general_error_top");layerView("general_error_bottom");return false;} else {toggleLayerHide("general_error_top");toggleLayerHide("general_error_bottom");return true;}
}

function registration_0(){
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;
    var theProgram;
    // Check each input in the order that it appears in the form!
    failed = false;
    var thePage = 1;
//    if(!dropDownCheck(formDOMObj["program_of_interest_id"])){ layerView("required_interest");failed = true; }else{toggleLayerHide("required_interest");}
    if(getCheckedValue(formDOMObj["program_of_interest_id"])){ layerView("required_interest");failed = true; }else{toggleLayerHide("required_interest");}
    theProgram = checkedValue;
    if(getCheckedValue(formDOMObj["salutation_id"])){ layerView("required_salutation");failed = true; }else{toggleLayerHide("required_salutation");}
    if(!dropDownCheck(formDOMObj["country_of_citizenship_id"])){ layerView("required_citizenship");failed = true; }else{toggleLayerHide("required_citizenship");}
    if(!dropDownCheck(formDOMObj["country_of_residency_id"])){ layerView("required_residency");failed = true; }else{toggleLayerHide("required_residency");}
    if(empty(formDOMObj["first_name"])){ layerView("required_first_name");failed = true; }else{toggleLayerHide("required_first_name");}
    if(empty(formDOMObj["last_name"])){ layerView("required_last_name");failed = true; }else{toggleLayerHide("required_last_name");}
    if(!alphabet(formDOMObj["first_name"])){ layerView("required_first_name");failed = true; }else{toggleLayerHide("required_first_name");}
    if(!alphabet(formDOMObj["last_name"])){ layerView("required_last_name");failed = true; }else{toggleLayerHide("required_last_name");}
    if(empty(formDOMObj["email"])){ layerView("required_email");failed = true; }else{toggleLayerHide("required_email");}
    if(!validateEmail(formDOMObj["email"])){ layerView("required_email");failed = true; }else{toggleLayerHide("required_email");}
    if(formDOMObj["email_confirm"].value == formDOMObj["email"].value && formDOMObj["email"].value > ""){toggleLayerHide("required_email_confirm");toggleLayerHide("required_email")} else{ layerView("required_email_confirm");layerView("required_email");failed = true; }
    if(formDOMObj["country_of_residency_id"].value != 227 && formDOMObj["country_of_residency_id"].value != 39 && formDOMObj['unique_identifier'].value == '' && theProgram != 3){thePage = 10;}
    //Does everything check out?
    if (failed) {layerView("general_error_top");change_color("required","#ff0000");return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = thePage;progressChange("m1");return true;}
}

function registration_1(){
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;
    var bdate = formDOMObj["bmonth"].value + '/' + formDOMObj["bday"].value + '/' + formDOMObj["byear"].value
    //Strip out extra characters
    var characters = new Array(".","/","-")
    var home_phone = formDOMObj["home_phone"].value
    var work_phone = formDOMObj["work_phone"].value
    var cell_phone = formDOMObj["cell_phone"].value
    var x
    
    for(x=0;x<characters.length;x++) {
        home_phone = home_phone.replace(characters[x],"")
        work_phone = work_phone.replace(characters[x],"")
        cell_phone = cell_phone.replace(characters[x],"")
    }
    
    // Check each input in the order that it appears in the form! return false;
    failed = false;
    if(empty(formDOMObj["nickname"])){ layerView("required_nickname");failed = true; }else{toggleLayerHide("required_nickname");}
    if(!alphabet(formDOMObj["nickname"])){ layerView("required_nickname");failed = true; }else{toggleLayerHide("required_nickname");}
    if(empty(formDOMObj["address"])){ layerView("required_address");failed = true; }else{toggleLayerHide("required_address");}
    if(empty(formDOMObj["city"])){ layerView("required_city");failed = true; }else{toggleLayerHide("required_city");}
    if(!alphabet(formDOMObj["city"])){ layerView("required_city");failed = true; }else{toggleLayerHide("required_city");}
    if(empty(formDOMObj["province"])){ layerView("required_province");failed = true; }else{toggleLayerHide("required_province");}
    if(!alphabet(formDOMObj["province"])){ layerView("required_province");failed = true; }else{toggleLayerHide("required_province");}
    if(empty(formDOMObj["postal_code"])){ layerView("required_postal");failed = true; }else{toggleLayerHide("required_postal");}
    
    if(compareThreeFields(home_phone, work_phone, cell_phone)){ layerView("required_phone");failed = true; }else{toggleLayerHide("required_phone");}
    if((!varempty(home_phone))) {
        if(!varlengthLimit(home_phone, 10, 20)){ layerView("required_phone");failed = true; }else{toggleLayerHide("required_phone");}
    }
    if((!varempty(work_phone))) {
        if(!varlengthLimit(work_phone, 10, 20)){ layerView("required_phone");failed = true; }else{toggleLayerHide("required_phone");}
    }
    if((!varempty(cell_phone))) {
        if(!varlengthLimit(cell_phone, 10, 20)){ layerView("required_phone");failed = true; }else{toggleLayerHide("required_phone");}
    }
    
//    if(!validateDate(formDOMObj["birthdate"])){ layerView("required_birthdate");failed = true; }else{toggleLayerHide("required_birthdate");}
    if(!validateDate(bdate)){ layerView("required_birthdate");failed = true; }else{toggleLayerHide("required_birthdate");}
    if (formDOMObj["program_of_interest_id"].value < 3) {if(!empty(formDOMObj["parent_guardian_email"])){ if(!validateEmail(formDOMObj["parent_guardian_email"])){ layerView("invalid_email");failed = true; }else{toggleLayerHide("invalid_email");}}else { toggleLayerHide("invalid_email")}}
    switch (formDOMObj["selectedProgram"].value) {
        case "1":
            if(getCheckedValue(formDOMObj["marital_status_id"])){ layerView("required_marital_status");failed = true; }else{toggleLayerHide("required_marital_status");}
            break;
        case "2":
            if(getCheckedValue(formDOMObj["marital_status_id"])){ layerView("required_marital_status");failed = true; }else{toggleLayerHide("required_marital_status");}
            break;
        default:
            break;
    }

    if (failed) {layerView("general_error_top");change_color("required","#ff0000");return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = 2;return true;}
}

function registration_2(){
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;
    // Check each input in the order that it appears in the form!
    failed = false;
    counter = 0;
    tesolcertificate = 0;
    switch (formDOMObj["selectedProgram"].value) {
        case "1":
            if(formDOMObj["edu_one_year_certificate_in_christian_foundations"].checked) counter = counter + 1;
            if(formDOMObj["edu_two_year_diploma_of_christian_ministries"].checked) counter = counter + 1;
            if(formDOMObj["edu_two_year_diploma_in_performing_arts"].checked) counter = counter + 1;
            if(formDOMObj["edu_theology"].checked) counter = counter + 1;
            if(formDOMObj["edu_christian_ministries"].checked) counter = counter + 1;
            if(formDOMObj["edu_global_studies"].checked) counter = counter + 1;
            if(formDOMObj["edu_bridge_program"].checked) counter = counter + 1;
            if(counter == 0){ layerView("required_area");failed = true; } else{toggleLayerHide("required_area");}
            break;
        case "2":
            if(formDOMObj["edu_leadership_and_ministry_degree"].checked) counter = counter + 1;
            if(formDOMObj["edu_counselling_degree"].checked) counter = counter + 1;
            if(formDOMObj["edu_leadership_and_ministry_diploma"].checked) counter = counter + 1;
            if(formDOMObj["edu_counselling_diploma"].checked) counter = counter + 1;
            if(counter == 0){ layerView("required_area");failed = true; } else{toggleLayerHide("required_area");}
            break;
        case "3":
            if(getCheckedValue(formDOMObj["is_student_elsewhere"])){ layerView("required_student_institution");failed = true; }else{toggleLayerHide("required_student_institution");}
            if(checkedValue == '2') {
                if(empty(formDOMObj["current_student_at"])){ layerView("required_student_institution");failed = true; }else{toggleLayerHide("required_student_institution");}
            }
            if(getCheckedValue(formDOMObj["dlCourse"])){ layerView("required_dl");failed = true; }else{toggleLayerHide("required_dl");}
            //if(counter == 0){ layerView("required_area");failed = true; } else{toggleLayerHide("required_area");}
            break;
        case "4":
            if(formDOMObj["edu_Certificate_in_TESOL"].checked) counter = counter + 1;
            if(formDOMObj["edu_Materials_and_Methods_in_TESOL"].checked) counter = counter + 1;
            if(formDOMObj["edu_TESOL_Practicum"].checked) counter = counter + 1;
            if(formDOMObj["edu_Second_Language_Acquisition"].checked) counter = counter + 1;
            if(formDOMObj["edu_Applied_Linguistics"].checked) counter = counter + 1;
            if(counter == 0){ layerView("required_area");failed = true; } else{toggleLayerHide("required_area");}
            break;
        default:
            break;
    }
    if(failed) {layerView("general_error_top");change_color("required","#ff0000");return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = 8;return true;}
}

function registration_3(){
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;
    failed = false;
    counter = 0;
    // Check each input in the order that it appears in the form!
    if(empty(formDOMObj["highest_grade"])){ layerView("required_highest_grade");failed = true; }else{toggleLayerHide("required_highest_grade");}
    if(empty(formDOMObj["highest_year"])){ layerView("required_highest_year");failed = true; }else{toggleLayerHide("required_highest_year");}
    if(empty(formDOMObj["highest_province"])){ layerView("required_highest_province");failed = true; }else{toggleLayerHide("required_highest_province");}
    if(empty(formDOMObj["high_school_address"])){ layerView("required_high_school_address");failed = true; }else{toggleLayerHide("required_high_school_address");}
    if(getCheckedValue(formDOMObj["is_current_student"])){ layerView("required_current_student");failed = true; }else{toggleLayerHide("required_current_student");}
    if(checkedValue=='2') {
        if(empty(formDOMObj["current_grade_year"])){ layerView("required_current_student");failed = true; }else{toggleLayerHide("required_current_student");}
    }

  //Everything checks out. Send it.
    if(failed) {layerView("general_error_top");change_color("required","#ff0000");return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = 4;return true;}
}

function registration_4(){
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;
    // Check each input in the order that it appears in the form!
    failed = false;
    counter = 0;
    if(getCheckedValue(formDOMObj["rejected_id"])){ layerView("required_rejected_id");failed = true; }else{toggleLayerHide("required_rejected_id");}
    if(checkedValue=='2') {
        if(empty(formDOMObj["rejected_reason"])){ layerView("required_rejected_id");failed = true; }else{toggleLayerHide("required_rejected_id");}
    }

  //Everything checks out. Send it.
    if(failed) {layerView("general_error_top");change_color("required","#ff0000");return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = 5;return true;}
}

function registration_5(){
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;
    // Check each input in the order that it appears in the form!
    failed = false;
    counter = 0;
    if(getCheckedValue(formDOMObj["illness_id"])){ layerView("required_illness");failed = true; }else{toggleLayerHide("required_illness");}
    if(checkedValue=='2') {
        if(empty(formDOMObj["illness"])){ layerView("required_illness");failed = true; }else{toggleLayerHide("required_illness");}
    }
    if(getCheckedValue(formDOMObj["disability_id"])){ layerView("required_disability");failed = true; }else{toggleLayerHide("required_disability");}
    if(checkedValue=='2') {
        if(empty(formDOMObj["disability"])){ layerView("required_disability");failed = true; }else{toggleLayerHide("required_disability");}
    }
    if(empty(formDOMObj["financial"])){ layerView("required_financial");failed = true; }else{toggleLayerHide("required_financial");}

  //Everything checks out. Send it.
    if(failed) {layerView("general_error_top");change_color("required","#ff0000");return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = 6;return true;}
}

function registration_6(){
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;
    // Check each input in the order that it appears in the form!
    failed = false;
    counter = 0;
    if(empty(formDOMObj["reference1_name"]) || empty(formDOMObj["reference2_name"]) || empty(formDOMObj["reference1_phone"]) || empty(formDOMObj["reference2_phone"])){ layerView("required_references");failed = true; }else{toggleLayerHide("required_references");}
    if(!lengthLimit(formDOMObj["reference1_phone"],10,20) || !lengthLimit(formDOMObj["reference2_phone"],10,20)){ layerView("required_references");failed = true; }else{toggleLayerHide("required_references");}
    if(getCheckedValue(formDOMObj["offence_id"])){ layerView("required_offence");failed = true; }else{toggleLayerHide("required_offence");}
    if(checkedValue=='2') {
        if(empty(formDOMObj["offence_detail"])){ layerView("required_offence");failed = true; }else{toggleLayerHide("required_offence");}
    }
    if(getCheckedValue(formDOMObj["moral_id"])){ layerView("required_morals");failed = true; }else{toggleLayerHide("required_morals");}
    if(checkedValue=='2') {
        if(empty(formDOMObj["moral_details"])){ layerView("required_morals");failed = true; }else{toggleLayerHide("required_morals");}
    }
    if(empty(formDOMObj["regulation"])){ layerView("required_regulation");failed = true; }else{toggleLayerHide("required_regulation");}

  //Everything checks out. Send it.
    if(failed) {layerView("general_error_top");change_color("required","#ff0000");return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = 7;return true;}
}

function registration_7(){
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;
    // Check each input in the order that it appears in the form!
    failed = false;
    counter = 0;

    if(empty(formDOMObj["church_name"])){ layerView("required_church_name");failed = true; }else{toggleLayerHide("required_church_name");}
    if(empty(formDOMObj["church_denomination"])){ layerView("required_church_denomination");failed = true; }else{toggleLayerHide("required_church_denomination");}
    if(empty(formDOMObj["church_address"])){ layerView("required_church_address");failed = true; }else{toggleLayerHide("required_church_address");}
    if(empty(formDOMObj["church_phone"]) || !lengthLimit(formDOMObj["church_phone"],10,20)){ layerView("required_church_phone");failed = true; }else{toggleLayerHide("required_church_phone");}
  //Everything checks out. Send it.
    if(failed) {layerView("general_error_top");change_color("required","#ff0000");return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = 8;return true;}
}

function registration_8(){
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;
    // Check each input in the order that it appears in the form!
    failed = false;
    counter = 0;
    switch (formDOMObj["selectedProgram"].value) {
        case "1":
            if(getCheckedValue(formDOMObj["r_month_enrol"]) || getCheckedValue(formDOMObj["r_year_enrol"])){ layerView("required_enrol_date");failed = true; }else{toggleLayerHide("required_enrol_date");}
            if(getCheckedValue(formDOMObj["applied_to_other_id"])){ layerView("required_applied_other");failed = true; }else{toggleLayerHide("required_applied_other");}
            if(checkedValue=='2') {
                if(empty(formDOMObj["other_ones"])){ layerView("required_applied_other");failed = true; }else{toggleLayerHide("required_applied_other");}
            }
            if(getCheckedValue(formDOMObj["visited_campus_id"])){ layerView("required_visited");failed = true; }else{toggleLayerHide("required_visited");}
            if(checkedValue=='2') {
                if(empty(formDOMObj["visited_campus"])){ layerView("required_visited");failed = true; }else{toggleLayerHide("required_visited");}
            }
            if(formDOMObj["answer_full_id"].checked) counter = counter + 1;
            if(counter == 0){ layerView("required_answered_correctly");failed = true; } else{toggleLayerHide("required_answered_correctly");}
            break;
        case "2":
        case "3":
        case "4":
            if(formDOMObj["answer_full_id"].checked) counter = counter + 1;
            if(counter == 0){ layerView("required_answered_correctly");failed = true; } else{toggleLayerHide("required_answered_correctly");}
            break;
        default:
    }
  //Everything checks out. Send it.
    if(failed) {layerView("general_error_top");change_color("required","#ff0000");return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = 9;return true;}
}

function registration_9(){
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;
    var currentTime = new Date()
    var month = currentTime.getMonth()+1
    var year = currentTime.getFullYear()

    // Check each input in the order that it appears in the form!
    failed = false;
    counter = 0;
/*    if(getCheckedValue(formDOMObj["creditcard_type"])){ layerView("required_credit_card_type");failed = true; }else{toggleLayerHide("required_credit_card_type");}
    if(empty(formDOMObj["creditcard_name"])){ layerView("required_credit_card_name");failed = true; }else{toggleLayerHide("required_credit_card_name");}
    if(empty(formDOMObj["creditcard_number"])){ layerView("required_credit_card_number");failed = true; }else{toggleLayerHide("required_credit_card_number");}
    if(!lengthLimit(formDOMObj["creditcard_number"],16,16)){ layerView("required_credit_card_number");failed = true; }else{toggleLayerHide("required_credit_card_number");}
    if(formDOMObj["creditcard_expiry_month"].value == 0 || formDOMObj["creditcard_expiry_year"].value == 0 || (formDOMObj["creditcard_expiry_month"].value < month && formDOMObj["creditcard_expiry_year"].value == year)){ layerView("required_credit_card_expiry");failed = true; }else{toggleLayerHide("required_credit_card_expiry");}
*/
//alert("in");
    if(formDOMObj["creditcard_type"].value == "null" ||
        empty(formDOMObj["creditcard_csv"]) || 
        empty(formDOMObj["creditcard_number"]) ||
        !lengthLimit(formDOMObj["creditcard_number"], 16, 16) || 
        empty(formDOMObj["creditcard_name"]) || (formDOMObj["creditcard_expiry_month"].value == 0 || formDOMObj["creditcard_expiry_year"].value == 0 || (formDOMObj["creditcard_expiry_month"].value < month && formDOMObj["creditcard_expiry_year"].value == year)))
            { layerView("required_credit_card");failed = true; }else{toggleLayerHide("required_credit_card");}
  //Everything checks out. Send it.
//    if(failed) {layerView("general_error_top");change_color("required","#ff0000");formDOMObj["thePage"].value = 9;return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = 11;return true;}
    if(failed) {layerView("general_error_top");change_color("required","#ff0000");formDOMObj["thePage"].value = 9;return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = 11;return true;}
    
}

function registration_10(){
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;
    failed = false;
    // Check each input in the order that it appears in the form!

    //Everything checks out. Send it.
    if(failed) {layerView("general_error_top");change_color("required","#ff0000");return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = 3;return true;}
    return true;
}

function registration_11(){
    // Make quick references to our fields
    var formDOMObj = document.registration_form.elements;
    failed = false;
    // Check each input in the order that it appears in the form!

    //Everything checks out. Send it.
    if(failed) {layerView("general_error_top");change_color("required","#ff0000");return false;} else {toggleLayerHide("general_error_top");change_color("required","#000000");formDOMObj["thePage"].value = 11;return true;}
    return true;
}

function resetForm(thePage) {
    var formDOMObj = document.registration_form.elements;
    formDOMObj["thePage"].value = 1;
}

function changeText(form,target,targettext) {
//    alert(targettext);
    var theText = targettext;
    if(form == "registration_form") var formDOMObj = document.registration_form.elements;
    formDOMObj[target].value = "- "+theText.replace("|","\n- ");
}

//Redirect 
function redirectInternational() {
    window.open("https://www.abc-ca.org/assets/files/program/preliminaryinformationform.pdf");
    window.location = "https://www.abc-ca.org/internationalconfirmation.php";
    return true;
}

//International registration entry is either missing or already filled out.
function missingInternational() {
    alert ("Either 60 or more days have passed since you initially registered or you have already completed this portion of the registration. Please fill out the contact form and let us know. Thank you.");
    window.location = "https://www.abc-ca.org/facultyandstaff.php?record_id=r16&subject=International Application#emailform";
    return true;
}

//Reset the form
function resetForm1() {
    alert("IN")
    var formDOMObj = document.registration_form;
    for(i=0; i<formDOMObj.length; i++) {

        field_type = formDOMObj[i].type.toLowerCase();

        switch(field_type) {
            case "text":
            case "password":
            case "textarea":
            case "hidden":
                elements[i].value = "";
                alert("text")
                break;
            case "radio":
            case "checkbox":
                alert("radio")
                if (elements[i].checked) {
                    elements[i].checked = false;
                }
                break;
            case "select-one":
            case "select-multi":
                elements[i].selectedIndex = -1;
                break;
            default:
                break;
        }
    } 
}

// Upload file
function uploadFile() {
    var formDOMObj = document.registration_form.elements;
//    alert(formDOMObj['file'].value)
}
// CSS validation
function empty(elem){
    if(elem.value.length == 0){
        return true;
    }
    return false;
}

function varempty(elem){ //there is no value property
    if(elem.length == 0){
        return true;
    }
    return false;
}

function dropDownCheck(elem){
    if(elem.value == 0){
        return false;
    }else{
        return true;
    }
}

function alphabet(elem, helperMsg){
    var alphaExp = /^[\sa-zA-Z]+$/;
    if(elem.value.match(alphaExp)){
        return true;
    }else{
        return false;
    }
}

function noEnterKey(elem)
{
 var charCode = (elem.which) ? elem.which : event.keyCode;
 //alert (charCode);
 if (charCode == 13){
    return false;
 }
 return true;
}

function isNumberOrSlashKey(elem)
{
 var charCode = (elem.which) ? elem.which : event.keyCode;
 if (charCode > 31 && (charCode < 47 || charCode > 57)){
    return false;
 }
 return true;
}

function isNumberKey(elem)
{
 var charCode = (elem.which) ? elem.which : event.keyCode;
 if (charCode > 31 && (charCode < 45 || charCode > 57)){
    return false;
 }
 return true;
}

function isJustNumberKey(elem)
{
 var charCode = (elem.which) ? elem.which : event.keyCode;
 if (charCode > 31 && (charCode < 48 || charCode > 57)){
    return false;
 }
 return true;
}

function validateEmail(elem){
    var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
    if(elem.value.match(emailExp)){
        return true;
    }else{
        return false;
    }
}

function getCheckedValue(elem) {
    if(!elem) return true;
    var radioLength = elem.length;
    if(radioLength == undefined) {return true}
//    if(elem.checked) {alert (elem.value);return elem.value;}
    for(var i = 0; i < radioLength; i++) {
        if(elem[i].checked) {
            checkedValue = elem[i].value;
            i = radioLength;
            return false;
        }
    }
    return true;
}

function arrayEntry(elem) {
		alert (elem.length);
}

function sameAddress(elem) {
    
   // alert (elem.checked)

    if(elem.checked == false) {
        var formDOMObj = document.registration_form.elements;
        formDOMObj["parent_guardian_address"].value = formDOMObj["address"].value;
        formDOMObj["parent_guardian_city"].value = formDOMObj["city"].value;
        formDOMObj["parent_guardian_province"].value = formDOMObj["province"].value;
        formDOMObj["parent_guardian_postal_code"].value = formDOMObj["postal_code"].value;
        formDOMObj["parent_guardian_address"].disabled = true;
        formDOMObj["parent_guardian_city"].disabled = true;
        formDOMObj["parent_guardian_province"].disabled = true;
        formDOMObj["parent_guardian_postal_code"].disabled = true;
    }
    else  {
        var formDOMObj = document.registration_form.elements;
        formDOMObj["parent_guardian_address"].value = "";
        formDOMObj["parent_guardian_city"].value = "";
        formDOMObj["parent_guardian_province"].value = "";
        formDOMObj["parent_guardian_postal_code"].value = "";
        formDOMObj["parent_guardian_address"].disabled = false;
        formDOMObj["parent_guardian_city"].disabled = false;
        formDOMObj["parent_guardian_province"].disabled = false;
        formDOMObj["parent_guardian_postal_code"].disabled = false;

    }
//    alert (elem.value);
}

function compareThreeFields(elem, elem2, elem3){
    if(elem.length == 0 && elem2.length == 0 && elem3.length == 0) return true;
    if(elem.length > 0) return false;
    if(elem2.length > 0) return false;
    if(elem3.length > 0) return false;
    return false;
}


function lengthLimit(elem, min, max){
    var uInput = elem.value;
    if(uInput.length >= min && uInput.length <= max){
        return true;
    }else{
        return false;
    }
}

function varlengthLimit(elem, min, max){
    var uInput = elem;
    if(uInput.length >= min && uInput.length <= max){
        return true;
    }else{
        return false;
    }
}

function checkRadioArray(radioButtons){
 for (var i=0; i < radioButtons.length; i++) {
  if (radioButtons[i].checked) {
   return true;
  }
 }
 return false;
}

/**
 * DHTML date validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */
// Declaring valid date character, minimum year and maximum year
var dtCh= "/";
var currentTime = new Date()
var thisYear = currentTime.getFullYear()
var minYear=thisYear-100;
var maxYear=thisYear;

function isInteger(s){
    var i;
    for (i = 0; i < s.length; i++){
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag){
    var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++){
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function daysInFebruary (year){
    // February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}

function DaysArray(n) {
    for (var i = 1; i <= n; i++) {
        this[i] = 31
        if (i==4 || i==6 || i==9 || i==11) {this[i] = 30}
        if (i==2) {this[i] = 29}
   }
   return this
}

function isDate(dtStr){
    var daysInMonth = DaysArray(12)
    var pos1=dtStr.indexOf(dtCh)
    var pos2=dtStr.indexOf(dtCh,pos1+1)
    var strMonth=dtStr.substring(0,pos1)
    var strDay=dtStr.substring(pos1+1,pos2)
    var strYear=dtStr.substring(pos2+1)

    strYr=strYear

    if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1)
    if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1)
    for (var i = 1; i <= 3; i++) {
        if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1)
    }
    month=parseInt(strMonth)
    day=parseInt(strDay)
    year=parseInt(strYr)
    if (pos1==-1 || pos2==-1){
        //alert("The date format should be : mm/dd/yyyy")
        return false
    }
    if (strMonth.length<1 || month<1 || month>12){
        //alert("Please enter a valid month")
        return false
    }
    if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){
        //alert("Please enter a valid day")
        return false
    }
    if (strYear.length != 4 || year==0 || year<minYear || year>maxYear){
        //alert("Please enter a valid 4 digit year between "+minYear+" and "+maxYear)
        return false
    }
    if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){
        //alert("Please enter a valid date")
        return false
    }
return true
}

function validateDate(dtStr){
    //var dt=document.frmSample.txtDate
    if (isDate(dtStr)==false){
        return false
    }
    return true
 }

function visible(whichLayer) // Hide when clicked twice
{
     if (document.getElementById)
     {
          // this is the way the standards work
          if (document.getElementById(whichLayer).style.display == "block") return true;
          else return false;
     }
     else if (document.all)
     {
          // this is the way old msie versions work
          var theLayer = document.all[whichLayer].style;
          if(theLayer.display == "block") return true;
          else return false;
     }
     else if (document.layers)
     {
          // this is the way nn4 works
          var theLayer = document.layers[whichLayer].style;
          if(theLayer.display == "block") return true;
          else return false;
     }
}


// End CSS validation

function isEmpty(elem, helperMsg){
    if(elem.value.length == 0){
        alert(helperMsg);
        toggleLayerView(elem);
        elem.focus(); // set the focus to this input
        return true;
    }
    return false;
}

function isNumeric(elem, helperMsg){
    var numericExpression = /^[0-9]+$/;
    if(elem.value.match(numericExpression)){
        return true;
    }else{
        alert(helperMsg);
        elem.focus();
        return false;
    }
}

function isAlphabet(elem, helperMsg){
    var alphaExp = /^[\sa-zA-Z]+$/;
    if(elem.value.match(alphaExp)){
        return true;
    }else{
        alert(helperMsg);
        elem.focus();
        return false;
    }
}

function isAlphanumeric(elem, helperMsg){
    var alphaExp = /^[0-9a-zA-Z]+$/;
    if(elem.value.match(alphaExp)){
        return true;
    }else{
        alert(helperMsg);
        elem.focus();
        return false;
    }
}

function lengthRestriction(elem, min, max){
    var uInput = elem.value;
    if(uInput.length >= min && uInput.length <= max){
        return true;
    }else{
        alert("Please enter between " +min+ " and " +max+ " characters");
        elem.focus();
        return false;
    }
}

function madeSelection(elem, helperMsg){
    if(elem.value == "Please Choose"){
        alert(helperMsg);
        elem.focus();
        return false;
    }else{
        return true;
    }
}

function dropDownSelected(elem, helperMsg){
    if(elem.value == 0){
        alert(helperMsg);
        elem.focus();
        return false;
    }else{
        return true;
    }
}

function emailValidator(elem, helperMsg){
    var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
    if(elem.value.match(emailExp)){
        return true;
    }else{
        alert(helperMsg);
        elem.focus();
        return false;
    }
}

//Banner fade

function initImage() {
  imageId = 'thephoto';
  image = document.getElementById(imageId);
  setOpacity(image, 0);
  image.style.visibility = 'visible';
  fadeIn(imageId,0);
}

function setOpacity(obj, opacity) {
  opacity = (opacity == 100)?99.999:opacity;
  
  // IE/Win
  obj.style.filter = "alpha(opacity:"+opacity+")";
  
  // Safari<1.2, Konqueror
  obj.style.KHTMLOpacity = opacity/100;
  
  // Older Mozilla and Firefox
  obj.style.MozOpacity = opacity/100;
  
  // Safari 1.2, newer Firefox and Mozilla, CSS3
  obj.style.opacity = opacity/100;
}

function fadeIn(objId,opacity) {
  if (document.getElementById) {
    obj = document.getElementById(objId);
    if (opacity <= 100) {
      setOpacity(obj, opacity);
      opacity += 10;
      window.setTimeout("fadeIn('"+objId+"',"+opacity+")", 100);
    }
  }
}
function theTimer() {
    window.setInterval ("fadeIn('thephoto',0)", 5000); 
}
/*
// Banner Image Fading
var photoCounter = 1;
while(photoCounter < 51) {
    document.write("<style type='text/css'> #thephoto_" + photoCounter +" {visibility:hidden;} </style>");
    photoCounter++;
}

function initImage() {
    var myCounter = 1;
    while(myCounter < 51) {
      imageId = 'thephoto_' + myCounter;
      image = document.getElementById(imageId);
      setOpacity(image, 0);
      image.style.visibility = 'visible';
      fadeIn(imageId,myCounter);
      myCounter ++;
    }
}


function setOpacity(obj, opacity) {
  opacity = (opacity == 100)?99.999:opacity;

  // IE/Win
  obj.style.filter = "alpha(opacity:"+opacity+")";

  // Safari<1.2, Konqueror
  obj.style.KHTMLOpacity = opacity/100;

  // Older Mozilla and Firefox
  obj.style.MozOpacity = opacity/100;

  // Safari 1.2, newer Firefox and Mozilla, CSS3
  obj.style.opacity = opacity/100;
}

function fadeIn(objId,opacity) {
  if (document.getElementById) {
    obj = document.getElementById(objId);
    if (opacity <= 100) {
      setOpacity(obj, opacity);
      opacity += 10;
      window.setTimeout("fadeIn('"+objId+"',"+opacity+")", 10);
    }
  }
}
*/

//Build slideshow
// Copyright 2006-2007 javascript-array.com

var timeout    = 500;
var closetimer    = 0;
var ddmenuitem    = 0;

// open hidden layer
function mopen(id)
{    
    // cancel close timer
    mcancelclosetime();

    // close old layer
    if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';

    // get new layer and show it
    ddmenuitem = document.getElementById(id);
    ddmenuitem.style.visibility = 'visible';

}
// close showed layer
function mclose()
{
    if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
}

// go close timer
function mclosetime()
{
    closetimer = window.setTimeout(mclose, timeout);
}

// cancel close timer
function mcancelclosetime()
{
    if(closetimer)
    {
        window.clearTimeout(closetimer);
        closetimer = null;
    }
}

// close layer when click-out
document.onclick = mclose; 
