function getList($eventid = 0) { global $db; global $register; if ((int) $eventid > 0) { $list = $db->selectList($this->table, "*", "`eventid`=" . (int) $eventid, "CASE `state` WHEN 1 THEN 0 \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHEN 2 THEN 1 \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHEN 3 THEN 2 \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHEN 0 THEN 4 \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tEND"); } else { $list = $db->selectList($this->table, "*", "1", "CASE `state` WHEN 1 THEN 0 \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHEN 2 THEN 1 \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHEN 3 THEN 2 \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHEN 0 THEN 4 \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tEND"); } if (count($list) > 0) { foreach ($list as $i => $tournament) { $list[$i]['url'] = makeURL('tournament', array('tournamentid' => $tournament['tournamentid'])); $list[$i]['state'] = tournamentStateToString($tournament['state']); $list[$i]['joinstate'] = $register->getRegCount($tournament['tournamentid']) . " / " . $tournament['playerlimit']; } } return $list; }
if ($eventid > 0) { $event['name'] = $db->selectOne(MYSQL_TABLE_PREFIX . 'events', 'name', "`eventid`=" . $eventid); $breadcrumbs->addElement($event['name'], makeURL($mod, array('eventid' => $eventid))); } if ($tournamentid == 0) { // Show tournament list $smarty->assign('path', $template_dir . "/overview.tpl"); $smarty->assign('tournamentList', $tournamentList->getList($eventid)); $smarty->assign('modenames', $modes); } } else { // Show tournament overview $tournament['event']['url'] = makeURL('events', array('eventid' => $tournament['event']['eventid'])); $tournament['playerperteam_str'] = $tournament['playerperteam'] . " (" . $tournament['playerperteam'] . " on " . $tournament['playerperteam'] . ")"; $tournament['mode_str'] = $modes[$tournament['mode']]; $tournament['state_str'] = tournamentStateToString($tournament['state']); $tournament['start_str'] = date("d.m.Y H:i", $tournament['start']) . ' ' . timeLeft($tournament['start']); $tournament['wwclgameid_str'] = wwclGameIdToString($tournament['wwclgameid']); $tournament['mappool_str'] = str_replace(";", ", ", $tournament['mappool']); // add tree submenu if (($tournament['state'] == 2 || $tournament['state'] == 3) && $tournament['mode'] != 5) { $menu->addSubElement($mod, $lang->get('tournament_table'), 'table', array('tournamentid' => $tournamentid)); } @$breadcrumbs->addElement($tournament['event']['name'], makeURL($mod, array('eventid' => $tournament['event']['eventid']))); $breadcrumbs->addElement($tournament['title'], makeURL($mod, array('tournamentid' => $tournamentid))); // Create a new instance of tournament class require_once $mod_dir . "/tournament.abstract.class.php"; require_once $mod_dir . "/participant.interface.php"; require_once $mod_dir . "/singlePlayer.class.php"; require_once $mod_dir . "/group.class.php"; require_once $mod_dir . "/tournament.eliminationencounter.class.php";
function makeTournamentList($tournaments, $userid) { if (count($tournaments) < 1) { return false; } $finalTournaments = array(); foreach ($tournaments as $tournament) { $nextEnc = ''; $ranking = ''; switch ($tournament['state']) { // Inactive case 0: $url = $tournament['title']; break; // Joining // Joining case 1: $url = makeHTMLUrl($tournament['title'], makeUrl('tournament', array('tournamentid' => $tournament['tournamentid']))); break; // Running // Running case 2: $url = makeHTMLUrl($tournament['title'], makeUrl('tournament', array('tournamentid' => $tournament['tournamentid'], 'mode' => 'table'))); $nextEnc = getNextEncounter($tournament, $userid); break; // Finished // Finished case 3: $url = makeHTMLUrl($tournament['title'], makeUrl('tournament', array('tournamentid' => $tournament['tournamentid'], 'mode' => 'table'))); $tournament_obj = getTournamentObject($tournament); $ranking = $tournament_obj->ranking(); break; } $finalTournaments[] = array('url' => $url, 'listcolor' => makeListColor($tournament['state']), 'nextencounter' => $nextEnc, 'state' => $tournament['state'], 'statename' => tournamentStateToString($tournament['state']), 'ranking' => $ranking, 'tournamentid' => $tournament['tournamentid'], 'title' => $tournament['title']); } return $finalTournaments; }
<?php switch ($_GET['view']) { case 'overview': $tlist = $db->selectList('tournamentlist', '*', "`state`=1 OR `state`=2", "`state` ASC"); if (count($tlist) > 0) { foreach ($tlist as $i => $t) { $tlist[$i]['state_str'] = tournamentStateToString($t['state']); $tlist[$i]['color'] = makeListColor($t['state']); } } $smarty->assign('tournamentList', $tlist); $smarty->assign('path', $template_dir . "/beamer/overview.tpl"); break; case 'nextencounters': require_once "./mod/default/tournament/tournament.function.php"; $smarty->assign('encounterList', getAllNextEncounters()); $smarty->assign('path', $template_dir . "/beamer/nextencounters.tpl"); break; }