var sRoot = 'http://alumni.ri.edu.sg/'

// JScript File
/*============================================================================================================
Form Validation Function
==============================================================================================================*/

function doCommand(sCommand, iID, bSubmit) {
    //Check whether procedure name passed in call or not
    setDbParamPrefix("ctl00$MainContent$");
    arrCommand = sCommand.split(":");
    if (arrCommand.length > 1) {
        /*document.aspnetForm.elements["db_command"].value = arrCommand[0];
        document.aspnetForm.elements["db_stored_proc"].value = arrCommand[1];*/
        document.forms.form1.elements["db_command"].value = arrCommand[0];
        document.forms.form1.elements["db_stored_proc"].value = arrCommand[1];
    } else {
        /*document.aspnetForm.elements["db_command"].value = sCommand;
        document.aspnetForm.elements["db_stored_proc"].value = '';*/
        document.forms.form1.elements["db_command"].value = sCommand;
        document.forms.form1.elements["db_stored_proc"].value = '';
    }

    //switch (document.aspnetForm.elements["db_command"].value) {
    switch (document.forms.form1.elements["db_command"].value) {
        case "delete":
            var r = confirm('Are you sure, do you want to delete record ?');
            if (r) {
                if (iID > 0) { document.forms.form1.elements["ctl00_MainContent_db_id"].value = iID; }
                else if (iID != "") { document.forms.form1.elements["ctl00_MainContent_db_id"].value = iID; }
                //document.aspnetForm.submit();
                document.forms.form1.submit();
            }
            else {
                //document.aspnetForm.elements["db_command"].value = '';
                document.forms.form1.elements["db_command"].value = '';
            }
            break;
        case "deleteMessage":
            var r = confirm('Are you sure, do you want to delete This Message?');
            if (r) {
                if (iID > 0) { document.forms.form1.elements["ctl00_MainContent_db_Mc_id"].value = iID; }
                else if (iID != "") { document.forms.form1.elements["ctl00_MainContent_db_Mc_id"].value = iID; }
                //document.aspnetForm.submit();
                document.forms.form1.submit();
            }
            else {
                //document.aspnetForm.elements["db_command"].value = '';
                document.forms.form1.elements["db_command"].value = '';
            }
            break;
        default:
            if (bSubmit) { /*document.aspnetForm.submit();*/document.forms.form1.submit(); }
    }
}

function setDbParamPrefix(sValue) {    
    document.getElementById('db_param_prefix').value = sValue;    
}

/*Use for only Right Margin*/
function setDbParamPrefixMargin(sValue) {
    document.getElementById('db_param_prefix_margin').value = sValue;
}

/*Use for only rtb*/
function setDbParamPrefixRTB(sValue) {    
    document.getElementById('db_param_prefix_rtb').value = sValue;
}

//function getFTB(oRTB, oFTB) {
//    var arrRTB = oRTB.split(";");
//    var arrFTB = oFTB.split(";");
//    for (var i = 0; i < arrFTB.length; i++) {
//        document.getElementById('ctl00_MainContent__FTB_' + arrFTB[i]).value = document.getElementById(arrRTB[i]).value;
//        alert();
//    }
//}
function getFTB(oRTB, oFTB) {
    var arrRTB = oRTB.split(";");
    var arrFTB = oFTB.split(";");
    for (var i = 0; i < arrFTB.length; i++) {                
        document.getElementById('_FTB_' + arrFTB[i]).value = document.getElementById(arrRTB[i]).value;
    }
}
function doDelete(oField) {
    document.aspnetForm.elements["ctl00_MainContent_db_id"].value = document.aspnetForm.elements[oField].value;
    doCommand('delete');
}

// Replace Required "db_" to "Req_"
function showHideRequiredTR(oElementID, iShowHide) {
    var re = /\$|\$|\./g;
    var iContentId = document.getElementById('db_param_prefix').value.replace(re, "_");
    //iContentId = 'ctl00$MainContent$';
    var oReqElementID;
    if (oElementID.id.indexOf(iContentId) == -1) {
        oReqElementID = oElementID.id.replace("ctl00_", "req_");
    }
    else {
        oReqElementID = oElementID.id.replace(iContentId, "req_");
    }
    if (iShowHide != undefined) {
        document.getElementById(oReqElementID).style.display = 'none';
    } else {
        document.getElementById(oReqElementID).style.display = '';
    }
}

