﻿function trim(stringToTrim) {
    return stringToTrim.replace(/^\s+|\s+$/g, "");
}
function JSSearchUrl(searchType, keyword, loc) {

    var search_url = '';
    if (keyword.indexOf('What Are You Looking For?') != -1) {
        keyword = '';
        alert("Please enter keyword / company name for search");
        return keyword;
    }
    else
        keyword = trim(keyword);
    if (loc.indexOf('Where Do You Want It?') != -1)
        loc = '';
    else
        loc = trim(loc);
    if (!JSHasSpecialChars(keyword) && !JSHasSpecialChars(loc)) {
        if ((keyword == 'Enter Keyword' || keyword == '') && (loc == 'State/Local Government' || loc == ''))
            search_url = '';
        else if (keyword != 'Enter Keyword' && keyword != '' && loc != 'State/Local Government' && loc != '') {
            search_url = '/search/' + searchType + '/' + ReplaceNormal(keyword) + '/' + ReplaceNormal(loc);
        }
        else if ((keyword == "Enter Keyword" || keyword == "")) {
            search_url = '/search/' + searchType + '/location/' + ReplaceNormal(loc);
        }
        else if ((loc == "State/Local Government" || loc == "")) {
            search_url = '/search/' + searchType + '/tags/' + ReplaceNormal(keyword);
        }
    }
    else {
        if ((keyword == 'Enter Keyword' || keyword == '') && (loc == 'State/Local Government' || loc == ''))
            search_url = '';
        else if (keyword != 'Enter Keyword' && keyword != '' && loc != 'State/Local Government' && loc != '') {
            search_url = "/list.aspx?type=" + searchType + "&loc=" + ReplaceEncoded(escape(loc)) + "&tag=" + ReplaceEncoded(escape(keyword));
        }
        else if ((keyword == "Enter Keyword" || keyword == "")) {
            search_url = "/list.aspx?type=" + searchType + "&loc=" + ReplaceEncoded(escape(loc));
        }
        else if ((loc == "State/Local Government" || loc == "")) {
            search_url = "/list.aspx?type=" + searchType + "&tag=" + ReplaceEncoded(escape(keyword));
        }
    }
    return search_url;
}

//function TagEncode1(tag) {
//    return tag.replace(/\s/g, "-");
//}

function ReplaceEncoded(tag) {
    var keyword = tag;
    for (var i = 0; i < keyword.length; i++) {
        var ch = keyword.substring(i, i + 3);
        if (ch == "%20") {
            keyword = keyword.replace(ch, "-");
        }
    }
    return keyword;
}

function ReplaceNormal(tag) {
    var inChar = ' ';
    var outChar = '-';
    var keyword = tag.split(inChar);
    keyword = keyword.join(outChar);
    return keyword;
}

function JSAdvanceSearchUrl(searchType, keyword, statename, govt, area) {
    var search_url = '';
    keyword = trim(keyword);
    statename = trim(statename);
    govt = trim(govt);
    area = trim(area);
    if (area == '0')
        area = '';
    else
        area = ReplaceNormal(area);
    if (govt == 'Local Govt')
        govt = '';
    else
        govt = ReplaceNormal(govt);
    if (statename == 'State')
        statename = '';
    else
        statename = ReplaceNormal(statename);

    if ((keyword == 'Enter Keyword' || keyword == '') && statename == '')
        search_url = '';
    else if (!JSHasSpecialChars(keyword)) {
        keyword = ReplaceNormal(keyword);

        if (statename != '' && govt != '' && area != '') {
            search_url = '/adv-search/' + searchType + '/tags/' + keyword + '/state/' + statename + '/localgovt/' + govt + '/area/' + area;
        }
        else if (statename != '' && govt != '') {
            search_url = '/adv-search/' + searchType + '/tags/' + keyword + '/state/' + statename + '/' + govt;
        }
        else if (statename != '') {
            search_url = '/adv-search/' + searchType + '/tags/' + keyword + '/' + statename;
        }
        else {
            search_url = '/search/' + searchType + '/tags/' + keyword;
        }
    }
    else {

        if (statename != '' && govt != '' && area != '') {
            search_url = '/list.aspx?type=' + searchType + '&tag=' + ReplaceEncoded(escape(keyword)) + '&state=' + statename + '&govt=' + govt + '&area=' + area;
        }
        else if (statename != '' && govt != '') {
            search_url = '/list.aspx?type=' + searchType + '&tag=' + ReplaceEncoded(escape(keyword)) + '&state=' + statename + '&govt=' + govt;
        }
        else if (statename != '') {
            search_url = '/list.aspx?type=' + searchType + '&tag=' + ReplaceEncoded(escape(keyword)) + '&state=' + statename;
        }
        else {
            search_url = '/list.aspx?type=' + searchType + '&tag=' + ReplaceEncoded(escape(keyword));
        }
    }
    return search_url;
}

