﻿function fVbgKarteAufruf(Verein) {
var elem;
elem=document.getElementById('VbgKarteInfo').childNodes;
for (z = 0; z <elem.length; z++) {elem[z].className='Versteckt';}

elem=document.getElementById('VbgKarteInfo_' + Verein);
elem.className='Sichtbar';
}

function EingabeHinweis(fehler, t) {
	// zeigt einen Hinweis (t) im Eingabeformular an, wenn in ein Eingabefeld gewechselt wird.
	// vom Server k&ouml;nnen Hinweise beginnend mit ! ausgegeben werden.
	// ist ein solcher Serverhinweis vorhanden, wird das ! entfernt und nur dieser 
	// Serverhinweis angezeigt.
	// Erst beim n&auml;chsten Aufruf der Funktion verschwindet dieser Serverhinweis.
	if (document.getElementById('xxHinweis').innerHTML.substr(0,1) == '!') {
		document.getElementById('xxHinweis').innerHTML=document.getElementById('xxHinweis').innerHTML.substr(1);
	}
	else {
	   document.getElementById('xxHinweis').innerHTML=  ((fehler == 0) ? 'Info: ' : 'Fehler: ')
	      + 'Wert f&uuml;r ' + t;
	}
}

function EingabeSelect(nr,erlaubteFunktionen) {
	// Doppelklick-Funktion auf der Eingabeliste
	// bringt die Werte des Satzes mit der Nummer nr in die Eingabefelder
	var TabEingabe, zeilen, spalten, zeile, spalte, FormEingabe, FormNr, zeilennr;
	var sumColSpan, wert, wert1, wert2;
	TabEingabe=document.getElementById('TabEingabe').rows;
	FormEingabe=document.forms['eingabe'];
	zeilen=TabEingabe[0].id.substr(9,3)-0; // Anzahl der Zeilen des Eingabeformulars
	spalten=TabEingabe[0].id.substr(12,3)-0; // Anzahl der Spalten des Eingabeformulars
	FormNr=0;
	for (var zeile = 0; zeile < zeilen; zeile++) {
	    zeilennr = ((nr)* zeilen + 4 + zeile);
	    spalte=0;
	    while (spalte < (TabEingabe[zeilennr].cells.length)) {
	    	  if (TabEingabe[zeilennr].cells[spalte].className != 'leer') {
	         // alert(FormEingabe[FormNr].name + '/' + FormNr);
	    	  	 wert=TabEingabe[zeilennr].cells[spalte].innerHTML;
	    	  	 if (wert.length>1) {
	    	  	 	if (wert.charCodeAt(wert.length-1)==10) wert=wert.substr(0,wert.length-1); // remove newline
	    	  	 }
	    	  	 wert1=wert.indexOf('[');
	    	  	 wert2=wert.indexOf(']',wert1+1);
	    	  	 if ((wert1>=0) && (wert2>=0)) {
	    	  	      FormEingabe[FormNr].value=wert.substr(wert1+1,wert2-wert1-1);
	    	  	 }
	    	  	 else {
	    	  	      wert=wert.replace(/&amp;/gi,'&');
	    	              FormEingabe[FormNr].value=wert;
	    	         }
	    	    FormNr=FormNr+1;
	    	  }
   	  	  spalte=spalte+1;
	    }
	}
	document.getElementById('xxLoeschen').value='Verwerfen';
	if (erlaubteFunktionen.indexOf('D')>=0) {document.getElementById('xxDelete').className='Sichtbar';}
	if (erlaubteFunktionen.indexOf('U')>=0) {document.getElementById('xxUpdate').className='Sichtbar';}
	if (document.getElementById('xxDetail1').value!='') {
		 document.getElementById('xxDetail1').className='Sichtbar';
	   }
	if (document.getElementById('xxDetail2').value!='') {
		 document.getElementById('xxDetail2').className='Sichtbar';
	   }
	if (document.getElementById('xxDetail3').value!='') {
		 document.getElementById('xxDetail3').className='Sichtbar';
	   }
	document.forms['eingabe'].elements[0].focus();
	if (document.forms['eingabe'].elements[0].type=='text') {
	   document.forms['eingabe'].elements[0].select();
	   }
}

