﻿var splashimglnk='';
var yMsg = ""

function isDate(dateStr) {
    yMsg = ""
    var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
    var matchArray = dateStr.match(datePat); // is the format ok?

    if (matchArray == null) {
        yMsg = ("Please enter date as either mm/dd/yyyy or mm-dd-yyyy.");
        return false;
    }

    month = matchArray[1]; // p@rse date into variables
    day = matchArray[3];
    year = matchArray[5];

    if (month < 1 || month > 12) { // check month range
        yMsg = ("Month must be between 1 and 12.");
        return false;
    }

    if (day < 1 || day > 31) {
        yMsg = ("Day must be between 1 and 31.");
        return false;
    }

    if ((month == 4 || month == 6 || month == 9 || month == 11) && day == 31) {
        yMsg = ("Month " + month + " doesn`t have 31 days!")
        return false;
    }

    if (month == 2) { // check for february 29th
        var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
        if (day > 29 || (day == 29 && !isleap)) {
            yMsg = ("February " + year + " doesn`t have " + day + " days!");
            return false;
        }
    }
    return true; // date is valid
}	

function funcSwapImage(xImg, xDiv, xTitle) {
    //alert('funcSwapImage-js')
    //alert(xImg)
    //alert(xDiv)
    if (xTitle.Length == 0) {
        alert(xImg)
    } else {
        window.document.all[xDiv].alt = xTitle
        window.document.all[xDiv].title = xTitle
    }
    window.document.all[xDiv].src = xImg
}


function subChgSplashImg(a, b, c) {
    splashimglnk = '/tnb/' + b + '.aspx';
    funcSwapImage(c, a, b)
}

//for header forms
function HideContent(d) {
    if (d.length < 1) { return; }
    document.getElementById(d).style.display = "none";
}
//moved
//function HideContent(d) {
//    if (d.length < 1) { return; }
//    document.getElementById(d).style.display = "none";
//}

function ShowContent(d) {
    if (d.length < 1) { return; }
    document.getElementById(d).style.display = "block";
}
// end moved

function ShowContentXY(d, x, y) {
    if (d.length < 1) { return; }
    //alert(x + '\n' + y)
    //alert(event.clientX + '\n' + event.clientY)
    document.getElementById(d).style.display = "block";
    document.getElementById(d).style.left = event.clientX + x;
    document.getElementById(d).style.top = event.clientY + y;
}

function clearitem(frm, nam, def) {
    var val = ""
    if (window.document.forms[frm].elements[nam].value.length != 0) {
        if (window.document.forms[frm].elements[nam].value == def) {
            window.document.forms[frm].elements[nam].value = ""
        }
    }
}

function popitem(frm, nam, def, or) {
    var val = ""
    if (or == '0') {
        if (window.document.forms[frm].elements[nam].value.length == 0) {
            window.document.forms[frm].elements[nam].value = def
        }
    } else {
        window.document.forms[frm].elements[nam].value = def
    }
}

function repopitem(frm) {
    switch (frm) {
        case 'frmClientLogin':
            popitem(frm, 'strLogin', '', '1');
            popitem(frm, 'strPassword', '', '1');
            window.document.getElementById('divClientLoginErr').innerHTML = ''
            break;
        case 'frmContactUs':
            popitem(frm, 'strName', '', '1');
            popitem(frm, 'strEmail', '', '1');
            popitem(frm, 'strPhone', '', '1');
            popitem(frm, 'strComments', '', '1');
            window.document.getElementById('divContactUsErr').innerHTML = ''
            break;
        default:
    }
}