// Validate form new
function validateFormNew() {
    var oForm = document.getElementById('form1');
    var e = '';
    var r = true;
    var oFocus = "";
    var bFocusStatus = true;
    var arrElements = new Array();
    arrElements[0] = '';
    // Loop through element
    for (i = 0; i < oForm.elements.length; i++) {
        var oElement = oForm.elements[i];
        //TEXT | PASSWORD | CHECKBOX | RADIO | SUBMIT | RESET | FILE | HIDDEN | IMAGE | BUTTON
        //REQUIRED UNDEFINED
        //alert(oElement.type + '  ' + oElement.name + '  ' + (oElement.value == ''));

        if (oElement.attributes["compulsory"] == undefined) {
            if (oElement.attributes["isnumber"] != undefined) {
                if (isNaN(oElement.value)) {
                    showHideRequiredTR(oElement);
                    oFocus = oElement.id;
                    r = false;
                } else {
                    showHideRequiredTR(oElement, true);
                }
            }
        }

        if (oElement.attributes["compulsory"] != undefined) {
            //REQUIRED
            if (oElement.attributes["compulsory"].value == "1" || oElement.attributes["compulsory"].value == 1 || oElement.attributes["compulsory"].value == true
							|| oElement.attributes["compulsory"].value == "compulsory") {
                //alert(oElement.type + '  ' + oElement.name + '  ' + oElement.attributes["eMessage"].value);

                //SWITCH
                switch ((oElement.type).toLowerCase()) {
                    case "text":
                        if (oElement.value == '') {
                            showHideRequiredTR(oElement);
                            oFocus = oElement.id;
                            r = false;
                        } else {
                            if (oElement.attributes["isemail"] != undefined) {
                                if (!isEmail(oElement.value)) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else {
                                    showHideRequiredTR(oElement, true);
                                }
                            } else if (oElement.attributes["isurl"] != undefined) {
                                if (!isURL(oElement.value)) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else {
                                    showHideRequiredTR(oElement, true);
                                }
                            } else if (oElement.attributes["isnumber"] != undefined) {
                                if (isNaN(oElement.value)) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else {
                                    showHideRequiredTR(oElement, true);
                                }
                            } else if (oElement.attributes["isdate"] != undefined) {
                                var sDate = oElement.value;
                                if (sDate.length < 10) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else if (!isDate(sDate.substr(3, 2), sDate.substr(0, 2), sDate.substr(6, 4))) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else {
                                    showHideRequiredTR(oElement, true);
                                }
                            } else if (oElement.attributes["istime"] != undefined) {
                                var sTime = oElement.value;
                                if (sTime.length < 5) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else if (!isTime(sTime)) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else {
                                    showHideRequiredTR(oElement, true);
                                }
                            } else if (oElement.attributes["isphone"] != undefined) {
                                if (!isPhone(oElement.value)) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else {
                                    showHideRequiredTR(oElement, true);
                                }
                            } else {
                                showHideRequiredTR(oElement, true);
                            }
                        }
                        break;
                    case "password":
                        if (oElement.value == '') {
                            showHideRequiredTR(oElement);
                            oFocus = oElement.id;
                            r = false;
                        } else {
                            showHideRequiredTR(oElement, true);
                        }
                        break;
                    case "textarea":
                        if (oElement.value == '') {
                            showHideRequiredTR(oElement);
                            oFocus = oElement.id;
                            r = false;
                        } else {
                            showHideRequiredTR(oElement, true);
                        }
                        break;
                    case "select-one":
                        if (oElement.selectedIndex == -1 || oElement.value == "") {
                            showHideRequiredTR(oElement);
                            oFocus = oElement.id;
                            r = false;
                        } else {
                            showHideRequiredTR(oElement, true);
                        }
                        break;
                    case "select-multiple":
                        if (oElement.selectedIndex == -1) {
                            showHideRequiredTR(oElement);
                            oFocus = oElement.id;
                            r = false;
                        } else {
                            showHideRequiredTR(oElement, true);
                        }
                        break;
                    case "checkbox":
                        if (!isArrayExists(arrElements, oElement.name)) {
                            //alert(oElement.length + '   ' + oElement.name + '  ' + oElement.attributes["compulsory"].value + '  ' + oElement.attributes["eMessage"].value);
                            if (!validateArrElements(eval("oForm." + oElement.name))) {
                                showHideRequiredTR(oElement);
                                oFocus = oElement.id;
                                r = false;
                            } else {
                                showHideRequiredTR(oElement, true);
                            }
                        }
                        break;
                    case "radio":
                        if (!isArrayExists(arrElements, oElement.name)) {
                            //alert(oElement.length + '   ' + oElement.name + '  ' + oElement.attributes["compulsory"].value + '  ' + oElement.attributes["eMessage"].value);
                            if (!validateArrElements(eval("oForm." + oElement.name))) {
                                showHideRequiredTR(oElement);
                                oFocus = oElement.id;
                                r = false;
                            } else {
                                showHideRequiredTR(oElement, true);
                            }
                        }
                        break;
                    case "hidden":
                        if (oElement.value == '') {
                            showHideRequiredTR(oElement);
                            oFocus = oElement.id;
                            r = false;
                        } else {
                            if (oElement.attributes["isemail"] != undefined) {
                                if (!isEmail(oElement.value)) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else {
                                    showHideRequiredTR(oElement, true);
                                }
                            } else if (oElement.attributes["isnumber"] != undefined) {
                                if (isNaN(oElement.value)) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else {
                                    showHideRequiredTR(oElement, true);
                                }
                            } else if (oElement.attributes["isdate"] != undefined) {
                                var sDate = oElement.value;
                                if (sDate.length < 10) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else if (!isDate(sDate.substr(3, 2), sDate.substr(0, 2), sDate.substr(6, 4))) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else {
                                    showHideRequiredTR(oElement, true);
                                }
                            } else if (oElement.attributes["istime"] != undefined) {
                                var sTime = oElement.value;
                                if (sTime.length < 5) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else if (!isTime(sTime)) {
                                    showHideRequiredTR(oElement);
                                    oFocus = oElement.id;
                                    r = false;
                                } else {
                                    showHideRequiredTR(oElement, true);
                                }
                            } else {
                                showHideRequiredTR(oElement, true);
                            }
                        }
                        break;
                    case "file":
                        if (oElement.value == '') {
                            showHideRequiredTR(oElement);
                            oFocus = oElement.id;
                            r = false;
                        } else {
                            showHideRequiredTR(oElement, true);
                        }
                        break;
                } //SWITCH
            } //REQUIRED
        } //REQUIRED UNDEFINED
        else {
            if (oElement.value != '') {
                if (oElement.attributes["isemail"] != undefined) {
                    if (!isEmail(oElement.value)) {
                        showHideRequiredTR(oElement);
                        oFocus = oElement.id;
                        r = false;
                    } else {
                        showHideRequiredTR(oElement, true);
                    }
                } else if (oElement.attributes["isnumber"] != undefined) {
                    if (isNaN(oElement.value)) {
                        showHideRequiredTR(oElement);
                        oFocus = oElement.id;
                        r = false;
                    } else {
                        showHideRequiredTR(oElement, true);
                    }
                } else if (oElement.attributes["isurl"] != undefined) {
                    if (!isURL(oElement.value)) {
                        showHideRequiredTR(oElement);
                        oFocus = oElement.id;
                        r = false;
                    } else {
                        showHideRequiredTR(oElement, true);
                    }
                } else if (oElement.attributes["isdate"] != undefined) {
                    oElement.value = oElement.value;
                    var sDate = oElement.value;
                    if (sDate.length < 10) {
                        showHideRequiredTR(oElement);
                        oFocus = oElement.id;
                        r = false;
                    } else if (!isDate(sDate.substr(3, 2), sDate.substr(0, 2), sDate.substr(6, 4))) {
                        showHideRequiredTR(oElement);
                        oFocus = oElement.id;
                        r = false;
                    } else {
                        showHideRequiredTR(oElement, true);
                    }
                } else if (oElement.attributes["istime"] != undefined) {
                    var sTime = oElement.value;
                    if (sTime.length < 5) {
                        showHideRequiredTR(oElement);
                        oFocus = oElement.id;
                        r = false;
                    } else if (!isTime(sTime)) {
                        showHideRequiredTR(oElement);
                        oFocus = oElement.id;
                        r = false;
                    } else {
                        showHideRequiredTR(oElement, true);
                    }
                }
                else if (oElement.attributes["isphone"] != undefined) {
                    if (!isPhone(oElement.value)) {
                        showHideRequiredTR(oElement);
                        r = false;
                    } else {
                        showHideRequiredTR(oElement, true);
                    }
                }
            } //---
        }
        if (oFocus != '' && bFocusStatus == true) {
            if (document.getElementById(oFocus).disabled == false) {
                if ((document.getElementById(oFocus).type).toLowerCase() != 'hidden') {
                    document.getElementById(oFocus).focus();
                }
                bFocusStatus = false;
            }
        }
    }

    //	    if (!r) {
    //	        alert("The following must be completed first:\n" + e);
    //	    }
    return r;
}