function EingabeFiltern() {
  // wird vom Befehl "Filter" aufgerufen
	var weiter, filterbed;
  FormEingabe=document.forms['eingabe'];
 	// Filterbedingung wird f&uuml;r zuk&uuml;nftige Verwendung in das versteckte
 	// Formularelement xxFilter &uuml;bertragen
 	// Aufbau: Feldname1=Wert1&Feldname2=Wert2
  weiter=true;
	filterbed=FormEingabe['xxFix'].value;
	for (var i = 0; weiter; i++) {
  	if (FormEingabe[i].name.substr(0,2) == 'xx') {
  		weiter=false;
  	  }
  	else {
 	 	if ((FormEingabe[i].value != '') && (FormEingabe[i].name.substr(0,2) != 'yy')) {
 	 		if (filterbed != '') filterbed = filterbed + '&';
 	  		filterbed = filterbed + FormEingabe[i].name + '=' + escape(FormEingabe[i].value);
 	 	}
 		 }
	}
	if (filterbed=='') {
	 	  window.location.href=document.location.pathname + '?id=' + getPageId();
	}
	else {
     window.location.href=document.location.pathname + '?id=' + getPageId() + '&' + filterbed;
  }

}

function EingabeSatzLoeschen() {
  // wird vom Befehl "Satz l&ouml;schen" aufgerufen
	var FormEingabe;
  FormEingabe=document.forms['eingabe'];
  FormEingabe['xxBefehl'].value='Loeschen';
  FormEingabe['xxMerke'].value='';
  if (document.getElementById('xxUpdate').className!='Versteckt') {FormEingabe['xxMerke'].value='U';}
  if (document.getElementById('xxDelete').className!='Versteckt') {FormEingabe['xxMerke'].value=FormEingabe['xxMerke'].value + 'D';}
  FormEingabe.submit();
}

function EingabeSatzAendern() {
	// wird von &Auml;ndern aufgerufen
	var FormEingabe;
  FormEingabe=document.forms['eingabe'];
  FormEingabe['xxBefehl'].value='Aendern';
  FormEingabe['xxMerke'].value='';
  if (document.getElementById('xxUpdate').className!='Versteckt') {FormEingabe['xxMerke'].value='U';}
  if (document.getElementById('xxDelete').className!='Versteckt') {FormEingabe['xxMerke'].value=FormEingabe['xxMerke'].value + 'D';}
  FormEingabe.submit();
}

function EingabeSatzAufnehmen() {
	// wird von &Auml;ndern aufgerufen
	var FormEingabe;
  FormEingabe=document.forms['eingabe'];
  FormEingabe['xxBefehl'].value='Aufnehmen';
	FormEingabe.submit();
}
function EingabeAusgabe(Reportname) {
	// wird von Ausgabe aufgerufen
var FormEingabe, filterbed, sortby;
FormEingabe=document.forms['eingabe'];
filterbed=FormEingabe['xxFilter'].value;
sortby=FormEingabe['xxOrderBy'].value;
if (sortby!='') {
   if (filterbed!='') {filterbed=filterbed + '&';}
   filterbed=filterbed + '_OrderBy=' + sortby;
}
if (filterbed!='') {filterbed=filterbed + '&';}
filterbed=filterbed + '_Druckversion=J';
filterbed ='/prg/' + Reportname + '?' + filterbed;
window.location.href=filterbed;
}