var iMsg = -1;
var xMsg = '';
function valfrm(frm, diverr) {
    xMsg = ""
    switch (frm) {
        case 'frmClientLogin':  //login popup in header
        case 'frmClientLogin2': //Client & Admin pages in body
            //strLogin strPassword
            var strLogin = window.document.forms[frm].elements['strLogin'].value;
            if (strLogin.length == 0) { xMsg = xMsg + 'Enter a Login' + '<br />' }
            if (strLogin.indexOf("\'") > -1) { xMsg = xMsg + 'Login cannot contain an apostrophe (\')' + '<br />' }
            if (strLogin.indexOf("\"") > -1) { xMsg = xMsg + 'Login cannot contain a quote (\")' + '<br />' }
            if (strLogin.indexOf(" ") > -1) { xMsg = xMsg + 'Login cannot contain a space' + '<br />' }

            var strPassword = window.document.forms[frm].elements['strPassword'].value;
            if (strPassword.length == 0) { xMsg = xMsg + 'Enter a Password' }
            if (strPassword.indexOf("\'") > -1) { xMsg = xMsg + 'Password cannot contain an apostrophe (\')' + '<br />' }
            if (strPassword.indexOf("\"") > -1) { xMsg = xMsg + 'Password cannot contain a quote (\")' + '<br />' }
            if (strPassword.indexOf(" ") > -1) { xMsg = xMsg + 'Password cannot contain a space' + '<br />' }
            break;
        case 'frmContactUs':
            //strName strEmail strPhone strComments
            var strName = window.document.forms[frm].elements['strName'].value;
            if (strName.length == 0) { xMsg = xMsg + 'Enter a Name' + '<br />' }

            var strEmail = window.document.forms[frm].elements['strEmail'].value;
            var strEmailL;
            if (strEmail.length == 0) {
                strEmailL = 0
            } else {
                funcValidateEMail(strEmail)
                if (xEmailMsg != "") { xMsg = xMsg + 'Enter a Valid EMail' + '<br />' }
            }

            var strPhone = window.document.forms[frm].elements['strPhone'].value;
            var strPhoneL;
            if (strPhone.length == 0) {
                strPhoneL = 0
            } else {
                if (strPhone.indexOf(" ") > -1) {
                    xMsg = xMsg + 'Phone cannot contain a space'
                } else {
                    if (isNaN(strPhone) == true) {
                        xMsg = xMsg + 'Enter a Numeric Phone'
                    }
                }
            }

            if (strEmailL == 0 && strPhoneL == 0) { xMsg = xMsg + 'Enter an Email or Phone' }

            //strComments not required, clear if all others are ok
            var strComments = window.document.forms[frm].elements['strComments'].value;
            if (strComments == '' && xMsg.length == 0) { window.document.forms[frm].elements['strComments'].value = '' }
            break;
        default:

    }
    if (xMsg.length != 0) {
        window.document.getElementById(diverr).innerHTML = xMsg
    } else {
        switch (frm) {
            case 'frmClientLogin':
            case 'frmClientLogin2':
                XMLSendEmail('Login.aspx', '', '', '', '', strLogin, strPassword)
                break;
            case 'frmContactUs':
                XMLSendEmail('Email.aspx', strName, strEmail, strPhone, strComments, '', '')
                break;
            default:
        }
        iMsg = xMsg.substr(0, 1)
        xMsg = xMsg.substr(2, xMsg.length - 2)

        switch (frm) {
            case 'frmClientLogin':
            case 'frmClientLogin2':
                if (iMsg == 1) {
                    window.location = path
                } else {
                    window.document.getElementById(diverr).innerHTML = xMsg
                }
                break;
            case 'frmContactUs':
                HideContent('Sub_divContactUs')
                ShowContent('Cls_divContactUs')
                window.document.getElementById(diverr).innerHTML = xMsg
                break;
            default:
        }
    }
}

function XMLSendEmail(url, strName, strEmail, strPhone, strComments, strLogin, strPassword) {
    xmlhttpRead = null
    var xdo
    xdo = "GET" //used for test only  
    xdo = "POST"

    // code for Mozilla, etc.
    if (window.XMLHttpRequest) {
        xmlhttpRead = new XMLHttpRequest()
    }
    // code for IE
    else if (window.ActiveXObject) {
        xmlhttpRead = new ActiveXObject("Microsoft.XMLHTTP")
    }

    xmlhttpRead.open(xdo, url, false)
    if (xmlhttpRead != null) {
        if (xdo == "GET") {  //used for test only                
            xmlhttpRead.send(null)
        } else {
            xmlhttpRead.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded')
            switch (url) {
                case 'Login.aspx':
                    xmlhttpRead.send("strLogin=" + strLogin + "&strPassword=" + strPassword)
                    break;
                case 'Email.aspx':
                    xmlhttpRead.send("strName=" + strName + "&strEmail=" + strEmail + "&strPhone=" + strPhone + "&strComments=" + strComments)
                    break;
                default:
            }
        }
        if (xmlhttpRead.status == 200) {
            xMsg = xmlhttpRead.responseText;
        }
    } else {
        xMsg = "Your browser does not support XMLHTTP."
    }
}
//end for header forms

