﻿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"
       	},
		{
		    string: navigator.vendor,
		   	subString: "Google",
		   	identity: "Chrome"
		},
		{
			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 background(){
        if (isIE6) {
            if (screen.height >= '1025') {
                document.body.style.backgroundImage = "url(" + path_prefix + "images/back.png)";
                document.body.style.backgroundRepeat = "repeat-x";
                // 780px
            }
            else if ((screen.height >= '960') && (screen.height <= '1024')) {
                document.body.style.backgroundImage = "url(" + path_prefix + "images/back1.png)";
                document.body.style.backgroundRepeat = "repeat-x";
                // 780px
            }
            else if (screen.height == '768') {
                document.body.style.backgroundImage = "url(" + path_prefix + "images/back2.png)";
                document.body.style.backgroundRepeat = "repeat-x";
                // 550px
            }
            else if (screen.height <= '767') {
                document.body.style.backgroundImage = "url(" + path_prefix + "images/back3.png)";
                document.body.style.backgroundRepeat = "repeat-x";
                // 350px
            } else {
                document.body.style.backgroundImage = "url(" + path_prefix + "images/back4.png)";
                document.body.style.backgroundRepeat = "repeat-x";
                // 600px
            }
        } else {
            document.body.style.backgroundImage = "url(" + path_prefix + "images/back.png)";
            document.body.style.backgroundRepeat = "repeat-x";
            // 780px
        }
    }
    isIE6 = /msie|MSIE 6/.test(navigator.userAgent);
    isIE7 = /msie|MSIE 7/.test(navigator.userAgent);
    isIE8 = /msie|MSIE 8/.test(navigator.userAgent);
  
    var stylesheet = '';
    if (!isIE6) {
        if (!isIE7) {
            if (!isIE8) {
                //alert("default");
                stylesheet = ' <link href="' + path_prefix + 'stylesheets/default.css" rel="stylesheet" type="text/css" media="screen"/>' + '<link href="' + path_prefix + 'stylesheets/printDefault.css" rel="stylesheet" type="text/css" media="print"/>';
            } else {
            //alert("ie8");
            stylesheet = ' <link href="' + path_prefix + 'stylesheets/IE8.css" rel="stylesheet" type="text/css" media="screen"/>' + '<link href="' + path_prefix + 'stylesheets/printIE.css" rel="stylesheet" type="text/css" media="print"/>';
            } 
        } else {
        //alert("ie7");
        stylesheet = ' <link href="' + path_prefix + 'stylesheets/IE7.css" rel="stylesheet" type="text/css" media="screen"/>' + '<link href="' + path_prefix + 'stylesheets/printIE.css" rel="stylesheet" type="text/css" media="print"/>';
        }
    } else {
    //alert("ie6");
    stylesheet = ' <link href="' + path_prefix + 'stylesheets/IE6.css" rel="stylesheet" type="text/css" media="screen"/>' + '<link href="' + path_prefix + 'stylesheets/printIE.css" rel="stylesheet" type="text/css" media="print"/>';
    }
    document.write(stylesheet);
    
// -- rollover script -- //
var W3CDOM = (document.createElement && document.getElementsByTagName);

var mouseOvers = new Array();
var mouseOuts = new Array();

//window.onload = init;
function rollOvers()
{
	if (!W3CDOM) return;
	var nav = document.getElementById('mouseovers');
	var imgs = nav.getElementsByTagName('img');
	for (var i=0;i<imgs.length;i++)
	{
		imgs[i].onmouseover = mouseGoesOver;
		imgs[i].onmouseout = mouseGoesOut;
		var suffix = imgs[i].src.substring(imgs[i].src.lastIndexOf('.'));
		mouseOuts[i] = new Image();
		mouseOuts[i].src = imgs[i].src;
		mouseOvers[i] = new Image();
		mouseOvers[i].src = imgs[i].src.substring(0,imgs[i].src.lastIndexOf('.')) + "_omo" + suffix;
		imgs[i].number = i;
	}
}
function mouseGoesOver()
{
	this.src = mouseOvers[this.number].src;
}

function mouseGoesOut()
{
	this.src = mouseOuts[this.number].src;
}

// the enter button is hit //
function hitEnter(event) {
    if (event.keyCode == 13) {
        var txtFocus = false;
        var textBoxes = document.getElementsByTagName('textarea');

        for (var i = 0; i < textBoxes.length; i++) {
            var elem = textBoxes[i];

            if (elem) {
                elem.onfocus = function() {
                    txtFocus = true;
                }
                elem.onblur = function() {
                    txtFocus = false;
                }
            }
        }

        if (!txtFocus) {
            // do nothing
        } else {
            //alert('here');
            document.getElementById('btnSubmit').click();
            return false;
        }
    }
}

// used to tell us what browser we are using // 
  /* <script type="text/javascript">
<!--
document.write('<p class="accent">You\'re using ' + BrowserDetect.browser + ' ' + BrowserDetect.version + ' on ' + BrowserDetect.OS + '!</p>');
// --> </script>*/

function readMorePopUp(num){  
    var readMoreWindow = window.open ("newsPopUp.aspx?num=" + num,
    "readMoreWindow", "top=200, width=350, height=420, directories=no, toolbar=no, location=no, scrollbars=yes");
    readMoreWindow.focus();
}
 
function exLinkPopUp(exLink){
    var newWindow = window.open (exLink, "newWindow", "channelmode=0, location=1, menubar=1, resizable=1, scrollbars=1, status=1, titlebar=1, toolbar=1, directories=1");
    newWindow.focus();
}

/* used for contact and subscribe page */
function messagePrompt(id, text) {
    var messageBox = document.getElementById(id);
    if (messageBox.value == text) {
        messageBox.value = "";
        setStyle(id, 'color', '#000');
    }
}

function messageReload(id, text) {
    var messageBox = document.getElementById(id);
    if (messageBox.value == "") {
        messageBox.value = text;
        setStyle(id, 'color', '#666');
    }
}

/* ------------------------------------------ functions for contact page -----------------------------------------*/
function messageLoad() {
    var messageBox = document.getElementById('tbMessage');
    var messagePrompt = 'Type your message here.';
    setStyle('tbMessage', 'color', '#666');

    if (messageBox.value != 'Type your message here.' && messageBox.value != "") {
        messageBox.value = messageBox.value;
        return;
    }
    messageBox.value = messagePrompt;
}

function messageValidationFunc(source, args){
    var badMessageString = '';
    var badCharactersMessage = '<>{}|*^[]';
    var messageBoxString = document.getElementById('tbMessage').value;
    for (i=0; i < messageBoxString.length; i++){
      for (j=0; j < badCharactersMessage.length; j++){
            if (messageBoxString.substring(i,i+1) == badCharactersMessage.substring(j,j+1)){
                var booleanVar = new Boolean(false);
                for (z=0; z < badMessageString.length; z++){ 
                    if (messageBoxString.substring(i,i+1) == badMessageString.substring(z,z+1)){
                        booleanVar = true;
                        break;
                    }
                }
                if (booleanVar == false)
                        badMessageString += messageBoxString.substring(i,i+1);
                }
        } 
    }
    if (badMessageString.length > 0){
        args.IsValid = false;
        badMessageString = 'The following characters are invalid: ' + badMessageString; 
        document.getElementById('messageValidator').className='messageValidator';
        document.getElementById('messageValidator').innerHTML = badMessageString;
        setStyle('messageTag', 'color', '#d20000');
        gotoSubmitAnchor();
    }else{
        args.IsValid = true;
        document.getElementById('messageValidator').className='messageValidator';
        document.getElementById('messageValidator').innerHTML = '';
        setStyle('messageTag', 'color', '#000000');
        messageValidationFunc2(source, args);
    }
    return badMessageString;
} 
function messageValidationFunc2(source, args){
    var messageRegEx = /^[a-zA-Z0-9`!@#\$%&()\-_\'":;,\.\?\s\/\\]{9,1000}$/;
    var messageBox = document.getElementById('tbMessage').value;
    var messageDefault = "Type your message here.";
    var messageError1 = 'Please enter a message.';
    var messageError2 = 'Please enter a valid message.';
    var messageError3 = 'Please reduce size of message; may not exceed 1000 Characters.';     
        if (messageBox != "" && messageBox != messageDefault){
            if (messageRegEx.test(messageBox) == true){ 
                    args.IsValid = true;
                    document.getElementById('messageValidator').className='messageValidator';
                    document.getElementById('messageValidator').innerHTML = '';
                    setStyle('messageTag', 'color', '#000000');  
            } else {
                if (messageBox.length < 1000){
                    args.IsValid = false;
                    document.getElementById('messageValidator').className='messageValidator';
                    document.getElementById('messageValidator').innerHTML = messageError2;
                    setStyle('messageTag', 'color', '#d20000');
                    gotoSubmitAnchor();
                }else{
                    args.IsValid = false;
                    document.getElementById('messageValidator').className='messageValidator';
                    document.getElementById('messageValidator').innerHTML = messageError3;
                    setStyle('messageTag', 'color', '#d20000');
                    gotoSubmitAnchor();
                }
            }
        } else {
            args.IsValid = false;
            document.getElementById('messageValidator').className='messageValidator';
            document.getElementById('messageValidator').innerHTML = messageError1;
            setStyle('messageTag', 'color', '#d20000');
            gotoSubmitAnchor();
        }  
}  
/* end message code */
function emailValidationFunc(source, args){
        var emailRegEx = /^\w+([-+.\']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
        var email = document.getElementById('tbEmail').value;
        var emailError = 'Please enter a valid email.'
        if (emailRegEx.test(email) == true){
                args.IsValid = true;
                document.getElementById('emailValidator').className='emailValidator';
                document.getElementById('emailValidator').innerHTML = '';
                setStyle('emailTag', 'color', '#000000');
            }else{
                args.IsValid = false;
                document.getElementById('emailValidator').className='emailValidator';
                document.getElementById('emailValidator').innerHTML = emailError;
                setStyle('emailTag', 'color', '#d20000');
                gotoSubmitAnchor();
           }
}
function nameValidationFunc(source, args){
    var nameRegEx = /^[a-zA-Z0-9\s\'`.]{5,40}$/;
    var name = document.getElementById('tbName').value;
    var nameError = 'Please enter a valid name.'
    if (nameRegEx.test(name) == true){
            args.IsValid = true;
            document.getElementById('nameValidator').className='nameValidator';
            document.getElementById('nameValidator').innerHTML = '';
            setStyle('nameTag', 'color', '#000000');
        }else{
            args.IsValid = false;
            document.getElementById('nameValidator').className='nameValidator';
            document.getElementById('nameValidator').innerHTML = nameError;
            setStyle('nameTag', 'color', '#d20000');
            gotoSubmitAnchor();
        }
    }

    function telephoneValidationFunc(source, args) {
        var RegExTelephone1 = /^\D?(\d{3})\D?\D?(\d{3})\D?(\d{4})$/; /* reg expression 1 not currently used */
        var RegExTelephone2 = /^\(?(\d{3})\)?[\.\-\/ ]?(\d{3})[\.\-\/ ]?(\d{4})$/;
        var telephone = document.getElementById('tbTelephone');
        var cvTelephone = document.getElementById('cvTelephone');
        var error1 = 'Please enter a phone.';
        var error2 = "Must be a valid phone.";
        if (telephone.value != '') {
            if (RegExTelephone2.test(telephone.value) == true) {
                var validPhone = RegExTelephone2.exec(telephone.value)
                if (validPhone) {
                    telephone.value = "(" + validPhone[1] + ") " + validPhone[2] + "-" + validPhone[3]
                    args.IsValid = true;
                    document.getElementById('telephoneValidator').className = 'telephoneValidator';
                    document.getElementById('telephoneValidator').innerHTML = '';
                    setStyle('telephoneTag', 'color', '#000000');
                } else {
                    document.getElementById('telephoneValidator').className = 'telephoneValidator';
                    document.getElementById('telephoneValidator').innerHTML = error2;
                    args.IsValid = false;
                    setStyle('telephoneTag', 'color', '#d20000');
                }
            } else {
                document.getElementById('telephoneValidator').className = 'telephoneValidator';
                document.getElementById('telephoneValidator').innerHTML = error2;
                args.IsValid = false;
                setStyle('telephoneTag', 'color', '#d20000');
            }
        } else {
            document.getElementById('telephoneValidator').className = 'telephoneValidator';
            document.getElementById('telephoneValidator').innerHTML = error1;
            args.IsValid = false;
            setStyle('telephoneTag', 'color', '#d20000');
        }
    }
    function fixTelephone() {
        var RegExTelephone2 = /^\(?(\d{1})?[\.\-\/ ]?[\(\/ ]?(\d{3})\)?[\)\/ ]?[\.\-\/ ]?(\d{3})[\.\-\/ ]?(\d{4})$/; /* 1-(232)-232-2323 */
        var cvTelephone = document.getElementById('cvTelephone');
        var telephone = document.getElementById('tbTelephone');
        if (telephone.value != '') {
            var validPhone = RegExTelephone2.exec(telephone.value)
            if (validPhone) {
                telephone.value = "(" + validPhone[2] + ") " + validPhone[3] + "-" + validPhone[4];
            } else {
                cvTelephone.innerHTML = error2;       
            }
        } else {
                cvTelephone.innerHTML = error1;
        }
    }

function serviceAffiliationValidationFunc(source, args){
    var serviceAffiliationRegEx = /^[a-zA-Z0-9\s\'`.]{2,40}$/;
    var serviceAffiliation = document.getElementById('tbServiceAffiliation').value;
    var serviceAffiliationError = 'Invalid service affiliation'
    if  (serviceAffiliation != ''){
        args.IsValid = true;
        document.getElementById('serviceAffiliationValidator').className='serviceAffiliationValidator';
        document.getElementById('serviceAffiliationValidator').innerHTML = '';
        setStyle('serviceAffiliationTag', 'color', '#000000');
        if (serviceAffiliationRegEx.test(serviceAffiliation) == true){
            args.IsValid = true;
            document.getElementById('serviceAffiliationValidator').className='serviceAffiliationValidator';
            document.getElementById('serviceAffiliationValidator').innerHTML = '';
            setStyle('serviceAffiliationTag', 'color', '#000000');
        }else{
            args.IsValid = false;
            document.getElementById('serviceAffiliationValidator').className='serviceAffiliationValidator';
            document.getElementById('serviceAffiliationValidator').innerHTML = serviceAffiliationError;
            setStyle('serviceAffiliationTag', 'color', '#d20000');
            gotoSubmitAnchor();
        }
    }else{
        args.IsValid = true;
        document.getElementById('serviceAffiliationValidator').className='serviceAffiliationValidator';
        document.getElementById('serviceAffiliationValidator').innerHTML = '';
        setStyle('serviceAffiliationTag', 'color', '#000000');
    }    
} 
function titleValidationFunc(source, args){
    var titleRegEx = /^[a-zA-Z0-9\s\'`.]{2,40}$/;
    var title = document.getElementById('tbTitle').value;
    var titleError = 'Please enter a valid title.'
    if (title != ''){
        args.IsValid = true;
        document.getElementById('titleValidator').className='titleValidator';
        document.getElementById('titleValidator').innerHTML = '';
        setStyle('titleTag', 'color', '#000000');
        if (titleRegEx.test(title) == true){
            args.IsValid = true;
            document.getElementById('titleValidator').className='titleValidator';
            document.getElementById('titleValidator').innerHTML = '';
            setStyle('titleTag', 'color', '#000000');
        }else{
            args.IsValid = false;
            document.getElementById('titleValidator').className='titleValidator';
            document.getElementById('titleValidator').innerHTML = titleError;
            setStyle('titleTag', 'color', '#d20000');
            gotoSubmitAnchor();
        }
    } else{
        args.IsValid = true;
        document.getElementById('titleValidator').className='titleValidator';
        document.getElementById('titleValidator').innerHTML = '';
        setStyle('titleTag', 'color', '#000000');
    }
}

function subjectValidationFunc(source, args){
    var badSubjectString = '';
    var badCharactersSubject = '<>{}|*^[]';
    var subjectBoxString = document.getElementById('tbSubject').value;
    for (i=0; i < subjectBoxString.length; i++){
      for (j=0; j < badCharactersSubject.length; j++){
            if (subjectBoxString.substring(i,i+1) == badCharactersSubject.substring(j,j+1)){
                var booleanVar = new Boolean(false);
                for (z=0; z < badSubjectString.length; z++){ 
                    if (subjectBoxString.substring(i,i+1) == badSubjectString.substring(z,z+1)){
                        booleanVar = true;
                        break;
                    }
                }
                if (booleanVar == false)
                        badSubjectString += subjectBoxString.substring(i,i+1);
                }
        } 
    }
    if (badSubjectString.length > 0){
        args.IsValid = false;
        badSubjectString = 'The following characters are invalid: ' + badSubjectString; 
        document.getElementById('subjectValidator').className='subjectValidator';
        document.getElementById('subjectValidator').innerHTML = badSubjectString;
        setStyle('subjectTag', 'color', '#d20000');
        gotoSubmitAnchor();
    }else{
        args.IsValid = true;
        document.getElementById('subjectValidator').className='subjectValidator';
        document.getElementById('subjectValidator').innerHTML = '';
        setStyle('subjectTag', 'color', '#000000');
        subjectValidationFunc2(source, args);
    }
    return badSubjectString;
} 
function subjectValidationFunc2(source, args){
    var subjectRegEx = /^[^<>{}=+*^~]{2,100}$/;
    var subject = document.getElementById('tbSubject').value;
    var subjectError = 'Please enter a valid subject.';
    if (subjectRegEx.test(subject) == true){
            args.IsValid = true;
            document.getElementById('subjectValidator').className='subjectValidator';
            document.getElementById('subjectValidator').innerHTML = '';
            setStyle('subjectTag', 'color', '#000000');
        }else{
            args.IsValid = false;
            gotoSubmitAnchor();
            document.getElementById('subjectValidator').className='subjectValidator';
            document.getElementById('subjectValidator').innerHTML = subjectError;
            setStyle('subjectTag', 'color', '#d20000');
        }
    }

function clearContactFields() {
    //alert("getting here");
    var subjectBoxString = document.getElementById('tbSubject').value = '';  
}

function gotoSubmitAnchor(){
    //location.href ='#submit';
}
function setStyle(obj,style,value){
		getRef(obj).style[style]= value;
	}
	
	function getRef(obj){
		return (typeof obj == "string") ?
			 document.getElementById(obj) : obj;
	}
/*
 * USAGE:
 * objId    = element id.
 * style    = the style to be changed.
 * value    = the value assigned to the style.
 Adds event to window.onload without overwriting currently 
 assigned onload functions.
*/
/* --------------------------------- functions for newsletter subscribe page ----------------------------------------------*/

function emailValidationFuncNewsletter(source, args){
        var emailRegEx = /^\w+([-+.\']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
        var email1 = document.getElementById('emailField1').value;
        var email2 = document.getElementById('emailField2').value;
        var noError = '';
        var noMatch = 'Please verify the email addresses entered match.';
        var notValid = 'Please enter a valid email address.';
        var noEmail = 'Please enter then re-enter your email address.';
        if ((email1 != '') && (email2 != '')){
            if ((emailRegEx.test(email1) == true) && (emailRegEx.test(email2) == true)){
                    args.IsValid = true;
                    document.getElementById('cvNewsletterEmailBadID').className='cvNewsletterEmailBadID';
                    document.getElementById('cvNewsletterEmailBadID').innerHTML = noError;
               if (email1 == email2){
                    
                    args.IsValid = true;  
                    document.getElementById('cvNewsletterEmailBadID').className='cvNewsletterEmailBadID';
                    document.getElementById('cvNewsletterEmailBadID').innerHTML = noError;
               }else{
                    args.IsValid = false;
                    document.getElementById('cvNewsletterEmailBadID').className='newsletterValidatorEmailBad';
                    document.getElementById('cvNewsletterEmailBadID').innerHTML = noMatch;
               }
            }else{
                args.IsValid = false;
                document.getElementById('cvNewsletterEmailBadID').className='newsletterValidatorEmailBad';
                document.getElementById('cvNewsletterEmailBadID').innerHTML = notValid;
            }
        }else{
            args.IsValid = false;
            document.getElementById('cvNewsletterEmailBadID').className='newsletterValidatorEmailBad';
            document.getElementById('cvNewsletterEmailBadID').innerHTML = noEmail;
        }        
}   
function verficationCodeFunc(source, args){
        var captcha = document.getElementById('captchaField').value;
        var errorCodeString = 'Please enter the security code exactly as it appears.';
        if (captcha != ''){
                args.IsValid = true;
                //alert('here!');
                document.getElementById('cvNewsletterCodeID').className = 'cvNewsletterCodeID';
                document.getElementById('cvNewsletterCodeID').innerHTML = '';
           }else{
                args.IsValid = false;
                document.getElementById('cvNewsletterCodeID').className = 'newsletterValidatorCode';
                document.getElementById('cvNewsletterCodeID').innerHTML = errorCodeString;
                //alert('false');
           }
}
function serviceAffiliationValidationFuncNews(source, args){
    var serviceAffiliationRegEx = /^[a-zA-Z0-9\s\'`.]{2,40}$/;
    var serviceAffiliation = document.getElementById('serviceAffiliationField').value;
    var serviceAffiliationError = 'Invalid service affiliation.'
    if  (serviceAffiliation != ''){
        args.IsValid = true;
        document.getElementById('cvNewsletterServiceAffiliationID').className='cvNewsletterServiceAffiliationID';
        document.getElementById('cvNewsletterServiceAffiliationID').innerHTML = '';
        if (serviceAffiliationRegEx.test(serviceAffiliation) == true){
            args.IsValid = true;
            document.getElementById('cvNewsletterServiceAffiliationID').className='cvNewsletterServiceAffiliationID';
            document.getElementById('cvNewsletterServiceAffiliationID').innerHTML = '';
        }else{
            args.IsValid = false;
            document.getElementById('cvNewsletterServiceAffiliationID').className='newsletterValidatorServiceAffiliation';
            document.getElementById('cvNewsletterServiceAffiliationID').innerHTML = serviceAffiliationError;
        }
    }else{
        args.IsValid = true;
        document.getElementById('cvNewsletterServiceAffiliationID').className='cvNewsletterServiceAffiliationID';
        document.getElementById('cvNewsletterServiceAffiliationID').innerHTML = '';
    }    
} 
function titleValidationFuncNews(source, args){
    var titleRegEx = /^[a-zA-Z0-9\s\'`.]{2,40}$/;
    var title = document.getElementById('titleField').value;
    var titleError = 'Please enter a valid title.'
    if (title != ''){
        args.IsValid = true;
        document.getElementById('cvNewsletterTitleID').className='cvNewsletterTitleID';
        document.getElementById('cvNewsletterTitleID').innerHTML = '';
        if (titleRegEx.test(title) == true){
            args.IsValid = true;
            document.getElementById('cvNewsletterTitleID').className='cvNewsletterTitleID';
            document.getElementById('cvNewsletterTitleID').innerHTML = '';
        }else{
            args.IsValid = false;
            document.getElementById('cvNewsletterTitleID').className='newsletterValidatorTitle';
            document.getElementById('cvNewsletterTitleID').innerHTML = titleError;
        }
    } else{
        args.IsValid = true;
        document.getElementById('cvNewsletterTitleID').className='cvNewsletterTitleID';
        document.getElementById('cvNewsletterTitleID').innerHTML = '';
    }
} 

function emailLoad(){
    var emailBox = document.getElementById('emailField2');
    var emailPrompt = "Please Verify Email";
    setStyle('emailField2', 'color', '#666');
    
    if (emailBox.value != "Please Verify Email" && emailBox.value != ""){
        emailBox.value = emailBox.value;
        return;
    }
    emailBox.value = emailPrompt;
}

function badEmailStringFunc(source, args){
    var badEmailString = '';
    var badCharactersEmail = '!~#$%^&*()+={}[]\\|:;?/><,\'`';
    var emailBoxString = new String(document.getElementById('emailField1').value + document.getElementById('emailField2').value);
    var booleanVar = new Boolean(false);
    for (var i=0; i < emailBoxString.length; i++){
      for (var j=0; j < badCharactersEmail.length; j++){
            if (emailBoxString.substring(i,i+1) == badCharactersEmail.substring(j,j+1)){
                for (var z=0; z < badEmailString.length; z++){ 
                    if (emailBoxString.substring(i,i+1) == badEmailString.substring(z,z+1)){
                        booleanVar = true;
                        break;
                    }
                }
                if (booleanVar == false)
                        badEmailString += emailBoxString.substring(i,i+1);
                }
        } 
    }
    if (badEmailString.length > 0){
        args.IsValid = false;
        badEmailString = 'The following characters are invalid: ' + badEmailString; 
        document.getElementById('cvNewsletterEmailBadID').className='newsletterValidatorEmailBad';
        document.getElementById('cvNewsletterEmailBadID').innerHTML = badEmailString;
    }else{
        args.IsValid = true;
        //alert('passing through else statement');
        document.getElementById('cvNewsletterEmailBadID').className='cvNewsletterEmailBadID';
        document.getElementById('cvNewsletterEmailBadID').innerHTML = '';
        emailValidationFuncNewsletter(source, args);
    }
    return badEmailString;
} 

/* ------------------------------------- unsubscribe functions -------------------------------------------------- */
function validEmail(source, args){
    var emailRegEx = /^\w+([-+.\']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
        var email1 = document.getElementById('fEmailUnsubscribe').value;
        var notValid = 'Email must be valid.';
        var noEmail = 'Please enter an email.';
        var noError = '';
        if (email1 != ''){
                args.IsValid = true;
                document.getElementById('validationUnsubscribeID').className='validationUnsubscribeID';
                document.getElementById('validationUnsubscribeID').innerHTML = noError;
           if (emailRegEx.test(email1) == true){
                args.IsValid = true;
                document.getElementById('validationUnsubscribeID').className='validationUnsubscribeID';
                document.getElementById('validationUnsubscribeID').innerHTML = noError;
           }else{
                args.IsValid = false;
                document.getElementById('validationUnsubscribeID').className='validationUnsubscribeIDreplace';
                document.getElementById('validationUnsubscribeID').innerHTML = notValid;
           }
        }else{
            args.IsValid = false;
            document.getElementById('validationUnsubscribeID').className='validationUnsubscribeIDreplace';
            document.getElementById('validationUnsubscribeID').innerHTML = noEmail;
        }
}

/*--------------------------------------- load event function --------------------------------------------------*/
function addLoadEvent(func)
{    
    var oldonload = window.onload;
    if (typeof window.onload != 'function')
    {
        window.onload = func;
    } 
    else 
    {
        window.onload = function()
        {
            oldonload();
            func();
        }
    }
}

addLoadEvent(rollOvers);
addLoadEvent(background);