function EingabeLoeschen() {
	// wird von "Verwerfen" bzw. "Felder l&ouml;schen" aufgerufen
	var weiter, FormEingabe, filter, filterbed, pos;
   FormEingabe=document.forms['eingabe'];
   weiter=true;
   for (var i = 0; weiter; i++) {
   	if (FormEingabe[i].name.substr(0,2) == 'xx') {
   		weiter=false;
   	  }
   	else {
   		FormEingabe[i].value = '';
   	  }
   }
	if (document.getElementById('xxUpdate').className == 'Sichtbar') {
      filter=document.getElementById('xxFilter').value.split('|');
      if (filter.count>0) {
    	  for (i in filter) {
     		 	filterbed=filter[i];
      		pos=filterbed.indexOf('=');
      		FormEingabe[filterbed.substr(0,pos)].value=filterbed.substr(pos+1);
      	}
      }
      document.getElementById('xxLoeschen').value = 'Felder l&ouml;schen';
	    document.getElementById('xxDelete').className='Versteckt';
	    document.getElementById('xxUpdate').className='Versteckt';
	    document.getElementById('xxDetail1').className='Versteckt';
	    document.getElementById('xxDetail2').className='Versteckt';
	    document.getElementById('xxDetail3').className='Versteckt';
	}	
}

function EingabeDblClick(feldname) {
	var erg, FormEingabe;
   FormEingabe=document.forms['eingabe'];
	erg=window.prompt('Wert f&uuml;r ' + feldname + ' eingeben:', FormEingabe[feldname].value);
	if (erg != null) {
		 FormEingabe[feldname].value=erg;
	}
}

function EingabeKombiBox(feldname) {
	var wert, FormEingabe, elem, p, liste;
  FormEingabe=document.forms['eingabe'];
	wert=FormEingabe[feldname].value;
	if (wert.substr(0,1) == '|') {
		 liste=wert.split('|');
		 for (elem in liste) {
		 	   wert=liste[elem];
      	 p=wert.indexOf('=');
      	 if (p>0) {
         	  FormEingabe[wert.substr(0,p)].value=wert.substr(p+1);
      	 	}
     }  
	}
}

function getPageId() { // returns the currentPageId
  var elem;
  elem=document.getElementById('typo3_pageId');
  if (elem) return elem.innerHTML;
  return '0';
}

function EingabeSort(ev) {
  var FormEingabe, elem, filterbedingung, p;
  FormEingabe=document.forms['eingabe'];
  elem=((ev.srcElement) ? ev.srcElement : ev.target);
  elem=elem.htmlFor;
  if (elem==undefined) {
  	 elem=ev.srcElement.outerHTML;
  	 alert(elem);
  	 p=elem.indexOf(' for="');
  	 if (p>=0) {elem=elem.substr(p+1,20);} else {alert('Geht nicht'); return;}
  	 p=elem.indexOf('"');
  	 if (p>0) {elem=elem.substr(0,p);} else {alert('Geht nicht'); return;}
  	}
  if (ev.shiftKey) {elem = elem + ' desc';}
  if (ev.ctrlKey) {FormEingabe['xxOrderBy'].value = FormEingabe['xxOrderBy'].value + ',' + elem;}
  else {FormEingabe['xxOrderBy'].value = elem ;}
//  alert('Sortierung: ' + FormEingabe['xxOrderBy'].value);
  filterbed=FormEingabe['xxFilter'].value;
  p=filterbed.indexOf('&_OrderBy=');
  if (p>=0) {filterbed=filterbed.substr(0,p);}
  p=filterbed.indexOf('_OrderBy=');
  if (p>=0) {filterbed=filterbed.substr(0,p);}
  if (filterbed!='') {filterbed=filterbed + '&';}
  filterbed=filterbed + '_OrderBy=' + FormEingabe['xxOrderBy'].value;
  window.location.href=document.location.pathname + '?id=' + getPageId() + '&' + filterbed;

}
function Saetzelesen(nr) {
	var erg, FormEingabe;
  FormEingabe=document.forms['eingabe'];
  erg=document.getElementById('xxOffset').value;
  if (isNaN(erg)) {
  	 document.getElementById('xxOffset').value='0';
  	 }
  else {
  	 document.getElementById('xxOffset').value=(erg-0) + nr;
  	}
  if (document.getElementById('xxOffset').value<0) {document.getElementById('xxOffset').value='0';}
	FormEingabe.submit(); 
}

