
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
// Hauptfunktionen
//
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++




//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Funktioniert nur bei Radio/Checkboxen mit zwei Auswahlmöglichkeiten
// Funktion gibt einen Wert an das CMS
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

function suche_checkboxen(){
  var element_syntax = document.myform.elements;
  var korrekter_formname = '';
  var formfeldwert = '';
  for (var i=0; i<element_syntax.length; i++){
    if (element_syntax[i].type == "checkbox" || element_syntax[i].type == "radio"){
      if (vergleiche_mit_standardboxen(element_syntax[i].name)){
        for (var y=0; y<element_syntax[element_syntax[i].name].length; y++){
           if (element_syntax[element_syntax[i].name][y].checked == true){
              formfeldwert = formfeldwert + '1';
           }
           else{
              formfeldwert = formfeldwert + '0';
           }
        }
        // Dem Forumlarelement wird der Unterstrich entfernt um den korrekten Elementnamen zu erhalten
        korrekter_formname = element_syntax[i].name.substring(0,element_syntax[i].name.length-1);
        if (formfeldwert != '00'){
          element_syntax[korrekter_formname].value = formfeldwert;
        }
        //alert(formfeldwert);
        formfeldwert = '';
      }
    }
  }
  return true;
}



//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Checkboxen erstellen
// Funktion wird bei 'Artikel neu' benötigt
// Aufruf: schreibe_checkboxen_neu(arrayname[0], arrayname[1], ...);
// Dem Formname wird ein '_' angehangen da später das Formularelement nicht als
// Checkbox, sondern als Hidden an das CMS übergeben wird
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

function schreibe_checkboxen_neu(){
  var syntax_arguments = schreibe_checkboxen_neu.arguments;
  var formfeldart = syntax_arguments[0];
  var formfeldname = syntax_arguments[1];
  document.write('<table border="0" cellpadding="0" cellspacing="0">\n');
    for (var i=2; i<syntax_arguments.length; i++){
      document.write('<tr>\n<td valign="middle" class="volltext"><span id="volltext">'+syntax_arguments[i] + '&#160;<br></span></td>\n<td valign="middle" class="volltext"><span id="volltext"><input type='+formfeldart+' name="'+formfeldname+'_"><br></span></td>\n</tr>');
    }
  document.write('</table>\n');
  document.writeln('\n<input type=hidden name="'+formfeldname+'">');
}


//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Checkboxen erstellen für XML
// Funktion wird bei 'Artikel neu' benötigt
// Aufruf: schreibe_checkboxen_neu(arrayname[0], arrayname[1], ...);
// Dem Formname wird ein '_' angehangen da später das Formularelement nicht als
// Checkbox, sondern als Hidden an das CMS übergeben wird
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

function schreibe_checkboxen_neu_xml(){
  var syntax_arguments = schreibe_checkboxen_neu_xml.arguments;
  var formfeldart = syntax_arguments[0];
  var formfeldname = syntax_arguments[1];
  document.write('<formularfeld>\n<eingabefeld typ="auswahl" format="'+formfeldart+'" name="'+formfeldname+'_">');
    for (var i=2; i<syntax_arguments.length; i++){
      document.write('<option wert="">' + syntax_arguments[i] + '</option>\n');
    }
  document.write('</eingabefeld>\n</formularfeld>\n');
  document.writeln('<eingabefeld typ="parameter" name="'+formfeldname+'"></eingabefeld>');
}


//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Checkboxen speichern und in Zahlenstring umwandeln (gewählt=1 nichtgewählt=0)
// Funktion wird bei 'Artikel neu und Artikel bearbeiten' benötigt
// Aufruf: speicher_checkboxen('feldname', 'feldname', ...);
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


function speicher_checkboxen(){
  var element_syntax = document.myform.elements;
  var korrekter_formname = '';
  var formfeldwert = '';
  for (var i=0; i<element_syntax.length; i++){
    if (element_syntax[i].type == "checkbox" || element_syntax[i].type == "radio"){
      if (vergleiche_mit_standardboxen(element_syntax[i].name)){
        for (var y=0; y<element_syntax[element_syntax[i].name].length; y++){
           if (element_syntax[element_syntax[i].name][y].checked == true){
              formfeldwert = formfeldwert + '1';
           }
           else{
              formfeldwert = formfeldwert + '0';
           }
        }
        // Dem Forumlarelement wird der Unterstrich entfernt um den korrekten Elementnamen zu erhalten
        korrekter_formname = element_syntax[i].name.substring(0,element_syntax[i].name.length-1);
        element_syntax[korrekter_formname].value = formfeldwert;
        //alert(formfeldwert);
        formfeldwert = '';
      }
    }
  }
  return true;
}


//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Values aus Arrays ausgeben
// Funktion wird bei 'Artikel detail' benötigt
// Aufruf: gib_values_aus('formfeldart', 'formfeldwert', arrayname[0], arrayname[1], ...);
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


function gib_values_aus(){
  var syntax_arguments = gib_values_aus.arguments;
  var formfeldwert = syntax_arguments[1];
  var endwertstring = '';
  //alert(formfeldwert);
  for (var i=0; i<formfeldwert.length; i++){
      if (formfeldwert.charAt(i) == "1"){
         endwertstring = endwertstring + '' +syntax_arguments[i+2];
          if (i < formfeldwert.length-1){
            endwertstring = endwertstring + ', ';
          }
      }
  }
  if (endwertstring == ''){
    endwertstring = ' <br>';
  }
  else{
    endwertstring = endwertstring.replace(/, $/, '');
  }
  //alert(endwertstring);
  return document.writeln(endwertstring);
}


