function preloadImg() {
    if(document.images) {
        arr= new Array(preloadImg.arguments.length);
        for (i=0;i<preloadImg.arguments.length;i++){
            arr[i] = new Image; arr[i].src = "images/"+preloadImg.arguments[i];
        }
    }
}
function overImg() {
    if(document.images) {
        eval("document."+overImg.arguments[0]+".src=('images/"+overImg.arguments[1]+"')");
    }
}

function show(val) {
    for (var i=1; i<20; i++) {
        id=document.getElementById('d'+i);
        if (id==null) continue;
        id.style.display ='none';
        if(i==val) {
            id.style.display ='';
        }
    }
}
function hide(val) {
    for (var i=1; i<20; i++) {
        id=document.getElementById('d'+i);
        if (id==null) continue;
        id.style.display ='none';

    }
}

function orderPlan(categoryID, plan_id) {
    document.location.href = "https://hostsupreme.co.uk/secure/?categoryID=" + categoryID + "&planID=" + plan_id;
}

/**
* Reference: Sandeep V. Tamhankar (stamhankar@hotmail.com),
* http://javascript.internet.com
*/
function checkEmail(emailStr) {
    if (emailStr.length == 0) {
        return true;
    }
    var emailPat=/^(.+)@(.+)$/;
    var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]";
    var validChars="\[^\\s" + specialChars + "\]";
    var quotedUser="(\"[^\"]*\")";
    var ipDomainPat=/^(\d{1,3})[.](\d{1,3})[.](\d{1,3})[.](\d{1,3})$/;
    var atom=validChars + '+';
    var word="(" + atom + "|" + quotedUser + ")";
    var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
    var domainPat=new RegExp("^" + atom + "(\\." + atom + ")*$");
    var matchArray=emailStr.match(emailPat);
    if (matchArray == null) {
        return false;
    }
    var user=matchArray[1];
    var domain=matchArray[2];
    if (user.match(userPat) == null) {
        return false;
    }
    var IPArray = domain.match(ipDomainPat);
    if (IPArray != null) {
        for (var i = 1; i <= 4; i++) {
            if (IPArray[i] > 255) {
                return false;
            }
        }
        return true;
    }
    var domainArray=domain.match(domainPat);
    if (domainArray == null) {
        return false;
    }
    var atomPat = new RegExp(atom, "g");
    var domArr = domain.match(atomPat);
    var len = domArr.length;
    if (domArr[domArr.length-1].length < 2 || domArr[domArr.length-1].length > 4) {
        return false;
    }
    if (len < 2) {
        return false;
    }
    return true;
}

function trim(st) {
    var len = st.length
    var begin = 0, end = len - 1;

    while (st.charAt(begin) == " " && begin < len) {
        begin++;
    }

    while (st.charAt(end) == " " && begin < end) {
        end--;
    }

    return st.substring(begin, end + 1);
}

function removeOptionByValue(selectTag, optionValue) {
    if (selectTag.options.length < 1)
    return;

    var idx = -1;

    for(i=0;i<selectTag.options.length;i++) {
        if (selectTag.options[i].value == optionValue) {
            idx = i;
            break;
        }
    }

    if (idx != -1) {
        removeOption(selectTag, idx);
    }
}

function removeOption(selectTag, index) {
    if (index < 0 || index > selectTag.options.length)
    return;

    for(i=index;i<selectTag.options.length - 1;i++) {
        var newOption = new Option (selectTag.options[i + 1].text, selectTag.options[i + 1].value);
        newOption.selected = selectTag.options[i + 1].selected;
        selectTag.options[i] = newOption;
    }

    selectTag.options.length--;
}

function hasSelectOptionValue(selectTag, optionValue) {
    for(i=0;i<selectTag.options.length;i++) {
        if (selectTag.options[i].value == optionValue) {
            return true;
        }
    }

    return false;
}

function setSelectIndexByValue(objSelect, value){
    summOptions = objSelect.options;

    for (i=0; i<summOptions.length; i++){
        if (summOptions[i].value == value) {
            summOptions.selectedIndex=i;
            break;
        }
    }
}

function checkRequiredFields(fields) {
    for(var i=0;i<fields.length;i++) {
        fields[i]['obj'].value = trim(fields[i]['obj'].value);
        
        if (fields[i]['obj'].value.length==0) {
            alert("Error! Please provide your " + fields[i]['caption'] + "!");
            return false;
        }
    }
    
    return true;
}