function JSHasSpecialChars(term) {
    if (term == 'State/Local Government') {
        return false;
    }
    else {
        var reg = new RegExp(/[^\w\s,-]/gi);
        return reg.test(term);
    }
}

function JSShowControl(ctrl) {
    document.getElementById(ctrl).style.display = "block";
}
function JSHideControl(ctrl) {
    document.getElementById(ctrl).style.display = "none";
}
function JSGetValue(ctrl) {
    return document.getElementById(ctrl).value;
}
function JSSetValue(destCtrl, sourceCtrl) {
    document.getElementById(destCtrl).value = document.getElementById(sourceCtrl).value;
}
function JSGetCtrlID(ctrl) {
    return document.getElementById(ctrl);
}
function JSGetCheckedValue(ctrl) {
    return document.getElementById(ctrl).checked;
}
function JSRemoveAllOptions(selectbox) {
    var i;
    for (i = selectbox.options.length - 1; i >= 0; i--) {
        //selectbox.options.remove(i);
        selectbox.remove(i);
    }
}
function JSAddOption(selectbox, value, text) {
    var optn = document.createElement("OPTION");
    optn.text = text;
    optn.value = value;
    selectbox.options.add(optn);
}

function JSEventURL(state, statename, category, categoryname, startdate, enddate) {
    var event_url = '';
    if (state != '' && category != '' && startdate != '' && enddate != '') {
        event_url = '/events/nigeria/' + state + '/' + statename + '/' + category + '/' + categoryname + '/' + startdate + '/' + enddate;
    }
    else if (state != '' && category != '' && startdate == '' && enddate == '') {
        event_url = '/events/nigeria/' + state + '/' + statename + '/' + category + '/' + categoryname;
    }
    else if (state != '' && category == '' && startdate != '' && enddate != '') {
        event_url = '/events/nigeria/state/' + state + '/' + statename + '/' + startdate + '/' + enddate;
    }
    else if (state == '' && category != '' && startdate != '' && enddate != '') {
        event_url = '/events/nigeria/category/' + category + '/' + categoryname + '/' + startdate + '/' + enddate;
    }
    else if (state == '' && category == '' && startdate != '' && enddate != '') {
        event_url = '/events/nigeria/dates/' + startdate + '/' + enddate;
    }
    else if (state == '' && category != '' && startdate == '' && enddate == '') {
        event_url = '/events/nigeria/category/' + category + '/' + categoryname;
    }
    else if (state != '' && category == '' && startdate == '' && enddate == '') {
        event_url = '/events/nigeria/state/' + state + '/' + statename;
    }
    else {
        event_url = '/events/nigeria';
    }
    return event_url;
}
function ValidPhoneNumber(Phone, CustomValidator) {
    if (Phone.value == '') {
        CustomValidator.innerHTML = "*";
        return false;
    }
    else if (isNaN(Phone.value)) {
        CustomValidator.innerHTML = "Invalid phone number";
        return false;
    }
    else if (Phone.value.substring(0, 3) == '234' || Phone.value.substring(0, 4) == '0234' || Phone.value.substring(0, 5) == '00234') {

        CustomValidator.innerHTML = "Do not enter International code ";
        return false;
    }
    else if (Phone.value.substring(0, 1) != '0') {
        CustomValidator.innerHTML = "Phone number should be start with '0'";
        return false;
    }
    else if (Phone.value.length < 8) {
        CustomValidator.innerHTML = "Invalid phone number";
        return false;
    }
    else {
        CustomValidator.innerHTML = "";
        return true;
    }
}