//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Values aus Arrays ausgeben
// Funktion wird bei 'Artikel detail' benötigt
// Aufruf: gib_values_aus_umbruch('formfeldart', 'formfeldwert', arrayname[0], arrayname[1], ...);
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


function gib_values_aus_umbruch(){
  var syntax_arguments = gib_values_aus_umbruch.arguments;
  var formfeldwert = syntax_arguments[1];
  var endwertstring = '';
  //alert(formfeldwert);
  for (var i=0; i<formfeldwert.length; i++){
      if (formfeldwert.charAt(i) == "1"){
         endwertstring = endwertstring + '' +syntax_arguments[i+2];
          if (i < formfeldwert.length-1){
            endwertstring = endwertstring + ',<br>';
          }
      }
  }
  if (endwertstring == ''){
    endwertstring = ' <br>';
  }
  else{
    endwertstring = endwertstring.replace(/,'<br>' $/, '<br>');
  }
  //alert(endwertstring);
  return document.writeln(endwertstring);
}


//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Checkboxen mit Zahlenstring vergleichen und korrekt vorauswählen
// Funktion wird bei 'Artikel berabeiten' benötigt
// Aufruf: schreibe_checkboxen_bearbeiten('formfeldart', 'formfeldwert', 'feldname', arrayname[0], ...);
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


function schreibe_checkboxen_bearbeiten(){
  var syntax_arguments = schreibe_checkboxen_bearbeiten.arguments;
  var formfeldart = syntax_arguments[0];
  var formfeldwert = syntax_arguments[1];
  var formfeldname = syntax_arguments[2];
  document.write('<table border="0" cellpadding="0" cellspacing="0">\n');
  for (var i=3; i<syntax_arguments.length; i++){
    if (formfeldwert.charAt(i-3) == "1"){
       document.write('<tr>\n<td valign="middle" class="volltext"><span id="volltext">'+syntax_arguments[i] + '&#160;<br></span></td>\n<td valign="middle" class="volltext"><span id="volltext"><input type='+formfeldart+' name="'+formfeldname+'_" checked><br></span></td>\n</tr>');
    }
    else{
       document.write('<tr>\n<td valign="middle" class="volltext"><span id="volltext">'+syntax_arguments[i] + '&#160;<br></span></td>\n<td valign="middle" class="volltext"><span id="volltext"><input type='+formfeldart+' name="'+formfeldname+'_"><br></span></td>\n</tr>');
    }
  }
  document.write('</table>\n');
  document.writeln('<br>\n<input type=hidden name="'+formfeldname+'">');
}



//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Funktion regelt Voreinstellung Checkboxen oder radios
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


function checkbox_voreinstellung(){
  var element_syntax = document.myform;
  var syntax_arguments = checkbox_voreinstellung.arguments;
  if (syntax_arguments.length > 1){
    var formfeldname;
    var formfeldelement;
    for (var i=0; i<syntax_arguments.length; i=i+2){
      formfeldname = syntax_arguments[i];
      formfeldelement = syntax_arguments[i+1];
      element_syntax[formfeldname][formfeldelement].checked = true;
    }
  }
}






//-----------------------------------------------------------------------------------------------------------------------







//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//
// Hilfsfunktionen
//
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Allgemeine Funktion zum Funktionsaufruf mit Array-UEbergabe.
// Aufruf: funktionsaufruf_mit_arrayuebergabe('formfeldart', 'funktionsname', arr, 'infofeldname oder infofeldwert');
// Ziel: funktionsname(formfeldart, arr[0], arr[1], ...);
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


function funktionsaufruf_mit_arrayuebergabe() {
  //alert();
  var formfeldart = funktionsaufruf_mit_arrayuebergabe.arguments[0];
  var funktionsname = funktionsaufruf_mit_arrayuebergabe.arguments[1];
  var formfeldname = funktionsaufruf_mit_arrayuebergabe.arguments[3];
  if (funktionsaufruf_mit_arrayuebergabe.arguments[4]){
    var formfeldwert = funktionsaufruf_mit_arrayuebergabe.arguments[4];
  }
  formfeldname = formfeldname.toString();
  var arr = new Array;
  arr = eval(funktionsaufruf_mit_arrayuebergabe.arguments[2]);
  if (funktionsaufruf_mit_arrayuebergabe.arguments[4]){
      var uebergabestring = '"'+formfeldwert+'"' + ', "' +formfeldname+ '"' + ', ';
  }
  else{
      var uebergabestring = '"'+formfeldname+'"' + ', ';
  }
  for (var i=0; i<arr.length; i++) {
    uebergabestring = uebergabestring + 'arr[' + i + ']';
      if (i<arr.length-1) {
      uebergabestring = uebergabestring + ', ';
      }
  }
  uebergabestring = funktionsname + '("'+formfeldart+ '", ' + uebergabestring + ')';
  eval(uebergabestring);
}



//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Funktion vergleicht zuübergebenen Checkboxnamen mit Standardboxnamen
// und gibt true oder false zurück
// Aufruf: vergleiche_mit_standardboxen('Checkboxname');
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


function vergleiche_mit_standardboxen() {
  var boxname = vergleiche_mit_standardboxen.arguments[0];
  for (var i=0; i<standardboxen.length; i++){
    if (boxname == standardboxen[i]){
      return false;
    }
  }
  return true;
}