//Check Email is valid or not
function isEmail(mailids) {
    var arr = new Array('.com', '.net', '.org', '.biz', '.coop', '.info', '.museum', '.name', '.pro'
                        , '.edu', '.gov', '.int', '.mil', '.ac', '.ad', '.ae', '.af', '.ag', '.ai', '.al',
                        '.am', '.an', '.ao', '.aq', '.ar', '.as', '.at', '.au', '.aw', '.az', '.ba', '.bb',
                        '.bd', '.be', '.bf', '.bg', '.bh', '.bi', '.bj', '.bm', '.bn', '.bo', '.br', '.bs',
                        '.bt', '.bv', '.bw', '.by', '.bz', '.ca', '.cc', '.cd', '.cf', '.cg', '.ch', '.ci',
                        '.ck', '.cl', '.cm', '.cn', '.co', '.cr', '.cu', '.cv', '.cx', '.cy', '.cz', '.de',
                        '.dj', '.dk', '.dm', '.do', '.dz', '.ec', '.ee', '.eg', '.eh', '.er', '.es', '.et',
                        '.fi', '.fj', '.fk', '.fm', '.fo', '.fr', '.ga', '.gd', '.ge', '.gf', '.gg', '.gh',
                        '.gi', '.gl', '.gm', '.gn', '.gp', '.gq', '.gr', '.gs', '.gt', '.gu', '.gv', '.gy',
                        '.hk', '.hm', '.hn', '.hr', '.ht', '.hu', '.id', '.ie', '.il', '.im', '.in', '.io',
                        '.iq', '.ir', '.is', '.it', '.je', '.jm', '.jo', '.jp', '.ke', '.kg', '.kh', '.ki',
                        '.km', '.kn', '.kp', '.kr', '.kw', '.ky', '.kz', '.la', '.lb', '.lc', '.li', '.lk',
                        '.lr', '.ls', '.lt', '.lu', '.lv', '.ly', '.ma', '.mc', '.md', '.mg', '.mh', '.mk',
                        '.ml', '.mm', '.mn', '.mo', '.mp', '.mq', '.mr', '.ms', '.mt', '.mu', '.mv', '.mw',
                        '.mx', '.my', '.mz', '.na', '.nc', '.ne', '.nf', '.ng', '.ni', '.nl', '.no', '.np',
                        '.nr', '.nu', '.nz', '.om', '.pa', '.pe', '.pf', '.pg', '.ph', '.pk', '.pl', '.pm',
                        '.pn', '.pr', '.ps', '.pt', '.pw', '.py', '.qa', '.re', '.ro', '.rw', '.ru', '.sa',
                        '.sb', '.sc', '.sd', '.se', '.sg', '.sh', '.si', '.sj', '.sk', '.sl', '.sm', '.sn',
                        '.so', '.sr', '.st', '.sv', '.sy', '.sz', '.tc', '.td', '.tf', '.tg', '.th', '.tj',
                        '.tk', '.tm', '.tn', '.to', '.tp', '.tr', '.tt', '.tv', '.tw', '.tz', '.ua', '.ug',
                        '.uk', '.um', '.us', '.uy', '.uz', '.va', '.vc', '.ve', '.vg', '.vi', '.vn', '.vu',
                        '.ws', '.wf', '.ye', '.yt', '.yu', '.za', '.zm', '.zw');

    var mai = mailids;
    var val = true;
    var beforeat = "";
    var afterat = "";
    var afterat2 = "";

    var dot = mai.lastIndexOf(".");
    var con = mai.substring(dot, mai.length);

    con = con.toLowerCase();
    con = con.toString();

    for (var i = 0; i < (arr.length); i++) {
        if (con == arr[i]) {
            val = true;
            break;
        }
        else {
            val = false;
        }
    }

    var att = mai.lastIndexOf("@");
    beforeat = mai.substring(0, att);
    beforeat = beforeat.toLowerCase();
    beforeat = beforeat.toString();
    var asci1 = beforeat.charCodeAt(0);

    afterat = mai.substring(att + 1, dot);
    afterat = afterat.toLowerCase();
    afterat = afterat.toString();

    afterat2 = mai.substring(att + 1, mai.length);
    afterat2 = afterat2.toLowerCase();
    afterat2 = afterat2.toString();

    if (beforeat == "" || afterat == "" || beforeat.length > 30)
        val = false;

    if (afterat2.length > 64 || afterat.length < 2)
        val = false;

    if ((afterat.charCodeAt(0)) == 45 || (afterat.charCodeAt(afterat.length - 1)) == 45)
        val = false;

    if (val == true) {
        if (asci1 > 47 && asci1 < 58)
            val = false;

        if (asci1 < 48 || asci1 > 57) {
            for (var i = 0; i <= beforeat.length - 1; i++) {
                var asci2 = beforeat.charCodeAt(i);
                if ((asci2 <= 44 || asci2 == 47) || (asci2 >= 58 && asci2 <= 94) || (asci2 == 96) || (asci2 >= 123 && asci2 <= 127)) {
                    val = false;
                    break;
                }
            }
            for (var j = 0; j <= afterat.length - 1; j++) {
                var asci3 = afterat.charCodeAt(j);
                if ((asci3 <= 44) || (asci3 == 47) || (asci3 >= 58 && asci3 <= 96) || (asci3 >= 123 && asci3 <= 127)) {
                    val = false;
                    break;
                }
            }
        }
    }

    if (val == false) {
        //alert("Your maild "+mai+" is not valid");
        return false;
    }
    else {
        return true;
    }
}

