assign('ueberschrift','Trainingsgruppen'); $titel = 'Trainingsgruppe'; if(!$erlaubt){ $_inh = T_KEINZUGRIFF; } else{ $_GET['aktion'] = isset($_GET['aktion'])?$_GET['aktion']:''; $_tmpl->assign('wochentage',$_wochentage); switch($_GET['aktion']){ case 'rangfolge': if(!pruefeRechte('tr_gruppen_bearbeiten')){ $_inh = T_KEINZUGRIFF; break; } # vorhandene Daten holen $query = "SELECT DISTINCT kommentar, rangfolge FROM ".DB_PREFIX."trainingsgruppen ORDER BY kommentar"; $_db->holeDaten($query); $gruppen = $_db->baueArray('*','kommentar'); $query = "SELECT id, TIME_FORMAT(anfangszeit,'%H:%i') as anfang, wochentag, kommentar, rangfolge FROM ".DB_PREFIX."trainingsgruppen WHERE rangfolge IS NOT NULL ORDER BY rangfolge"; $_db->holeDaten($query); $gruppentmp = $_db->baueArray('*','id'); foreach($gruppen as $art => $werte){ if(is_null($werte['rangfolge'])){ $gruppen[$art]['reihenfolge'] = '-'; } else{ $tmp = array(); foreach($gruppentmp as $gr){ if($gr['kommentar'] != $art){ continue; } $tmp[] = substr($_wochentage[$gr['wochentag']],0,2).$gr['anfang']; } $gruppen[$art]['reihenfolge'] = implode(', ',$tmp); } unset($gruppen[$art]['rangfolge']); } $_tmpl->assign('gruppen', $gruppen); $_inh .= $_tmpl->fetch('training/31.rangfolge-uebersicht.inc.html'); #$_inh .= printr($gruppen,1,1); break; case 'anlegen': $_tmpl->assign('ueberschrift','Trainingsgruppe anlegen'); if(!pruefeRechte('tr_gruppen_bearbeiten')){ $_inh = T_KEINZUGRIFF; break; } if(isset($_POST['speichern'])){ require_once('func/pruefen.inc.php'); $f = ''; $f .= pruefen($_POST['anfangszeit'],'leer','Die Anfangszeit fehlt'); $f .= pruefen($_POST['anfangszeit'],'uhrzeit','Die Anfangszeit ist ungültig'); $f .= pruefen($_POST['endzeit'],'leer','Die Endzeit fehlt'); $f .= pruefen($_POST['endzeit'],'uhrzeit','Die Endzeit ist ungültig'); $f .= pruefen($_POST['wochentag'],'wertemenge','Der Wochentag ist ungültig',array_keys($_wochentage)); $f .= pruefen($_POST['kommentar'],'maxlaenge','Der Kommentar ist zu lang (max 50 Zeichen)',50); if(!empty($f)){ $_tmpl->assign('fehler',$f); $_tmpl->assign('daten',$_POST); } else{ $query = "INSERT INTO ".DB_PREFIX."trainingsgruppen SET anfangszeit='".text_format(substr($_POST['anfangszeit'],0,5),'db').":00', endzeit='".text_format(substr($_POST['endzeit'],0,5),'db').":00', wochentag = ".$_POST['wochentag'].", kommentar='".text_format($_POST['kommentar'],'db')."'"; $_db->fuehreQueryaus($query); weiterleiten('/training/gruppen.html','Die Trainingsgruppe wurde angelegt'); } } $_inh .= $_tmpl->fetch('training/31.gruppen-formular.inc.html'); break; case 'aendern': $_tmpl->assign('ueberschrift','Trainingsgruppe ändern'); if(!pruefeRechte('tr_gruppen_bearbeiten')){ $_inh = T_KEINZUGRIFF; break; } if(!ctype_digit($_GET['id'])){ break; } if(isset($_POST['gruppeloeschen']) or isset($_GET['gruppeloeschen'])){ if(!isset($_GET['sicher'])){ $_tmpl->assign('frage','Soll die Trainingsgruppe wirklich gelöscht werden?'); $_tmpl->assign('jaquery','gruppeloeschen=1'); $_tmpl->assign('neinquery','aktion=aendern&id='.$_GET['id']); $_tmpl->assign('url', '/training/gruppen.html'); $_inh .= $_tmpl->fetch('tools/9902.loeschfrage.inc.html'); break; } else{ $query = "DELETE FROM ".DB_PREFIX."trainingsgruppen_uebungsleiter WHERE trainingsgruppenid = ".$_GET['id'].""; $_db->fuehreQueryAus($query); $query = "DELETE FROM ".DB_PREFIX."mitglieder_trainingsgruppen WHERE trainingsgruppenid = ".$_GET['id'].""; $_db->fuehreQueryAus($query); $query = "DELETE FROM ".DB_PREFIX."trainingsgruppen WHERE id = ".$_GET['id'].""; $_db->fuehreQueryAus($query); weiterleiten('/training/gruppen.html','Die Trainingsgruppe wurde gelöscht'); } } elseif(!isset($_POST['speichern'])){ $query = "SELECT id, TIME_FORMAT(anfangszeit,'%H:%i') as anfangszeit, TIME_FORMAT(endzeit,'%H:%i') as endzeit, kommentar, wochentag FROM ".DB_PREFIX."trainingsgruppen WHERE id=".$_GET['id'].""; $_db->holeDaten($query); if($_db->holeAnzahl() != 1){ $_inh .= T_KEINDATENSATZ; break; } $_tmpl->assign('daten',$_db->holeZeile()); } else{ require_once('func/pruefen.inc.php'); $f = ''; $f .= pruefen($_POST['anfangszeit'],'leer','Die Anfangszeit fehlt'); $f .= pruefen($_POST['anfangszeit'],'uhrzeit','Die Anfangszeit ist ungültig'); $f .= pruefen($_POST['endzeit'],'leer','Die Endzeit fehlt'); $f .= pruefen($_POST['endzeit'],'uhrzeit','Die Endzeit ist ungültig'); $f .= pruefen($_POST['wochentag'],'wertemenge','Der Wochentag ist ungültig',array_keys($_wochentage)); $f .= pruefen($_POST['kommentar'],'maxlaenge','Der Kommentar ist zu lang (max 50 Zeichen)',50); if(!empty($f)){ $_tmpl->assign('fehler',$f); $_tmpl->assign('daten',$_POST); } else{ $query = "UPDATE ".DB_PREFIX."trainingsgruppen SET anfangszeit='".text_format(substr($_POST['anfangszeit'],0,5),'db').":00', endzeit='".text_format(substr($_POST['endzeit'],0,5),'db').":00', wochentag = ".$_POST['wochentag'].", kommentar='".text_format(trim($_POST['kommentar']),'db')."' WHERE id = ".$_GET['id'].""; $_db->fuehreQueryaus($query); weiterleiten('/training/gruppen.html','Die Trainingsgruppe wurde geändert'); } } $_inh .= $_tmpl->fetch('training/31.gruppen-formular.inc.html'); break; default: $query = "SELECT t.id, GROUP_CONCAT(DISTINCT m.vorname ORDER BY IF(u.trainerbis IS NULL,0,1) DESC, m.vorname ASC SEPARATOR ', ') as namen, TIME_FORMAT(anfangszeit,'%H:%i') as anfangszeit, wochentag, TIME_FORMAT(endzeit,'%H:%i') as endzeit, kommentar, COUNT(DISTINCT ttg.mitgliedid) as anz FROM (((".DB_PREFIX."trainingsgruppen as t LEFT JOIN ".DB_PREFIX."mitglieder_trainingsgruppen as ttg ON t.id = ttg.trainingsgruppenid) LEFT JOIN ".DB_PREFIX."trainingsgruppen_uebungsleiter as tu ON t.id=tu.trainingsgruppenid) LEFT JOIN ".DB_PREFIX."uebungsleiter as u ON tu.uebungsleiterid=u.id) LEFT JOIN ".DB_PREFIX."mitglieder as m ON u.mitgliedid=m.id GROUP BY t.id ORDER BY wochentag, anfangszeit"; $_db->holedaten($query); $_tmpl->assign('gruppen',$_db->baueArray('*','#')); $_inh .= $_tmpl->fetch('training/31.gruppen-uebersicht.inc.html'); break; } } # Ende Rechte-else, EOF ?>