function Detailsatz(link) {
	var p, p1, feldname, FormEingabe;
   FormEingabe=document.forms['eingabe'];
	p=link.indexOf('[');
	while (p>=0) {
		p1=link.indexOf(']');
    feldname=link.substr(p+1,p1-p-1);
    link=link.substr(0,p) + FormEingabe[feldname].value + link.substr(p1+1);
   	p=link.indexOf('[');
  }
  if (link.substr(0,12)=='ZusatzBefehl') {
  	  FormEingabe['xxBefehl'].value=link;
  	  FormEingabe.submit();
  	}
  else {
     window.location.href=link;
     }
}

function DruckAnsicht() {
if (document.URL.indexOf('?')>=0) {
    window.location.href=document.URL + '&_Druckversion=J'; }
else {
    window.location.href=document.URL + '?_Druckversion=J'; }
}

function fBestaetigung (Meldung, Ziel) {
Antwort=confirm(Meldung);
if (Antwort) {window.location.href=Ziel;}
}

function fPost(Teil1, Teil2) {
var re;
re=/~/g;
if ((Teil1!='') && (Teil2!='') && (Teil2!=undefined)) {
	window.location.href='mailto:' + Teil1.replace(re,'.') + '@' + Teil2.replace(re,'.');}
}

function ZoomFaktor() {
var ein,re;
if (navigator.appName.indexOf('Internet Explorer')<0) {
	alert('Dies geht leider nur beim Internet Explorer.');
	return;
	}
ein=prompt('Gew&uuml;nschter ZoomFaktor f&uuml;r diese Seite: (z.B. 1,5 -> Seite wird gr&ouml;&#223;er; 0,8 -> Seite wird kleiner)','1,5')
if (ein==null) {return;}
if (ein=='') {return;}
re=/,/g;
ein=ein.replace(re,'.')-0;
if (isNaN(parseFloat(ein))) {
	alert('Es wurde keine Zahl angegeben. Funktion abgebrochen.'); return;}
SearchNeu='&' + window.location.search.substr(1);
p1=SearchNeu.indexOf('&_UserZoom=');
if (p1>=0) {
   p2=(SearchNeu+ '&').indexOf('&',p1+1);
   SearchNeu=SearchNeu.substr(0,p1) + SearchNeu.substr(p2);
}
SearchNeu+='&_UserZoom=' + parseFloat(ein);
p1=document.URL.indexOf('?');
if (p1<0) {SearchNeu=window.location.href + '?' + SearchNeu.substr(1);}
else {SearchNeu=window.location.href.substr(0,p1+1) + SearchNeu.substr(1);}	
window.location.href=SearchNeu;
}

function ZoomFaktorSetzen() {
var ein,re;
if (navigator.appName.indexOf('Internet Explorer')<0) {
	alert('Dies geht leider nur beim Internet Explorer.');
	return;
	}
ein=prompt('Gew&uuml;nschter ZoomFaktor f&uuml;r alle Seiten: (z.B. 1,5 -> Seite wird gr&ouml;&#223;er; 0,8 -> Seite wird kleiner)','1,5')
if (ein==null) {return;}
if (ein=='') {return;}
re=/,/g;
ein=ein.replace(re,'.');
if (isNaN(parseFloat(ein))) {
	alert('Es wurde keine Zahl angegeben.'); return;}
neu='/prg/cmd_userzoom.php?UserZoom='+ parseFloat(ein) + '&Link=' + escape(window.location.href);
window.location.href=neu;
}

function PartienDownload(BewerbNr, Jahr)
{
window.location.href='/prg/pgn/_pgndownload.php?_BewerbNr=' + BewerbNr + '&_Jahr=' + Jahr;
}