function isDate(day, month, year) {
    // 0 - 11 Jan - Dec
    var dtDate = new Date(year, month - 1, day);
    if ((dtDate.getDate() == day) && ((dtDate.getMonth() + 1) == month) && (dtDate.getFullYear() == year)) {
        return true;
    } else { return false; }
}

function SetFocus(obj) {
    document.getElementById(obj).focus();
}

function chgPage(iPageID) {
    if (iPageID > 0) {
     //   if (document.getElementById('ctl00_MainContent_db_page_id') != undefined) {
        document.getElementById('ctl00_MainContent_db_page_id').value = iPageID;        
        document.getElementById('form1').submit();
       // }
    }
}

function chgPageDynamic(iPageID, objPageID) {
    if (iPageID > 0) {
        document.getElementById('ctl00_MainContent_' + objPageID).value = iPageID;
        document.getElementById('form1').submit();
    }
}

function chgPagePopup(iPageID) {
    if (iPageID > 0) {
        //   if (document.getElementById('ctl00_MainContent_db_page_id') != undefined) {
        document.getElementById('db_page_id').value = iPageID;
        alert(document.getElementById('db_page_id').value);
        document.getElementById('form1').submit();
        // }
    }
}


function popupWindow(sTitle, sQuery) {

    switch (sTitle) {
        //& Application("dPath") & "admin/training/certificate/attempted_quiz_list.aspx? 
        case "SearchMember":
            window.open(sRoot + 'member/eventsgathering/search_member.aspx?' + sQuery, 'popUp', 'width=1000,height=700,left=' + (screen.width - 500) / 2 + ',top= ' + (screen.height - 300) / 2 + ',scrollbars=1');
            break;
    }
}
