function form_submit_all(form,action,param,param2,param3)    
{   
  if (action==null) action="";
  if (param==null) param="";
  if (param2==null) param2="";
  if (param3==null) param3="";
  if (form > '') {
    document.forms[form].ACTION.value=action;
    document.forms[form].PARAM.value=param;
    document.forms[form].PARAM2.value=param2;
    document.forms[form].PARAM3.value=param3;
    document.forms[form].submit();
  }
}
//=======================================================================================
function toggleBlock(qid,zid) {
  //alert(zid);
  if (document.getElementById(zid)) {
    //alert('drin');
    var ele = document.getElementById(zid);
    var disp_alt = ele.style.display;
    var disp_neu = ( disp_alt == 'none') ? 'block' : 'none';
    ele.style.display = disp_neu;
    if (qid > '' && document.getElementById(qid)) {
      ele = document.getElementById(qid);
      ele.innerHTML = ( disp_neu == 'none') ? '+' : '-';
    }
  }
}
//=======================================================================================
function toggleElement(show,hide) {
  //alert(show);
  if (document.getElementById(show)) {
    //alert('drin');
    var ele = document.getElementById(show);
    ele.style.display = 'block';
  }
  elements = hide.split(',');
  if (elements.length > 0) {
   for (i=0;i<elements.length;i++) {
     if (document.getElementById(elements[i])) {
       //alert('drin');
       var ele = document.getElementById(elements[i]);
       ele.style.display = 'none';
     }
   } 
  }   
}
//=======================================================================================
function toggleStyle(aktiv,inaktiv) {
  //alert(show);
  if (document.getElementById(aktiv)) {
    //alert('drin');
    var ele = document.getElementById(aktiv);
    ele.className = 'aktiv';
  }
  elements = inaktiv.split(',');
  if (elements.length > 0) {
   for (i=0;i<elements.length;i++) {
     if (document.getElementById(elements[i])) {
       //alert('drin');
       var ele = document.getElementById(elements[i]);
       ele.className = 'inaktiv';
     }
   } 
  }   
}
//=======================================================================================
function makeBold(bold,normal) {
  if (document.getElementById(bold)) {
    var ele = document.getElementById(bold);
    ele.style.fontWeight = 'bold';
    ele.style.textDecoration = 'none';      
  }
  elements = normal.split(',');
  if (elements.length > 0) {
   for (i=0;i<elements.length;i++) {
     if (document.getElementById(elements[i])) {
       var ele = document.getElementById(elements[i]);
       ele.style.fontWeight = 'normal';
       ele.style.textDecoration = 'underline';  
     }
   }
  }
}
//=======================================================================================
function setBranche(cb_name) {
  var form = document.forms["bdb_branche"];
  var cap = '';
  var ids = '';
  var limit = 0;
  for ( i = 0; i < form.length; i++) {
    if (form.elements[i].type == 'checkbox') {
      if (form.elements[i].checked) { 
        limit++;
        if (limit > 3 ) {
          form.elements[cb_name].checked = false;
          alert("Es können maximal 3 Branchen ausgewählt werden.");
        }
      } 
    }
  }
  limit = 0;
  for ( i = 0; i < form.length; i++) {
    if (form.elements[i].type == 'checkbox') {
      if (form.elements[i].checked) {
        limit++;
        if (limit <= 3) {
          if (cap.length > 0 ) {
            cap += '\n';
            ids += ',';
          }
          cap += form.elements[i].name;
          ids += form.elements[i].value;
        } /*else {
          alert("Es können maximal 3 Branchen ausgewählt werden.")
          form.elements[i].checked = false;
        }*/
      }
    }
  }
  if (cap) {
    opener.document.branchenbuch.branche_desc.readonly=false;
    opener.document.branchenbuch.branche_desc.value = cap;
    opener.document.branchenbuch.branche_desc.readonly=true;
    opener.document.branchenbuch.Branche.value = ids;
  }
  else {
    opener.document.branchenbuch.branche_desc.readonly=false;
    opener.document.branchenbuch.branche_desc.value = '';
    opener.document.branchenbuch.branche_desc.readonly=true;
    opener.document.branchenbuch.Branche.value = '';
  }
  //opener.document.branchenbuch.branche_id.value+=id;
}
//=======================================================================================
function bdb_submit(next,action,back) {
if (back != 1) back = 0;
  check = 1;
  part = document.branchenbuch.part.value;
  //alert(part);
  if (part > '') check = bdb_edit_form_check(part);
 
  if (check > 0 || back == 1) {
    document.branchenbuch.part.value=next;
    document.branchenbuch.ACTION.value=action;
    document.branchenbuch.submit();
  }
}
//=======================================================================================
function bdb_priv_submit(next,action) {
  var meldung = '';
  var check = 1;
  var form = document.branchenbuch;
  
  if(form.EMail.value > '') {
    reg = /[a-z0-9_-]+(\.[a-z0-9_-]+)*@([0-9a-z][0-9a-z-]*[0-9a-z]\.)+([a-z]{2,4}|museum)/i;
    if(!form.EMail.value.match(reg)) {
      meldung += "Bitte geben Sie eine gültige E-Mail Adresse an.<br>";
      check = 0;
    }        
  }  
  if (check > 0) {
    document.branchenbuch.part.value=next;
    document.branchenbuch.ACTION.value=action;
    //alert(document.branchenbuch.ACTION.value);
    document.branchenbuch.submit();
  } else if (meldung > '') {
    document.getElementById("msg").innerHTML = meldung;
    document.getElementById("msg").style.display = "block";
   }      
}
//=======================================================================================
function bdb_form_submit(action,param,param2,param3,param4) {
  if (action == '') action = '';
  if (param == '') param = '';
  if (param2 == '') param2 = '';
  if (param3 == '') param3 = '';
  if (param4 == '') param4 = '';
  document.branchenbuch.ACTION.value=action;
  document.branchenbuch.PARAM.value=param;
  document.branchenbuch.PARAM2.value=param2;
  document.branchenbuch.PARAM3.value=param3;
  document.branchenbuch.PARAM4.value=param4;

  document.branchenbuch.submit();
}
//=======================================================================================
function bdb_submit_index(action,branche) {
  if (action == '') action = '';
  if (branche == '') branche = '';
  document.branchenbuch.ACTION.value=action;
  document.branchenbuch.branche.value=branche;
  document.branchenbuch.startpage.value = "index";
  document.branchenbuch.submit();
}
//=======================================================================================
function bdb_upload_submit(action) {
  if (action == '') action = '';
  document.upload.ACTION.value=action;
  document.getElementById('wait_ani').style.display = 'block';
  document.upload.submit();
}
//=======================================================================================
function submit_routen_form(neu,alt) {
  form = document.branchenbuch;
  form.action = neu;
  form.target = "_blank";
  form.submit();
  form.action = alt;
  form.target = "_self";
}
//=======================================================================================
function BranchenPopup() {
  branchen = document.branchenbuch.Branche.value;
  //window.open('/msu_yellow/popup/pop_bdb_branche.php?id='+branchen+'','Branchenauswahl', 'resizable=no,scrollbars=no,width=300,height=475,left=100,top=200');
  window.open('/popup/pop_bdb_branche.php?id='+branchen+'','Branchenauswahl', 'resizable=no,scrollbars=no,width=300,height=475,left=100,top=200');
}
//=======================================================================================
function PrintPopup(wert) {
  if (wert == 'detail') {
    id = document.branchenbuch.Id.value;
    tab = document.branchenbuch.PARAM2.value; 
    tabs = document.branchenbuch.PARAM3.value; 
    window.open('/no/branchenbuch/pop_bdb_print.html?id='+id+'&part='+wert+'&PARAM3='+tabs+'&PARAM2='+tab+'&mode=print','Druckansicht', 'resizable=no,scrollbars=yes,width=545,height=500,left=1,top=1');
  } else if (wert == 'list') { 
    print_id = document.getElementById('print_id').value;
    window.open('/no/branchenbuch/pop_bdb_print.html?part='+wert+'&print_id='+print_id,'Druckansicht', 'resizable=no,scrollbars=yes,width=545,height=600,left=1,top=1');
  }
}
//=======================================================================================
function UploadPopup(cat,field) {
  id = document.branchenbuch.Id.value;
  file = document.getElementById(field).value;
  fcms_admin = "http://admin.mainecho.fidion.de/";
//  window.open(fcms_admin+'/msu_yellow/popup/pop_bdb_upload.php?id='+id+'&cat='+cat+'&FILE='+file,'bdb_Upload', 'resizable=yes,scrollbars=yes,width=400,height=450,left=100,top=200');
  window.open(fcms_admin+'/popup/pop_bdb_upload.php?id='+id+'&cat='+cat+'&FILE='+file,'bdb_Upload', 'resizable=yes,scrollbars=yes,width=400,height=450,left=100,top=200');
}
//=======================================================================================
function PDF_Popup() {
  window.open('/no/branchenbuch/pop_pdf.html', 'PDF');
}
//=======================================================================================
function HP_Popup(id,name) {
  window.open('/no/branchenbuch/pop_bdb_homepage.html?id='+id+'&name='+escape(name),'Homepage_eintragen', 'resizable=no,scrollbars=yes,width=525,height=225,left=100,top=200');
}
//=======================================================================================
function image_Popup(name,size,cat,w,h,mode) {
  if (mode == '') mode = "public";
  //window.open('/no/branchenbuch/pop_bdb_image.html?name='+escape(name)+'&size='+size,'BDB: '+name, 'resizable=no,scrollbars=yes,width='+w+',height='+h+',left=1,top=1');
  //window.open('/no/branchenbuch/bdb_images.php?img='+name+'&cat='+cat+'&size='+size+'&mode='+mode,'BDB','resizable=no,scrollbars=yes,width='+w+',height='+h+',left=1,top=1');
  window.open('/images/bdb/'+mode+'/'+cat+'/'+size+'/'+name,'BDB','resizable=no,scrollbars=yes,width='+w+',height='+h+',left=1,top=1');
}
//=======================================================================================
function check_mail_form(id) {
  var check = 1;
  var text = '';
  var info = document.getElementById('msg');
  var ele = document.getElementById("abs_name"); 
  if (ele.value == '') {
    check = 0;
    text = "Bitte geben Sie Ihren Namen im Feld Abs. Name an.<br>";  
  }
  var ele = document.getElementById('abs_email').value;  
  if (checkEMail(ele) == 0) {
    check = 0;
    text = text+"Bitte geben Sie Ihre E-Mail Adresse im Feld Abs. E-Mail an.<br>";  
  }
  var ele = document.getElementById('betreff');  
  if (ele.value == '') {
    check = 0;
    text = text+"Bitte geben Sie einen Betreff im Feld Betreff an.<br>";  
  }
  var ele = document.getElementById('text');  
  if (ele.value == '') {
    check = 0;
    text = text+"Bitte geben Sie Ihren E-Mail Text im Feld Text an.<br>";  
  }
  var ele = document.getElementById('code');  
  if (ele.value.length < 4) {
    check = 0;
    text = text+"Bitte geben Sie den eingeblendeten Code ein.<br>";  
  }
  if (check > 0) {
    bdb_form_submit('mail_form',id,'send_mail');
  } else {
    info.style.display = 'block';
    info.innerHTML = text;
  }
}
//=======================================================================================
function check_detail_search_form() {
  var check = 1;
  var text = '';
  var info = document.getElementById('msg');
  var ele1 = document.getElementById("name");   
  var ele2 = document.getElementById("branche");   
  if (ele1.value == '' && ele2.value == '') {
    check = 0;
    text = "Bitte geben Sie einen Namen oder eine Branche an.<br>";  
  }
  var ele1 = document.getElementById("strasse");   
  var ele2 = document.getElementById("nr");   
  if (ele1.value == '' && ele2.value > '') {
    check = 0;
    text = "Bitte geben Sie eine Strasse an.<br>";  
  }
  var ele1 = document.getElementById("plz");   
  var ele2 = document.getElementById("ort");   
  if (ele1.value == '' && ele2.value == '') {
    check = 0;
    text = text+"Bitte geben Sie mind. 3 Stellen der PLZ oder einen Ort an.<br>";  
  }
  if (ele1.value > '') {
    erg = ele1.value.match(/^[0-9]{3,5}$/);
    if (!erg) {
      check = 0;
      text = text+"Bitte geben Sie eine gültige Postleitzahl an.<br>";  
    }
  }
  if (check > 0) {
    document.branchenbuch.startpage.value = "detail";
    form_submit_all('branchenbuch','overview');
  } else {
    info.style.display = 'block';
    info.innerHTML = text;
  } 
}
//=======================================================================================
function checkEMail(wert) {
  var check_ok = 1;
  var email = wert;
  //alert ("email: "+email);
  while ( email.indexOf(' ') >= 0) { email = email.replace(/ /,''); }
  if (email == '') {
    //alert("null");
    check_ok = 0;
    return check_ok;
  }
  email = email.toLowerCase();
  if ( email.indexOf('ß') >= 0) { return 0; }
  if ( email.indexOf('ä') >= 0) { return 0; }
  if ( email.indexOf('ö') >= 0) { return 0; }
  if ( email.indexOf('ü') >= 0) { return 0; }
  if ( email.indexOf(':') >= 0) { return 0; }
  if ( email.indexOf(',') >= 0) { return 0; }
  if ( email.indexOf(';') >= 0) { return 0; }
  //var errmsg = "Die EMail-Adresse ist nicht korrekt!";
  var laenge  = email.length;
  if (laenge < 7) {
    check_ok = 0;
    return check_ok;
  }
  var pos_at  = email.indexOf('\@');
  var pos_at2 = email.lastIndexOf('\@');
  var pos_dot = email.lastIndexOf('.');
  // alert(pos_at + ' ' + pos_dot + ' ' + laenge);
  if ( pos_at < 0 || pos_dot < 0 || pos_at != pos_at2 || pos_at > pos_dot || pos_dot - pos_at < 2 || pos_dot > laenge - 3 || pos_dot < laenge - 7) {
    check_ok = 0;
    return check_ok;
  }
  //if (wert != email) formset(name,email);
  return check_ok;
}
//=======================================================================================
function bdb_edit_form_check(part) {
  var meldung = '';
  var check = 1;
  var form = document.branchenbuch;
  switch (part) {
    case '0': if(form.n1_Name.value.length < 3) {
                meldung += "Das Feld Name muss befüllt sein.<br>"; 
                check = 0;
              } 
              if(form.Gemeindename.value.length < 3) {
                meldung += "Das Feld Ort muss befüllt sein.<br>";
                check = 0;
              }
              if(form.Strasse.value.length < 3) {
                meldung += "Das Feld Strasse muss befüllt sein.<br>";
                check = 0;
              }       
              if(form.Hausnummernzusatz.value > '') {
                if(form.Hausnummer.value.length == '') {
                  meldung += "Das Feld Hausnummernzusatz kann nur in Verbindung mit dem Feld Hausnummer befüllt werden.<br>";
                  check = 0;
                }
              }
              if(!form.PLZ.value.match(/^[0-9]{5}$/)) {
                meldung += "Das Feld Postleitzahl muss befüllt sein.<br>";
                check = 0;
              }
              if(form.Rufnrzusatz_0[form.Rufnrzusatz_0.selectedIndex].text < 3) {
                meldung += "Das Feld Rufnummerzusatz muss befüllt sein (Tel, Fax).<br>";
                check = 0;
              }
              if(!form.Ortsnetz_0.value.match(/^[0-9]{2,15}$/) || !form.Rufnr_0.value.match(/^[0-9]{2,15}-?[0-9]{1,15}$/)) {
                meldung += "Die Felder Vorwahl/Rufnr.  müssen befüllt sein.<br>";
                check = 0;
              }                        
              break;
    case '1': if(form.branche_desc.value.length < 3) {
                meldung += "Bitte wählen Sie eine Branche aus.<br>";
                check = 0;
              }
              //reg = /[\.a-z0-9_-]+@[\.a-z0-9-]+/i;
              reg = /[a-z0-9_-]+(\.[a-z0-9_-]+)*@([0-9a-z][0-9a-z-]*[0-9a-z]\.)+([a-z]{2,4}|museum)/i;
              if(!form.EMail.value.match(reg)) {
                meldung += "Das Feld E-Mail muss befüllt sein.<br>";
                check = 0;
              }
              if(form.Web.value.length > 0 && form.Web.value.substring(0,7) == "http://") {
                form.Web.value = form.Web.value.substring(7,form.Web.value.length);
              }              
              break;
    case '3': if(form.kontoinhaber.value.length < 3) {
                meldung += "Bitte geben Sie den Kontoinhaber an.<br>";
                check = 0;
              }
              if(form.kreditinst.value.length < 3) {
                meldung += "Bitte geben Sie ihr Kreditinstitut an.<br>";
                check = 0;
              }
              if(form.blz.value.length < 8) {
                meldung += "Bitte geben Sie ihre Bankleitzahl an.<br>";
                check = 0;
              }
              if(form.kto.value.length < 3) {
                meldung += "Bitte geben Sie ihre Kontonummer an.<br>";
                check = 0;
              }
              if(form.agb.checked == false) {
                meldung += "Bitte akzeptieren Sie die AGB, um fortzufahren.<br>";
                check = 0;
              }
  }
   if (meldung > '') {
    document.getElementById("msg").innerHTML = meldung;
    document.getElementById("msg").style.display = "block";
   }
  return check
}
//=======================================================================================
function delete_nrblock(part) {
  if (part > 0 && confirm("Sind Sie sicher, dass Sie den gewählten Nummernblock löschen wollen?")) {
    if (document.getElementsByName("Komplex_"+part)) {
      id = document.getElementsByName("Komplex_"+part)[0].value; 
      if (id > '') {
        if (document.getElementsByName("delete_id")[0].value > '')
          document.getElementsByName("delete_id")[0].value = document.getElementsByName("delete_id")[0].value+","+id;
        else
          document.getElementsByName("delete_id")[0].value = id;
      }
      document.getElementsByName("delete")[0].value = '1';
      document.getElementsByName("Komplex_"+part)[0].value = '';
      document.getElementsByName("Abteilung_"+part)[0].value = '';
      document.getElementsByName("Rufnrzusatz_"+part)[0].value = '';
      document.getElementsByName("Ortsnetz_"+part)[0].value = '';
      document.getElementsByName("Rufnr_"+part)[0].value = '';
      
      document.branchenbuch.submit(); 
    }
  }
}
//=======================================================================================
function f_portrait(action) {  
  var area = document.getElementById('port_eingabe');
  if (action == 'show') {
    document.getElementById('port_text').value = document.getElementById('portrait').value;
    area.style.display = 'block';
    document.getElementById('port_text').focus();
  } else if (action == 'hide') {
    document.getElementById('portrait').value = document.getElementById('port_text').value;
    area.style.display = 'none';
  }
}
//=======================================================================================
function popup_f_portrait() {
  //value = escape(document.branchenbuch.portrait.value);
  //alert("-"+document.forms['branchenbuch'].elements['portrait'].value+"-");
  //window.open('/no/branchenbuch/bdb_fck_js.php?value='+value+'','Firmenportrait', 'resizable=yes,scrollbars=no,width=650,height=530');
  //window.open('/msu_yellow/popup/bdb_fck.php?feldname=portrait','Firmenportrait', 'resizable=yes,scrollbars=no,width=650,height=530');
  window.open('/popup/bdb_fck.php?feldname=portrait','Firmenportrait', 'resizable=yes,scrollbars=no,width=650,height=530');
}

