function searchHelp(tBid, tProd) {
    var tURL;
    tURL = "EnergyLibraryHelp.asp?bid=" + tBid + "&prd=" + tProd;
	window.open(tURL,'EnergyLibraryHelp','resizable=1,width=540,height=605,screenX=100,screenY=30,top=0,left=100,scrollbars=1');
}

function setDest(tStr)
{
    //alert("page: " + window.location.pathname);
	if (tStr.indexOf("Multiple") != -1){
	    if (window.location.pathname.indexOf("subject") != -1) {
		    document.inputForm.destURL.value = "AddEditSubject.asp?bid=" + document.inputForm.NXFRMBIDTXT.value;
		}
	    if (window.location.pathname.indexOf("topic") != -1) {
		    document.inputForm.destURL.value = "AddEditTopic.asp";
		}
	    if (window.location.pathname.indexOf("faq") != -1) {
		    document.inputForm.destURL.value = "AddEditFAQ.asp";
		}
	}
}

function isNumeric(inStr) {
	for (var i = 0; i != inStr.length; i++) {
		aChar = inStr.substring(i, i+1);
		if (aChar < "0" || aChar > "9") {
			return false
		}
	}
	// If we get to here, all is well
	return true;
}

function isAlphabetic(inStr) {
    inStr = inStr.toUpperCase();
	for (var i = 0; i != inStr.length; i++) {
		aChar = inStr.substring(i, i+1);
		if (aChar < "A" || aChar > "Z") {
			return false
		}
	}
	// If we get to here, all is well
	return true;
}

function toggleEdit() {
    if (document.inputForm.updateBtn) {
    	var st = document.inputForm.updateBtn.disabled
    	document.inputForm.updateBtn.disabled = !st
    	document.inputForm.deleteBtn.disabled = !st
	}
}

function toggleEditButton(tSelect, tButton){
    if (tSelect.selectedIndex > 0) {
    	var st = tButton.disabled
        tButton.disalbed = !st;
    }
    
}

function getRadioValue(radioObject) {
	var value = "";
	for (var i=0; i < radioObject.length; i++) {
		if (radioObject[i].checked) {
			value = radioObject[i].value;
			break;
		}
	}
	return value;
}

function getSelectValue(tSelect) {
    return tSelect.options[tSelect.selectedIndex].value;
}

function verifyHouseKeepingForm() {
    var tForm = document.inputForm;
    
    if (tForm.NXFRMClientNameTXT.value.length == 0) {
        alert("Please enter a client name.");
        return false;
    }
    if (tForm.NXFRMProductNameResTXT.value.length == 0) {
        alert("Please enter a residential product name.");
        return false;
    }
    if (getRadioValue(tForm.NXFRMPoweredByLogoPosResINT) == "") {
        alert("Please select a position for the residential Powered By Logo.");
        return false;
    }
    if (getRadioValue(tForm.NXFRMClientLogoPosResINT) == "") {
        alert("Please select a position for the residential Client Logo.");
        return false;
    }
    if (tForm.NXFRMProductNameBusTXT.value.length == 0) {
        alert("Please enter a business product name.");
        return false;
    }
    if (getRadioValue(tForm.NXFRMPoweredByLogoPosBusINT) == "") {
        alert("Please select a position for the business Powered By Logo.");
        return false;
    }
    if (getRadioValue(tForm.NXFRMClientLogoPosBusINT) == "") {
        alert("Please select a position for the business Client Logo.");
        return false;
    }
    // It's OK (not advisable) to leave the intro text fields
    // blank.
    return true;
}

function verifyLoginForm()
{
    var tForm = document.inputForm
    if (tForm.NXFRMUsernameTXT.value.length == 0) {
        alert("Please enter a user name.");
        return false;
    }
    if (tForm.NXFRMPasswordTXT.value.length == 0) {
        alert("Please enter a password.");
        return false;
    }
    return true;
}

function verifyTaskHubForm()
{
    var tForm = document.inputForm;
    
    if (tForm.ClientList.selectedIndex <= 0) {
        alert("Please select a client.");
        return false;
    }
    
    if (getRadioValue(tForm.task) == "") {
        alert("Please select a task.");
        return false;
    }
    
    return true;
}

