Kalevan Kierroksen pyöräily 10.8.2003 Hämeenlinna\n"); if ($_GET["sClass"] != "X") printf("

%s %s - %d km

\n", $_GET["sClass"], $distanceNames[$_GET["sDistance"]], $distances[$_GET["sDistance"]]); else printf("

Ulkopuoliset - %d km

\n", $distances[$_GET["sDistance"]]); printf("

%s

\n", date("Y-m-d H:i")); printf("
\n"); ShowList($db, $_GET["sSortColumn"], $_GET["sSortOrder"], $_GET["sClass"], $_GET["sDistance"]); ?>


webmaster@hmltarmo.org

© Antti Haavisto & Jyrki Lahnalahti 2003.
sName = $sName; $this->sTableColumn = $sTableColumn; $this->nWidth = $nWidth; $this->sAlign = $sAlign; $this->sHeaderStyle = "sHeaderStyle .= "?sSortColumn=%s&sSortOrder=%s&sClass=%s&sDistance=%s\">%s%s"; } function Show($sSortColumn, $sSortOrder, $sClass, $sDistance) { if ($this->sTableColumn == $sSortColumn) { $sSortSymbol = ($sSortOrder == "ASC") ? " +" : " -"; $sSortOrder = ($sSortOrder == "ASC") ? "DESC" : "ASC"; } else { $sSortSymbol = ""; $sSortOrder = "ASC"; } printf($this->sHeaderStyle, $this->nWidth, $this->sAlign, $this->sTableColumn, $sSortOrder, $sClass, $sDistance, $this->sName, $sSortSymbol); } } function ShowList($db, $sSortColumn, $sSortOrder, $sClass, $sDistance) { $sWhere = " (Loppuaika <> \"\")"; if ($sClass != "") { if ($sWhere != "") $sWhere .= " AND"; $sWhere .= " Sarja = \"" . $sClass . "\""; } else { if ($sWhere != "") $sWhere .= " AND"; $sWhere .= " Sarja <> \"X\""; } if ($sDistance != "") { if ($sWhere != "") $sWhere .= " AND"; $sWhere .= " Matka = \"" . $sDistance . "\""; } if ($sWhere != "") $sWhere = " WHERE" . $sWhere; $rs = $db->executeQuery("SELECT JarjNimi, Nimi, Seura/joukkue, Sarja, Tuloaika, Loppuaika FROM Driver" . $sWhere . " ORDER BY Loppuaika, JarjNimi;"); if ($rs->getRowCount() <= 0) { printf("Ei tuloksia tässä sarjassa tai tällä matkalla.
\n"); return 0; } printf("\n\n"); $aHeaders[] = new ColumnHeader("Sija", "Sijoitus", 50, "right"); $aHeaders[] = new ColumnHeader("Nimi", "JarjNimi", 170, "left"); $aHeaders[] = new ColumnHeader("Joukkue/seura", "Seura/joukkue", 220, "left"); if ($sClass == "") $aHeaders[] = new ColumnHeader("Sarja", "Sarja", 70, "left"); $aHeaders[] = new ColumnHeader("Aika", "Loppuaika", 50, "right"); foreach ($aHeaders as $Header) { $Header->Show($sSortColumn, $sSortOrder, $sClass, $sDistance); if ($Header->sName == "Sija") printf(""); } printf("\n"); $i = 1; $nPrevPosition = 1; $nNextPosition = 1; $dPrevTime = "00.00.00"; while ($rs->next()) { $data["JarjNimi"][$i] = $rs->getCurrentValueByName("JarjNimi"); $data["Nimi"][$i] = $rs->getCurrentValueByName("Nimi"); $data["Seura/joukkue"][$i] = $rs->getCurrentValueByName("Seura/joukkue"); $data["Sarja"][$i] = $rs->getCurrentValueByName("Sarja"); $data["Loppuaika"][$i] = $rs->getCurrentValueByName("Loppuaika"); if ($data["Loppuaika"][$i] == $dPrevTime) { $data["Sijoitus"][$i] = $nPrevPosition; } else { $data["Sijoitus"][$i] = $nNextPosition; $nPrevPosition = $nNextPosition; $dPrevTime = $data["Loppuaika"][$i]; } $nNextPosition++; $i++; } if ($sSortColumn != "Loppuaika" || $sSortOrder == "DESC") { if ($sSortOrder == "ASC") { asort($data[$sSortColumn]); } else { arsort($data[$sSortColumn]); } } while (list($key) = each($data[$sSortColumn])) { printf(""); printf("", $data["Sijoitus"][$key]); printf(""); printf("", $data["Nimi"][$key]); printf("", $data["Seura/joukkue"][$key]); if ($sClass == "") printf("", $data["Sarja"][$key]); printf("", $data["Loppuaika"][$key]); printf("\n"); } printf("\n
 
%d. %s%s%s%s
\n"); /* AJH 2003-08-11 < */ /* $rs = $db->executeQuery("SELECT MAX(Tuloaika) AS MaxTuloaika FROM Driver"); */ /* if ($rs && $rs->getRowCount() > 0) { */ if (0) { /* AJH 2003-08-11 > */ $rs->next(); $nLastFinishTime = $rs->getCurrentValueByName("MaxTuloaika"); $sWhere = ""; if ($sClass != "") { if ($sWhere != "") $sWhere .= " AND"; $sWhere .= " Sarja = \"" . $sClass . "\""; } else { if ($sWhere != "") $sWhere .= " AND"; $sWhere .= " Sarja <> \"X\""; } if ($sDistance != "") { if ($sWhere != "") $sWhere .= " AND"; $sWhere .= " Matka = \"" . $sDistance . "\""; } if ($sWhere != "") $sWhere = " WHERE" . $sWhere; $rs = $db->executeQuery("SELECT MAX(Lahtoaika) AS MaxLahtoaika FROM Driver" . $sWhere); if ($rs && $rs->getRowCount() > 0) { $rs->next(); $nLastStartTime = $rs->getCurrentValueByName("MaxLahtoaika"); $nPossibleEndTime = $nLastFinishTime - $nLastStartTime; if ($nPossibleEndTime < 0) $nPossibleEndTime = 0; $nEndHours = (int)($nPossibleEndTime / 3600); $nEndMinutes = (int)(($nPossibleEndTime % 3600) / 60); $nEndSeconds = (int)($nPossibleEndTime % 60); if ($nEndHours > 0) { $sPossibleEndTime = sprintf("%d:%02d:%02d", $nEndHours, $nEndMinutes, $nEndSeconds); } else { // No hours were present if ($nEndMinutes > 0) { $sPossibleEndTime = sprintf("%d:%02d", $nEndMinutes, $nEndSeconds); } else { // No minutes were present $sPossibleEndTime = sprintf("%d", $nEndSeconds); } } if ($sWhere == "") $sWhere = " WHERE"; else $sWhere .= " AND"; $sWhere .= " Loppuaika <> \"\" AND Loppuaika < \"" . $sPossibleEndTime . "\""; //printf("
" . $sWhere . "
"); $rs = $db->executeQuery("SELECT Numero FROM Driver" . $sWhere); if ($rs) { $nChangesPossible = $rs->getRowCount(); printf("
\nMuutokset mahdollisia sijasta %d. alkaen.\n
\n", $nChangesPossible + 1); } } } return 0; } ?>