function fake_click(target_id) {
    //var obj = document.createEvent('MouseEvents');
    //obj.initEvent('click', true, true);
    //document.getElementById(target_id).dispatchEvent(obj);
    
    var el = document.getElementById(target_id);
    el.checked = !el.checked;
    if (document.getElementById(target_id).onclick) {
        document.getElementById(target_id).onclick();
    }
}

function disable_inputs(type, name, state) {
    var els = document.getElementsByTagName(type);
    if (state == true) {
        var color = '#ccc';
        var visibility = 'none';
        var border = '#999';
    } else {
        var color = '';
        var visibility = ''; //'block';
        var border = '';
    }
    for (var i in els) {
        if (els[i].name && els[i].name.indexOf(name) >= 0) {
            els[i].style.backgroundColor = color;
            els[i].style.borderColor = border;
            els[i].disabled = state;
            var error_name = ('error_for_' + els[i].name).replace('[','_').replace(']','');
            var error_display = document.getElementById(error_name);
            if (error_display) {
                error_display.style.display = visibility;
            }
        }
    }
}

function clean_phone(current) {
    current.value = current.value.replace('-','').replace(' ','');
}

function next_if_full(current, next_name, size) {
    if (current.oldValue == current.value) return;
    current.oldValue = current.value;
    
    if (current.value.length >= size) {
        document.getElementsByName(next_name)[0].focus();
    }
}