function imgFileNameIsValid(tStr) {
    // Use tStr as a file extension and make sure it's legal.
    // as of August, 2002 we only handled jpg, jpeg, gif, and png
    var tSuffix;
    tSuffix = tStr.substr(tStr.lastIndexOf("."))
    tSuffix = tSuffix.toLowerCase();
    switch (tSuffix) {
        case ".jpg":
            return true;
            break;
        case ".jpeg":
            return true;
            break;
        case ".gif":
            return true;
            break;
        case ".png":
            return true;
            break;
        default:
            return false;
            break;
    }
}

function verifyUploadImagesForm() {
    var tForm = document.inputForm;
    var i, k;
    var slashPos, tStr;

    k = 0;
    // check the five controls for no spaces or weired image types.
    for (i = 1; i < tForm.length; i++) {
        if (tForm.elements[i].name.indexOf("ImageFile") >= 0) {
            ++k;   // this is the image file control. only used in the error alert.
            tStr = tForm.elements[i].value;
            if (tStr.length > 0) {
                slashPos = tStr.lastIndexOf("\\");  // get the last slash from the right.
                if (tStr.indexOf(" ", slashPos) > 0) {  // spaces in the directory names are OK, just not the image file name.
                    // no spaces in the file name, please
                    alert("Problem with filename " + parseInt(k) + ". Please make sure that your image file names do not have spaces in them. Spaces in image file names will break Netscape 4.*");
                    tForm.elements[i].select();
                    return false;
                }
                if (!imgFileNameIsValid(tStr)) {
                    // only png, gif, jpg, jpeg allowed
                    alert("Problem with filename " + parseInt(k) + ". You can only upload gif, jpg, and png files.");
                    tForm.elements[i].select();
                    return false;
                }
            }
        }
    }
    // if we get here, all is well
    return true;
}

function verifyAESubjectForm() {
    var tForm = document.inputForm;
    
	if (tForm.pageMode.value == "delete") {
	    if (!confirm("Really delete this subject?")) {
	        return false;
	    }
	    else {
	        return true;
	    }
	}
    if (tForm.NXFRMSubjectTitleTXT.value.length == 0) {
        alert("Please enter a subject title.");
        return false;
    }
    if (tForm.NXFRMSubjectOrderINT.value.length == 0) {
        alert("Please enter a subject order number.");
        return false;
    }
    if (!isNumeric(tForm.NXFRMSubjectOrderINT.value)) {
        alert("Please enter a NUMERIC subject order.");
        return false;
    }
    if (tForm.NXFRMProductINT.selectedIndex <= 0) {
        alert("Please select business or residential.");
        return false;
    }
    if (getRadioValue(tForm.NXFRMbShowINT) == "") {
        alert("Please select wether or not to show this subject.");
        return false;
    }
    
    // added on 5/5/06
    if (tForm.chkAddToAll) {
        if (tForm.chkAddToAll.checked) {
    	    if (!confirm("Really add this to ALL clients?")) {
    	        return false;
    	    }
    	    else {
    	        return true;
    	    }
        }
    }
     
    return true;
}

function verifyStartSubjectForm() {
    var tForm = document.inputForm;
    if (getRadioValue(tForm.subjTask) == "") {
        alert("Please select a task to perform.");
        return false;
    }
    if (getRadioValue(tForm.subjTask) != "AddEdit") {
        if (tForm.EntityList.selectedIndex <= 0) {
            alert("Please select something to edit.");
            return false;
        }
    }
    return true;
}

function verifyAETopicForm() {
    var tForm = document.inputForm;
	if (tForm.pageMode.value == "delete") {
	    if (!confirm("Really delete this topic?")) {
	        return false;
	    }
	    else {
	        return true;
	    }
	}
    if (tForm.NXFRMTopicTitleTXT.value.length == 0) {
        alert("Please enter a title for this topic.");
        return false;
    }
    // NXFRMTopicContentTXT can be blank
    //if (tForm.NXFRMTopicTitleTXT.value.length == 0) {
    //    alert("Please enter a title for this topic.");
    //    return false;
    //}
    if (tForm.NXFRMTopicOrderTXT.value.length == 0) {
        alert("Please enter a title for this topic.");
        return false;
    }
    if (!isNumeric(tForm.NXFRMTopicOrderTXT.value)) {
        alert("Please enter a NUMERIC topic order.");
        return false;
    }
    if (tForm.NXFRMSubjectIDINT.selectedIndex <= 0) {
        alert("Please select a subject for this topic.");
        return false;
    }
    if (tForm.NXFRMProductINT.selectedIndex <= 0) {
        alert("Please select business or residential.");
        return false;
    }
    if (getRadioValue(tForm.NXFRMbShowINT) == "") {
        alert("Please select wether or not to show this topic.");
        return false;
    }
     
    // added on 5/5/06
    if (tForm.chkAddToAll) {
        if (tForm.chkAddToAll.checked) {
    	    if (!confirm("Really add this to ALL clients?")) {
    	        return false;
    	    }
    	    else {
    	        return true;
    	    }
        }
    }
}