//for dyn side menu
//function HideContent(d) {
//    if (d.length < 1) { return; }
//    document.getElementById(d).style.display = "none";
//}

//function ShowContent(d) {
//    if (d.length < 1) { return; }
//    document.getElementById(d).style.display = "block";
//}

function ShowContentMenu(d) {
    if (d.length < 1) { return; }
    ShowContent(d);

    var k = aryDIVpopoutlist.length
    for (i = 0; i < k; i++) {
        if (d != aryDIVpopoutlist[i]) {
            HideContent(aryDIVpopoutlist[i])
        }
    }

    switch (d) {
        case 'divMarketing_Assistance':
            //HideContent('divWebsite_Services');
            //HideContent('divOur_Portfolio');
            break;
        case 'divWebsite_Services':
            //HideContent('divMarketing_Assistance');
            //HideContent('divOur_Portfolio');
            break;
        case 'divOur_Portfolio':
            //HideContent('divMarketing_Assistance');
            //HideContent('divWebsite_Services');
            break;
    }
}
//end for dyn side menu


var xEmailMsg = ""
function funcValidateEMail(xMailStr) {
    xEmailMsg = ""
    //then val Email addresses for validity
    if (xMailStr.indexOf("\'") > -1) { xEmailMsg = xEmailMsg + '<br>Email cannot contain an apostrophe (\')' }
    if (xMailStr.indexOf("\"") > -1) { xEmailMsg = xEmailMsg + '<br>Email cannot contain a quote (\")' }
    if (xMailStr.indexOf(" ") > -1) { xEmailMsg = xEmailMsg + '<br>Email cannot contain a space' }

    var aryEmail = xMailStr.split("@")
    //alert('aryEmail.length='+aryEmail.length)
    if (aryEmail.length != 2) {
        xEmailMsg = xEmailMsg + "<br>a - Enter a Valid Email address"
    } else {
        //alert('aryEmail[0]='+aryEmail[0]+'/'+aryEmail[0].length)
        //alert('aryEmail[1]='+aryEmail[1]+'/'+aryEmail[1].length)
        //either side is 0 length
        if (aryEmail[0].length == 0 || aryEmail[1].length == 0) {
            xEmailMsg = xEmailMsg + "<br>b - Enter a Valid Email address"
        } else {
            var aryEmail2 = aryEmail[1].split(".")
            var aryL = aryEmail2.length
            //alert('aryEmail2.length='+aryL)
            if (aryL < 2) {
                xEmailMsg = xEmailMsg + "<br>c - Enter a Valid Email address"
            } else {
                //alert('aryEmail2[aryL-1]='+aryEmail2[aryL-2])
                //alert('aryEmail2[aryL]='+aryEmail2[aryL-1])
                for (i = 0; i < aryL; i++) {
                    if (aryEmail2[i].length == 0) {
                        xEmailMsg = xEmailMsg + "<br>d - Enter a Valid Email address"
                    }
                }
                if (xEmailMsg == "") {
                    if (aryEmail2[aryL - 1].length < 2 || aryEmail2[aryL - 1].length > 3) {
                        xEmailMsg = xEmailMsg + "<br>e - .xxx is <> 2 or 3 chars - Enter a Valid Email address"
                    }
                }
            }
        }
    }
    if (xEmailMsg != "") {
        //alert(xEmailMsg)
    }
    xEmailMsg = xEmailMsg + xEmailMsg
}