function Verschieben() {
var FormEingabe;
FormEingabe=document.forms['eingabe'];
MBNrNeu=prompt('Zu welchem Bewerb verschieben?',FormEingabe['MBNr'].value);
if (MBNrNeu==null){return;}
MNrNeu=prompt('Zu welcher Mannschaftsnummer verschieben?',FormEingabe['MNr'].value);
if (MNrNeu==null){return;}
FormEingabe['xxBefehl'].value='Verschieben';
FormEingabe['xxMerke'].value=MBNrNeu + '.' + MNrNeu;
FormEingabe.submit();
}

function Partie(BewerbNr, Jahr, PartieNr)
{
window.open('/prg/pgn/_partie.php?_BewerbNr=' + BewerbNr + '&_Jahr=' + Jahr + '&_PartieNr=' + PartieNr,null, 'width=650,resizable=yes,menubar=yes,toolbar=yes');
}

function EingabeBrett(nr) {
	// aktiviere die Eingabe einer Zeile
	var TabEingabe, FormEingabe, i, anz, nr_;
	TabEingabe=document.getElementById('TabEingabe').rows;
	FormEingabe=document.forms['eingabe'];
	anz=TabEingabe.length-5;
	if (nr==0) {nr_=FormEingabe['xxSBrett'].value-0;} else {nr_=nr;}
	for (var i = 1; i < anz; i++) {
	     TabEingabe[i+2].cells[0].innerHTML='';
	     }	
	TabEingabe[nr_+2].cells[0].innerHTML='--&gt;';
	FormEingabe['xxSBrett'].value=nr_;
	FormEingabe['xxSPNr1'].selectedIndex=-1;
	FormEingabe['xxSErgebnis'].selectedIndex=-1;
	FormEingabe['xxSPNr2'].selectedIndex=-1;
}
function EingabeWert(nr) {
	// Übertrage den Wert in eine Zeile
	var TabEingabe, FormEingabe, i, wert, feldname, feldname2, liste, anz;
	TabEingabe=document.getElementById('TabEingabe').rows;
	FormEingabe=document.forms['eingabe'];
	anz=TabEingabe.length-6;
        if (nr==1) {feldname='xxSPNr1'; feldname2='xxSpTab1';}
        if (nr==2) {feldname='xxSErgebnis'; feldname2='xxErgTab';}
        if (nr==3) {feldname='xxSPNr2'; feldname2='xxSpTab2';}
        i=FormEingabe['xxSBrett'].value-0;
        wert=FormEingabe[feldname].item(FormEingabe[feldname].selectedIndex).text;
        TabEingabe[i+2].cells[nr+2].innerHTML=wert;
        liste=FormEingabe[feldname2].value.split('|');
        liste[i]=FormEingabe[feldname].value;
        FormEingabe[feldname2].value=liste.join('|');
        if ((nr==3) && (i <= anz)) {EingabeBrett(i+1);}
}

function EingabeSpeichern() {
	if (confirm('Sollen diese Ergebnisse wirklich gespeichert werden??? (kann nicht rückgängig gemacht werden!)'))
	    {document.forms['eingabe'].submit();}
}

function Search_Show(show) {
	var elem;
	elem=document.getElementById('search_string');
	if (show || (elem.value!='')) {elem.className='search_show1'}
	else {elem.className='search_show0';}
}

function Search_Section(show) {
	var elem;
	elem=document.getElementById('search_section');
	if (show) {
		elem.className='search_section1';
		elem.focus();
		}
	else {elem.className='search_section0';}
}

function Search_Section_Sel() {
	var elem, t;
	elem=document.getElementById('search_section');
	nr=elem.value-1;
	muster=new Array('Mustermann Max','Vereinsname','Turniername,Jahr','Newsinhalt,Jahr','Termininhalt,Jahr');
	t=elem.options[nr].innerHTML;
	elem.blur();
	elem=document.getElementById('search_label');
	elem.innerHTML=t;
	elem=document.getElementById('search_string_default');
	elem.innerHTML=muster[nr];
}

function Search_Submit() {
	var elem, t;
	elem=document.getElementById('search_form');
	elem.submit();
}