// JavaScript Document

ns4=(document.layers)?1:0;
ie4=(document.all)?1:0;

/*
 *  Made redirect
 * @param type =>  'select' | 'url'
 * @param param1 => element_id | url_to_redirect
 */

function redirect( type, param1) {
    var url = '';
    switch (type) {
            // redirect by select onChange
        case 'select':
            select_name = document.getElementById(param1);
            //select_name = eval(param1 + "." + param2);
            url = select_name.options[select_name.selectedIndex].value;
            break;

            // redirect by URL
        case 'url':
        default:
            url = param1;
    }

    if(url!='') {
        location.href = url;
    }

    return false;
}

function _regexp(val, regexp){
    //var re = new RegExp(regexp, "i");
    var re = new RegExp(regexp);
    alert(re);
    if (re.exec(val)) {
        return true;
    }
    return false;
}


function validation( arrValidationObjects ){
    err_msg="";

    for(i=0; i< arrValidationObjects.length; i++){
        element = document.getElementById( arrValidationObjects[i]["id"] );
        switch( arrValidationObjects[i]["rule"] ) {
            case 'is_date':
                if(element.value.length > 0) {
                    //date_format = 'dd.mm.YY';
                    var re = /^((0?[1-9])|([1-2][0-9])|(3[0-1]))[\s\.\/\-]+((0?[1-9])|(1[0-2]))[\s\.\/\-](19|20)(\d{2})$/
                    //var re = /^(\d{1,2})[\s\.\/\-]+(\d{1,2})[\s\.\/\-](19|20)(\d{2})$/
                    if(!re.exec(element.value)) {
                        err_msg = err_msg + "Das Feld \"" + arrValidationObjects[i]["message"] + "\" hat ein falsches Format.\n";
                    }
                }
                break;

            case 'is_number':
                if(element.type=="text"){
                    if(element.value.length > 0) {
                        var re = /^(\d*)$/
                        if(arrValidationObjects[i]["additional"]!=undefined) {
                            re = arrValidationObjects[i]["additional"];
                        }
                        if(!re.exec(element.value)) {
                            err_msg = err_msg + "Das Feld \"" + arrValidationObjects[i]["message"] + "\" hat ein falsches Format.\n";
                        }
                    }
                }
                break;

            case 'is_require':
            default:
                if(element.type=="text"){
                    if(element.value.length < 1)
                        err_msg = err_msg + "Das Feld \"" + arrValidationObjects[i]["message"] + "\" darf nicht leer sein.\n";
                }
                else if(element.type=="select-one"){
                    if(element.selectedIndex==0 || element.options[element.selectedIndex].value == '')
                        err_msg = err_msg + "Das Feld \"" + arrValidationObjects[i]["message"] + "\" darf nicht leer sein.\n";
                }
                else if(element.type=="checkbox"){
                    if(element.checked==false)
                        err_msg = err_msg + "Das Feld \"" + arrValidationObjects[i]["message"] + "\" darf nicht leer sein.\n";
                }
        }
    }

    if(err_msg.length>1){
        alert("Bitte überprüfen Sie Ihre Eingaben:\n\n"+err_msg);
        return false;
    }

    return true;
}


function set_next_wizard_page(page) {
    input = document.getElementById('next_wizard_page');
    input.value = page;
    call_validation();
}


function activate(manager, aFields, is_active) {
    manager = document.getElementById(manager);
    disabled = (is_active == undefined) ? 1 : is_active;
    if(manager.checked){
        disabled = 1 - disabled;
    }
    for(i=0;i<aFields.length;i++) {
        field = document.getElementById(aFields[i]);
        field.disabled = disabled;
    }
}

function checkRegistrationForm(err_msg1,err_msg2,err_msg3,err_msg4) {
  xoff=false;

  if(xoff) xoff = (((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) >= 3 )) || ((navigator.appName == "Microsoft Internet Explorer") && (parseInt(navigator.appVersion) >= 4)));
  with(document.forms.frm_registration){
    err_msg="";
    if(login.value.length<1)
        err_msg=err_msg+err_msg2+"\n";
    if(email.value.length<1) {
        err_msg=err_msg+err_msg3+"\n";
    }
    else if ((email.value.indexOf("@")==-1)||(email.value.indexOf(".")==-1)) {
        err_msg=err_msg+err_msg4+"\n";
    }
  }
  if((err_msg.length>1)&&(!xoff)){
    alert(err_msg1 + "\n\n"+err_msg);
    return false;
  }

  return true;
}