public function __construct($medlem) { global $db; $this->setMedlem($medlem); $this->strackor = Stracka::listByMedlem($this->getMedlem()); $medlemTotalSteg = $medlem->getStegTotal(); $medlemTotalKm = Steg::stegToKm($medlemTotalSteg); $sql = "SELECT DISTINCT kommunTill_id FROM " . self::TABLE . " WHERE medlem_id = " . $this->getMedlem()->getId(); $kommunIds = $db->valuesAsArray($sql); $kommuner = Kommun::listByIds($kommunIds); $this->avstand = Kommun::listAvstandByIds($kommunIds); $totalKm = 0; $i = 0; $static; $lastStracka = null; foreach ($this->listStrackor() as $stracka) { $thisKommun = $kommuner[$stracka->getKommunTillId()]; $thisKm = 0; if ($lastStracka != null) { $thisKm = $this->getAvstand($thisKommun, $kommuner[$lastStracka->getKommunTillId()]); } $totalKm += $thisKm; if ($stracka->getStatic() == 1) { $static = true; } else { $static = false; } if ($totalKm <= $medlemTotalKm) { $this->currentIndex = count($this->rutt); } $this->rutt[] = array("Kommun" => $thisKommun, "TotalKm" => $totalKm, "ThisKm" => $thisKm, "fastRutt" => $static, "id" => $stracka->getId(), "temp" => $stracka->getTempStatus()); $lastStracka = $stracka; } if (isset($this->rutt[$this->currentIndex + 1])) { $this->kmTillNasta = round($this->rutt[$this->currentIndex + 1]["TotalKm"] - Steg::stegToKm($medlem->getStegTotal())); } else { $this->kmTillNasta = 0; } }
function smarty_modifier_stegToKm($string) { return round(Steg::stegToKm($string) * 10) / 10; }
$smarty->assign("pagetitle", "Rapport"); // Ta bort eventuella temp-sträckor som inte sparats: if (isset($USER)) { $USER->cleanTempStrackor(); } $tabs = new TabBox("rapport", 590, null); $medlem = !empty($_GET["id"]) ? Medlem::loadById($_GET["id"]) : $USER; $smarty->assign("medlem", $medlem); $tabs->addTab("Rutt", "rutt"); $tabs->addTab("Steg", "detaljerat"); if (isset($_GET["tab"])) { $tabs->setSelected($_GET["tab"]); } $smarty->assign("tabs", $tabs); $stegtotal = $medlem->getStegTotal(); $kmTotal = Steg::stegToKm($stegtotal); // Kommunjakt $rutt = new Rutt($medlem); $rutten = $rutt->getRutt(); $currentKommun = $medlem->getCurrentKommun(); $kommunnamn = Kommun::listNamn(true); $rutter = $rutt->getRutt(); foreach ($rutter as $index => $temprutt) { $totalKm = $temprutt["TotalKm"]; } if (empty($totalKm)) { $totalKm = 0; } $totalKmKvar = $totalKm - $kmTotal; $smarty->assign("totalKmKvar", $totalKmKvar); $dagar7000 = ceil($totalKmKvar / 7);
public function getKmToNextMal() { return Steg::stegToKm($this->getStegToNextMal()); }