var form_submitted = false;
function SubmitForm(){
    if (form_submitted){alert ( "Your request has already been submitted. Please wait..." );
        return false;
    }else{
        form_submitted = true;
        return true;
    };
};

function isValidEmail(str) {
    var iPos = str.indexOf("@");
    if (iPos > 0){
        if (str.lastIndexOf(".") > iPos){
            return true;
        };
    };
};

function checkField(id,colorid,len){
    var cntrl = document.getElementById(id);
    var ccntrl = document.getElementById(colorid);
    if (cntrl){
        if (cntrl.value == ""){
            ccntrl.style.color = 'red';
            return 1;
        }else{
            if (len != null){
                if (cntrl.value.length >= parseInt(len)){
                    ccntrl.style.color = '';
                    return 0;
                }else{
                    ccntrl.style.color = 'red';
                    return 1;
                };
            }else{
                ccntrl.style.color = '';
                return 0;
            };
        }; 
    }else{
        return 0; 
    };
};

function autoMask(field, event, sMask) {
    var KeyCode = getKeyCode(event);
    var KeyTyped = String.fromCharCode(KeyCode);
    var targ = getTarget(event);
    var isValid = false;
    keyCount = targ.value.length;
    if (KeyCode < 32){
        return true;
    };
    if(keyCount == sMask.length){
        return false;
    };
    if ((sMask.charAt(keyCount) == '#') && isNumeric(KeyTyped)){
        isValid = true;
    }else if ((sMask.charAt(keyCount) == 'A') && isAlpha(KeyTyped)){
        isValid = true;
    };
    if ((sMask.charAt(keyCount+1) != '#') && (sMask.charAt(keyCount+1) != 'A' ) && isValid){
        field.value = field.value + KeyTyped + sMask.charAt(keyCount+1);
        return false;
    }else if (isValid){
        return true;
    };
    if (sMask.charAt(keyCount) == '*'){
        return true;
    }; 
    if ((sMask.charAt(keyCount+1) == '?') ){
        field.value = field.value + KeyTyped + sMask.charAt(keyCount+1);
        return true;
    };
    return false;
};

function getTarget(e) { 
    if (e.srcElement) {
        return e.srcElement; 
    }; 
    if (e.target) {
        return e.target; 
    };
};

function getKeyCode(e) {
    if (e.srcElement) { 
        return e.keyCode
    };
    if (e.target) { 
        return e.which
    };
}; 

function isNumeric(c){
    var sNumbers = "01234567890";
    if (sNumbers.indexOf(c) == -1){
        return false;
    }else {
        return true;
    };
};

function isAlpha(c){
    var lCode = c.charCodeAt(0);
    if (lCode >= 65 && lCode <= 122 ){
        return true; 
    }else{
        return false;
    };
};

function isPunct(c){
    var lCode = c.charCodeAt(0);
    if (lCode >= 32 && lCode <= 47 ){
        return true; 
    }else{
        return false;
    };
};

function createCookie(name,value,days,mins){
    var now = new Date();
    if (days != 0){
        now.setTime(now.getTime()+(days*24*60*60*1000));
        var expires = "; expires="+now.toGMTString();
    }; 
    if (mins != 0){
        var minutes = now.getMinutes();
        minutes = minutes + mins;
        now.setMinutes(minutes);
        var expires = "; expires="+now.toGMTString();
    };
    if (mins == 0 && days == 0){
        var expires = "";
    };
    document.cookie = name+"="+value+expires+"; path=/";
};

function readCookie(name){
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++){
        var c = ca[i];
        while (c.charAt(0)==' ') 
            c = c.substring(1,c.length);
        if (c.indexOf(nameEQ) == 0) 
            return c.substring(nameEQ.length,c.length);
    };
    return null;
};

function eraseCookie(name){
    createCookie(name,"",0,0);
};