function verifyAEGlossaryForm() {
    var tForm = document.inputForm;
	if (tForm.pageMode.value == "delete") {
	    if (!confirm("Really delete this glossary term?")) {
	        return false;
	    }
	    else {
	        return true;
	    }
	}
    if (tForm.NXFRMGlossaryTitleTXT.value.length == 0) {
        alert("Please enter a Glossary term.");
        return false;
    }
    if (tForm.NXFRMGlossaryContentTXT.value.length == 0) {
        alert("Please enter the definition for this term.");
        return false;
    }
    if (getRadioValue(tForm.NXFRMbShowINT) == "") {
        alert("Please select wether or not to show this FAQ.");
        return false;
    }
    return true; 
}

function verifyAEFAQForm() {
    var tForm = document.inputForm;
	if (tForm.pageMode.value == "delete") {
	    if (!confirm("Really delete this topic?")) {
	        return false;
	    }
	    else {
	        return true;
	    }
	}
    if (tForm.NXFRMFAQTitleTXT.value.length == 0) {
        alert("Please enter a FAQ title.");
        return false;
    }
    if (tForm.NXFRMFAQOrderTXT.value.length == 0) {
        alert("Please enter a FAQ order number.");
        return false;
    }
    if (!isNumeric(tForm.NXFRMFAQOrderTXT.value)) {
        alert("Please enter a NUMERIC FAQ order.");
        return false;
    }
    if (getRadioValue(tForm.NXFRMbShowINT) == "") {
        alert("Please select wether or not to show this FAQ.");
        return false;
    }
    return true; 
}

function verifyAEImageForm(tForm) {
    //var tForm = document.inputForm;
    var i, k;
    var slashPos, tStr;

    k = 0;
    // check the five controls for no spaces or weired image types.
    for (i = 1; i < tForm.length; i++) {
        if (tForm.elements[i].type == "file") {
            ++k;   // this is the image file control. only used in the error alert.
            tStr = tForm.elements[i].value;
            if (tStr.length > 0) {
                slashPos = tStr.lastIndexOf("\\");  // get the last slash from the right.
                if (tStr.indexOf(" ", slashPos) > 0) {  // spaces in the directory names are OK, just not the image file name.
                    // no spaces in the file name, please
                    alert("Problem with " + tForm.elements[i].name + ". Please make sure that your image file names do not have spaces in them. Spaces in image file names will break Netscape 4.*");
                    tForm.elements[i].select();
                    return false;
                }
                if (!imgFileNameIsValid(tStr)) {
                    // only png, gif, jpg, jpeg allowed
                    alert("Problem with " + tForm.elements[i].name + ". You can only upload gif, jpg, and png files.");
                    tForm.elements[i].select();
                    return false;
                }
            }
        }
    }
    // if we get here, all is well
    return true;
}

function ValidateSearchForm() {
    var tForm = document.searchFrm;
    if (tForm.SearchString.value.length == 0) {
        // alert("Please enter a string to use for searching.");
        alert(strSearchErrEmptyStr);
        return false;
    } 

    if (window.RegExp) { 
        // Is RegExp supported?
        var reg1str = "[^a-zA-Z]";
        var reg1 = new RegExp(reg1str);
        if (reg1.test(tForm.SearchString.value)) {
            // alert("Please enter a single word with only letters in your search.");
            alert(strSearchErrBadStr);
            return false;
        }
    }
    return true;
}

function verifyNewClientForm() {
    var tForm = document.inputForm;
    var aChar;
    if (tForm.ClientName.value.length == 0) {
        alert("You must enter a client name.");
        return false;
    }
    if (tForm.BID.value.length == 0) {
        alert("You must enter a branding ID.");
        return false;
    }
    for (var i = 0; i != tForm.BID.value.length; i++) {
		aChar = tForm.BID.value.substring(i, i+1);
        if (!isAlphabetic(aChar) && !isNumeric(aChar)) {
            alert("Only numbers and letters are valid in a BID.");
            return false;
        }
    }
    return true;
}