assign('trainingsgruppen',holeTrainingsgruppen(true)); $keys = array_keys($_altersklassen); $values = array(); foreach($keys as $key){ $tmp = strtoupper($key); if(strlen($tmp) == 2){ $tmp = str_replace('J','Jugend ',$tmp); } elseif($tmp == 'JUNIOREN'){ $tmp = 'Junioren'; } $values[] = $tmp; } $_tmpl->assign('altersklassen',array_combine($keys,$values)); $filter = array(); $filter['trainingsgruppen'] = range(1,15); $filter['wettkampfjahr'] = date('Y'); $_tmpl->assign('filter',$filter); $_tmpl->tk_append_string('js_inline','function markieretrainingsgruppe(gewaehlt){ var opt = document.forms[0].elements[\'filter[trainingsgruppen][]\'].options; for(i=0;opt[i];i++){ opt[i].selected = gewaehlt; } }'); $_inh .= $_tmpl->fetch('export/74.trainierende.inc.html'); } else{ require_once('class/pdf.inc.php'); $pdf = new tkpdf; $query = "SELECT DISTINCT mitgliedid FROM ".DB_PREFIX."mitglieder_trainingsgruppen"; if(isset($_POST['filter']['trainingsgruppen'])){ $query .= " WHERE trainingsgruppenid IN (".implode(',',$_POST['filter']['trainingsgruppen']).")"; } $_db->holeDaten($query); $mitglieder = $_db->baueArray('mitgliedid','#'); $optionen = array( 'fontSize' => $pdf->tk_schriftgroesse, 'titelFontSize' => $pdf->tk_schriftgroesse, 'xPos' => 80, 'xOrientation' => 'right', 'shaded' => 0, 'showLines' => 2, 'colGap' => 6, 'rowGap' => 1, 'innerLineThickness' => 0.5, 'outerLineThickness' => 1.5 ); $spalten = array('nachname'=>'Name','vorname'=>'Vorname','jg'=>'JG','dsvid'=>'DSV-ID'); # Jugend D $query = "SELECT nachname, vorname, YEAR(gebdatum) as jg, dsvid FROM ".DB_PREFIX."mitglieder WHERE id IN (".implode(',',$mitglieder).") AND ".$_POST['filter']['wettkampfjahr']."-YEAR(gebdatum) IN (10,11) ORDER BY nachname, vorname"; $_db->holeDaten($query); $daten1 = $daten2 = array(); $geszahl = count($_db->ergebnis['daten']); $anz = round($geszahl/2); for($i=0;$i<$geszahl;$i++){ if($i<$anz){ $daten1[] = $_db->ergebnis['daten'][$i]; } else{ $daten2[] = $_db->ergebnis['daten'][$i]; } } $y = $pdf->ezText('Jugend D',12); $y_speicher = $y-5; $y = $pdf->ezSetDy(-5); $y = $pdf->ezTable($daten1,$spalten,'',$optionen); $tmp = $optionen; $tmp['xPos'] = 300; $pdf->ezSetY($y_speicher); $y_speicher = $y; $pdf->ezTable($daten2,$spalten,'',$tmp); $pdf->ezSetY($y_speicher); $pdf->ezSetDy(-7); # Jugend C $query = "SELECT nachname, vorname, YEAR(gebdatum) as jg, dsvid FROM ".DB_PREFIX."mitglieder WHERE id IN (".implode(',',$mitglieder).") AND ".$_POST['filter']['wettkampfjahr']."-YEAR(gebdatum) IN (12,13) ORDER BY nachname, vorname"; $_db->holeDaten($query); $daten1 = $daten2 = array(); $geszahl = count($_db->ergebnis['daten']); $anz = round($geszahl/2); for($i=0;$i<$geszahl;$i++){ if($i<$anz){ $daten1[] = $_db->ergebnis['daten'][$i]; } else{ $daten2[] = $_db->ergebnis['daten'][$i]; } } $y = $pdf->ezText('Jugend C',12); $y_speicher = $y-5; $y = $pdf->ezSetDy(-5); $y = $pdf->ezTable($daten1,$spalten,'',$optionen); $tmp = $optionen; $tmp['xPos'] = 300; $pdf->ezSetY($y_speicher); $y_speicher = $y; $pdf->ezTable($daten2,$spalten,'',$tmp); $pdf->ezSetY($y_speicher); $pdf->ezSetDy(-7); $pdf->eznewpage(); # Jugend B $query = "SELECT nachname, vorname, YEAR(gebdatum) as jg, dsvid FROM ".DB_PREFIX."mitglieder WHERE id IN (".implode(',',$mitglieder).") AND ".$_POST['filter']['wettkampfjahr']."-YEAR(gebdatum) IN (14,15) ORDER BY nachname, vorname"; $_db->holeDaten($query); $daten1 = $daten2 = array(); $geszahl = count($_db->ergebnis['daten']); $anz = round($geszahl/2); for($i=0;$i<$geszahl;$i++){ if($i<$anz){ $daten1[] = $_db->ergebnis['daten'][$i]; } else{ $daten2[] = $_db->ergebnis['daten'][$i]; } } $y = $pdf->ezText('Jugend B',12); $y_speicher = $y-5; $y = $pdf->ezSetDy(-5); $y = $pdf->ezTable($daten1,$spalten,'',$optionen); $tmp = $optionen; $tmp['xPos'] = 300; $pdf->ezSetY($y_speicher); $y_speicher = $y; $pdf->ezTable($daten2,$spalten,'',$tmp); $pdf->ezSetY($y_speicher); $pdf->ezSetDy(-7); # Jugend A $query = "SELECT nachname, vorname, YEAR(gebdatum) as jg, dsvid FROM ".DB_PREFIX."mitglieder WHERE id IN (".implode(',',$mitglieder).") AND ".$_POST['filter']['wettkampfjahr']."-YEAR(gebdatum) IN (16,17) ORDER BY nachname, vorname"; $_db->holeDaten($query); $daten1 = $daten2 = array(); $geszahl = count($_db->ergebnis['daten']); $anz = round($geszahl/2); for($i=0;$i<$geszahl;$i++){ if($i<$anz){ $daten1[] = $_db->ergebnis['daten'][$i]; } else{ $daten2[] = $_db->ergebnis['daten'][$i]; } } $y = $pdf->ezText('Jugend A',12); $y_speicher = $y-5; $y = $pdf->ezSetDy(-5); $y = $pdf->ezTable($daten1,$spalten,'',$optionen); $tmp = $optionen; $tmp['xPos'] = 300; $pdf->ezSetY($y_speicher); $y_speicher = $y; $pdf->ezTable($daten2,$spalten,'',$tmp); $pdf->ezSetY($y_speicher); #$pdf->ezSetDy(-7); $pdf->tk_titel = 'trainierende Mitglieder'; $pdf->tkstream('trainierende-mitglieder.pdf'); } break; case 'trainingsgruppenzuordung': $_tmpl->assign('ueberschrift','Export - Trainingsgruppenzuordung'); if(!pruefeRechte('e_trainingsgruppenzuordung')){ $_inh = T_KEINZUGRIFF; break; } require_once('func/holetrainingsgruppen.inc.php'); $trainingsgruppen = holeTrainingsgruppen(true); if(!isset($_POST['generieren'])){ $_tmpl->assign('trainingsgruppen',$trainingsgruppen); $_tmpl->assign('gewaehlte_trainingsgr',array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)); $_tmpl->tk_append_string('js_inline',"function optionenschalten(){ var f = document.forms[0]; if(f.einezeile.checked == true){ document.getElementById('feld3u4').style.display = 'none'; document.getElementById('labelf1').innerHTML = 'Feld'; document.getElementById('labelf2').innerHTML = 'Trenner'; f.elements['optionen[tgr][feld2]'].size = 2; } else{ document.getElementById('feld3u4').style.display = 'inline'; document.getElementById('labelf1').innerHTML = 'Feld1'; document.getElementById('labelf2').innerHTML = 'Feld2'; f.elements['optionen[tgr][feld2]'].size = 40; } }",1); $_inh .= $_tmpl->fetch('export/74.trainingsgruppenzuordung.inc.html'); break; } if(!isset($_POST['trainingsgruppen'])){ weiterleiten('/export/training.html?aktion=trainingsgruppenzuordung'); } else{ foreach($_POST['trainingsgruppen'] as $gr){ if(!in_array($gr,array_keys($trainingsgruppen))){ weiterleiten('/export/training.html?aktion=trainingsgruppenzuordung'); } } } $query = "SELECT id, wochentag as w, kommentar as k, TIME_FORMAT(anfangszeit,'%H:%i') as a, TIME_FORMAT(endzeit,'%H:%i') as e FROM ".DB_PREFIX."trainingsgruppen WHERE id IN (".implode(',',$_POST['trainingsgruppen']).") ORDER BY wochentag,anfangszeit"; $_db->holeDaten($query); $trainingsgruppen = $_db->baueArray('*','#'); $trainingsgr = array(); foreach($trainingsgruppen as $key => $gr){ $gr['w'] = $_wochentage[$gr['w']]; $id = $gr['id']; unset($gr['id']); $trainingsgr[$id] = $gr; } $langkurz = (isset($_POST['optionen']['name']['langkurz']) and $_POST['optionen']['name']['langkurz']=='lang')?'lang':'kurz'; $jahrgang = isset($_POST['felder']['jahrgang']); $dsvid = isset($_POST['felder']['dsvid']); $geschlecht = isset($_POST['felder']['geschlecht']); $query = "SELECT m.id, ".($langkurz=='lang'?'sonstiges, ':'')."m.nachname, m.vorname, mt.trainingsgruppenid ".($dsvid?", dsvid":'').($jahrgang?", YEAR(m.gebdatum) as jahrg":'').($geschlecht?", mw":'')." FROM ".DB_PREFIX."mitglieder as m, ".DB_PREFIX."mitglieder_trainingsgruppen as mt WHERE m.id=mt.mitgliedid and mt.trainingsgruppenid IN (".implode(',',$_POST['trainingsgruppen']).") ORDER BY m.nachname, m.vorname, mt.trainingsgruppenid"; $_db->holeDaten($query); $mitglieder = $_db->baueArray('*','#'); $felder = array(); $daten = array(); if(isset($_POST['felder']['mid'])){ $felder[] = 'ID'; } switch($_POST['optionen']['name']['reihenfolge']){ case 'vorname_nachname': $felder[] = 'Name'; break; case 'nachname_vorname': $felder[] = 'Name'; break; default: $felder[] = 'Nachname'; $felder[] = 'Vorname'; break; } if($dsvid){ $felder[] = 'DSV-ID'; } if($jahrgang){ $felder[] = 'Jahrgang'; } if($geschlecht){ $felder[] = 'mw'; } if(isset($_POST['einezeile'])){ $felder[] = 'Feld'; $tmp_id = 0; $tmp = array('f'=>array()); $sep = (isset($_POST['optionen']['tgr']['feld2']) and !empty($_POST['optionen']['tgr']['feld2']))?$_POST['optionen']['tgr']['feld2']:', '; foreach($mitglieder as $key => $m){ if($tmp_id != $m['id']){ $tmp['feld'] = implode($sep,$tmp['f']); unset($tmp['f']); if(isset($tmp['name']) or isset($tmp['vorname'])){ $daten[] = $tmp; } $tmp = array(); if(isset($_POST['felder']['mid'])){ $tmp['id'] = $m['id']; } if($langkurz == 'lang' and !empty($m['sonstiges'])){ require_once('func/parsesonstigesfeld.inc.php'); $name = parsesonstigesfeld($m['sonstiges'],'langname'); if(!empty($name)){ list($m['vorname'],$m['nachname']) = explode('|',$name); } } switch($_POST['optionen']['name']['reihenfolge']){ case 'vorname_nachname': $tmp['name'] = $m['vorname'].' '.$m['nachname']; unset($m['vorname']); unset($m['nachname']); break; case 'nachname_vorname': $tmp['name'] = $m['nachname'].', '.$m['vorname']; unset($m['vorname']); unset($m['nachname']); break; default: $tmp['nachname'] = $m['nachname']; $tmp['vorname'] = $m['vorname']; break; } if($dsvid){ $tmp['dsvid'] = $m['dsvid']; } if($jahrgang){ $tmp['jahrg'] = $m['jahrg']; } if($geschlecht){ $tmp['mw'] = $m['mw']; } $tmp['f'] = array(); $tmp_id = $m['id']; } $tid = $m['trainingsgruppenid']; $t = str_replace('%k',$trainingsgr[$tid]['k'],$_POST['optionen']['tgr']['feld1']); $t = str_replace('%w',$trainingsgr[$tid]['w'],$t); $t = str_replace('%z',substr($trainingsgr[$tid]['w'],0,2),$t); $t = str_replace('%a',$trainingsgr[$tid]['a'],$t); $t = str_replace('%e',$trainingsgr[$tid]['e'],$t); $tmp['f'][] = $t; } $tmp['feld'] = implode($sep,$tmp['f']); unset($tmp['f']); $daten[] = $tmp; } else{ if(!empty($_POST['optionen']['tgr']['feld1'])){ $felder[] = 'Feld1'; } if(!empty($_POST['optionen']['tgr']['feld2'])){ $felder[] = 'Feld2'; } if(!empty($_POST['optionen']['tgr']['feld3'])){ $felder[] = 'Feld3'; } if(!empty($_POST['optionen']['tgr']['feld4'])){ $felder[] = 'Feld4'; } foreach($mitglieder as $key => $m){ $tmp = array(); if(isset($_POST['felder']['mid'])){ $tmp[] = $m['id']; } if($langkurz == 'lang' and !empty($m['sonstiges'])){ require_once('func/parsesonstigesfeld.inc.php'); $name = parsesonstigesfeld($m['sonstiges'],'langname'); if(!empty($name)){ list($m['vorname'],$m['nachname']) = explode('|',$name); } } switch($_POST['optionen']['name']['reihenfolge']){ case 'vorname_nachname': $tmp['name'] = $m['vorname'].' '.$m['nachname']; unset($m['vorname']); unset($m['nachname']); break; case 'nachname_vorname': $tmp['name'] = $m['nachname'].', '.$m['vorname']; unset($m['vorname']); unset($m['nachname']); break; default: $tmp['nachname'] = $m['nachname']; $tmp['vorname'] = $m['vorname']; break; } if($dsvid){ $tmp['dsvid'] = $m['dsvid']; } if($jahrgang){ $tmp['jahrgang'] = $m['jahrg']; } if($geschlecht){ $tmp['mw'] = $m['mw']; } $tid = $m['trainingsgruppenid']; if(!empty($_POST['optionen']['tgr']['feld1'])){ $tmp['feld1'] = str_replace('%k',$trainingsgr[$tid]['k'],$_POST['optionen']['tgr']['feld1']); $tmp['feld1'] = str_replace('%w',$trainingsgr[$tid]['w'],$tmp['feld1']); $tmp['feld1'] = str_replace('%z',substr($trainingsgr[$tid]['w'],0,2),$tmp['feld1']); $tmp['feld1'] = str_replace('%a',$trainingsgr[$tid]['a'],$tmp['feld1']); $tmp['feld1'] = str_replace('%e',$trainingsgr[$tid]['e'],$tmp['feld1']); } if(!empty($_POST['optionen']['tgr']['feld2'])){ $tmp['feld2'] = str_replace('%k',$trainingsgr[$tid]['k'],$_POST['optionen']['tgr']['feld2']); $tmp['feld2'] = str_replace('%w',$trainingsgr[$tid]['w'],$tmp['feld2']); $tmp['feld2'] = str_replace('%z',substr($trainingsgr[$tid]['w'],0,2),$tmp['feld2']); $tmp['feld2'] = str_replace('%a',$trainingsgr[$tid]['a'],$tmp['feld2']); $tmp['feld2'] = str_replace('%e',$trainingsgr[$tid]['e'],$tmp['feld2']); } if(!empty($_POST['optionen']['tgr']['feld3'])){ $tmp['feld3'] = str_replace('%k',$trainingsgr[$tid]['k'],$_POST['optionen']['tgr']['feld3']); $tmp['feld3'] = str_replace('%w',$trainingsgr[$tid]['w'],$tmp['feld3']); $tmp['feld3'] = str_replace('%z',substr($trainingsgr[$tid]['w'],0,2),$tmp['feld3']); $tmp['feld3'] = str_replace('%a',$trainingsgr[$tid]['a'],$tmp['feld3']); $tmp['feld3'] = str_replace('%e',$trainingsgr[$tid]['e'],$tmp['feld3']); } if(!empty($_POST['optionen']['tgr']['feld4'])){ $tmp['feld4'] = str_replace('%k',$trainingsgr[$tid]['k'],$_POST['optionen']['tgr']['feld4']); $tmp['feld4'] = str_replace('%w',$trainingsgr[$tid]['w'],$tmp['feld4']); $tmp['feld4'] = str_replace('%z',substr($trainingsgr[$tid]['w'],0,2),$tmp['feld4']); $tmp['feld4'] = str_replace('%a',$trainingsgr[$tid]['a'],$tmp['feld4']); $tmp['feld4'] = str_replace('%e',$trainingsgr[$tid]['e'],$tmp['feld4']); } $daten[] = $tmp; } } $tr = $_einst['dateisystem']['csvdateitrenner']=='tab'?"\t": $_einst['dateisystem']['csvdateitrenner']; $ausg = '"'.implode('"'.$tr.'"',$felder).'"'."\n"; foreach($daten as $m){ $ausg .= '"'.implode('"'.$tr.'"',$m)."\"\n"; } header('Content-Type: text/comma-separated-values'); header('Content-Length: '.strlen($ausg)); header('Content-Disposition: attachment; filename="trainingsgruppenzuordung_'.date('Y-m-d_H-i').'.csv"'); echo $ausg; exit; default: weiterleiten('/export/'); } } # Ende Rechte-else, EOF ?>