//=======================================================================================
function toggle_index(cap) { // wird aktuell nicht verwendet.
  obj=document.getElementsByTagName("div");
  for (i=0;i<obj.length;i++) {
    if (obj[i].id.substr(0,4) == "cap_") {
      if (obj[i].id == ("cap_"+cap)) {
        obj[i].style.display = "block";
        document.getElementsByName('CAP')[0].value = cap;
      } else {
        obj[i].style.display = "none";
      }
    }
  }
}
//=======================================================================================
function anzeige_check() {
  if (document.getElementsByName("anz")[0].checked == false) {  
    if (confirm('Wollen Sie die Anzeige löschen?')) {
       document.getElementsByName("Anzeige_alt")[0].value = document.getElementsByName("Anzeige")[0].value;
       document.getElementsByName("Anzeige")[0].value = '';
       document.getElementById('anzeige_div').style.display = 'none';
    } else { 
       document.getElementsByName("anz")[0].checked = true;
       document.getElementById('anzeige_div').style.display = 'block';
    }
  } else {
    document.getElementById('anzeige_div').style.display = 'block';
    document.getElementsByName("Anzeige")[0].value = document.getElementsByName("Anzeige_alt")[0].value;
  }
}
//=======================================================================================
function check_tel(part) {
  //alert(part);
  part = parseInt(part);
  if (document.getElementById('Ortsnetz_'+part).value > '' && document.getElementById('Rufnr_'+part).value > '') {
    document.branchenbuch.nr_part.value=(part+1);
    document.branchenbuch.submit();
  }
}
//=======================================================================================
function anmelde_popup(file)
 {
   window.open("/bezahlpopup/"+file+"?aid=&catID=",'popup','width=520,height=600,toolbar=off,location=off,status=off,directories=off,scrollbars=1,resizeable=auto,menubar=off');
 }
//=======================================================================================
function call2call_popup(ortsnetz,rufnr,name,lk) {
  f = window.open('http://call2call.main-netz.de/call2call.php?Ortsnetz2='+ortsnetz+'&Nummer2='+rufnr+'&Name2='+name+'&LK='+lk, "Call2Call", "width=510,height=240,left=100,top=200,toolbar=off,location=off,status=off,directories=off,scrollbars=1,resizeable=no,menubar=off");
  f.focus();
}

//=======================================================================================
// BDB SUCHE
//=======================================================================================

function check_rightbar_suche() {
  if (document.forms['branchenbuch_suche'].suchbegriff.value.length > 2) {    
    document.getElementById("rightbar_msg").style.display = 'none';
    document.forms['branchenbuch_suche'].submit();
  } else {
    document.getElementById("rightbar_msg").style.display = 'block';
    document.forms['branchenbuch_suche'].suchbegriff.focus();
  }
  
}

function bdbKeyForSubmit(event,feld) {

  key=(window.event)? event.keyCode: event.which;
  //alert(key)
  if (key == 13) {
    if (feld == "suchort") {
      check_rightbar_suche();
    } else if (feld == "suchbegriff") {
      document.forms['branchenbuch_suche'].suchort.focus();
    }   
  }

}