function ValidPhoneNumberNotReq(Phone, CustomValidator) {
    if (Phone.value == '') {
        return true;
    }
    else if (isNaN(Phone.value)) {
        CustomValidator.innerHTML = "Invalid phone number";
        return false;
    }
    else if (Phone.value.substring(0, 3) == '234' || Phone.value.substring(0, 4) == '0234' || Phone.value.substring(0, 5) == '00234') {

        CustomValidator.innerHTML = "Do not enter International code ";
        return false;
    }
    else if (Phone.value.substring(0, 1) != '0') {
        CustomValidator.innerHTML = "Phone number should be start with '0'";
        return false;
    }
    else if (Phone.value.length < 8) {
        CustomValidator.innerHTML = "Invalid phone number";
        return false;
    }
    else {
        CustomValidator.innerHTML = "";
        return true;
    }
}
function showModal(popUpID) {
    //Get the A tag
    var id = popUpID;
    //Get the screen height and width
    var maskHeight = $(document).height();
    var maskWidth = $(window).width();

    //Set height and width to mask to fill up the whole screen
    $('#mask').css({ 'width': maskWidth, 'height': maskHeight+175 });

    //transition effect		
    $('#mask').fadeIn(1000);
    $('#mask').fadeTo("slow", 0.8);

    //Get the window height and width
    var winH = $(window).height();
    var winW = $(window).width();

    //Set the popup window to center
    $(id).css('top', winH / 2 - $(id).height() / 2);
    $(id).css('left', winW / 2 - $(id).width() / 2);

    //transition effect
    $(id).fadeIn(2000);

}

function ValidPhoneNumberOrEmail(Phone, CustomValidator) {
    if (Phone.value == '') {
        CustomValidator.innerHTML = "*";
        return false;
    }
    if (Phone.value.indexOf('@') == -1) {
        return ValidPhoneNumber(Phone, CustomValidator);
    }
    else {
        return ValidEmail(Phone, CustomValidator);
    }
}

function ValidEmail(Email, CustomValidator) {
    var emailReg = /^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/;
    if (!emailReg.test(Email.value)) {
        CustomValidator.innerHTML = "Invalid email";
        return false;
    }
    CustomValidator.innerHTML = "";
    return true;
}

function ValidEmailID(Email) {
    var emailReg = /^[a-zA-Z][\w\.-]*[a-zA-Z0-9]@[a-zA-Z0-9][\w\.-]*[a-zA-Z0-9]\.[a-zA-Z][a-zA-Z\.]*[a-zA-Z]$/;
    if (!emailReg.test(Email)) {
        return false;
    }
    return true;
}

function ValidPhoneNumberForBusinessRegister(Phone, CustomValidator) {
    if (Phone.value == '') {
        CustomValidator.innerHTML = "*";
        return false;
    }
    else if (isNaN(Phone.value)) {
    CustomValidator.innerHTML = "<br/>Invalid phone number";
        return false;
    }
    else if (Phone.value.substring(0, 3) == '234' || Phone.value.substring(0, 4) == '0234' || Phone.value.substring(0, 5) == '00234') {

    CustomValidator.innerHTML = "<br/>Do not enter International code ";
        return false;
    }
    else if (Phone.value.substring(0, 1) != '0') {
    CustomValidator.innerHTML = "<br/>Phone number should be start with '0'";
        return false;
    }
    else if (Phone.value.length < 9) {
    CustomValidator.innerHTML = "<br/>Phone number should be 11 digit or 8 digit";
        return false;
    }
    else if (Phone.value.length > 11) {
    CustomValidator.innerHTML = "<br/>Phone number should be 11 digit or 8 digit";
        return false;
    }
    else if ((Phone.value.length > 9) && (Phone.value.length < 11 )) {
    CustomValidator.innerHTML = "<br/>Phone number should be 11 digit or 8 digit";
        return false;
    }
    else {
        CustomValidator.innerHTML = "";
        return true;
    }
}
