This repository has been archived on 2025-07-13. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
open-heraklion-bus/modules/libdata.php
2016-02-20 22:02:18 +02:00

136 lines
2.7 KiB
PHP

<?php
include 'data.php';
function getStopsOfRoute($id){
global $routes;
foreach ($routes as $route){
if ($route['id'] == $id){
return $route['stops'];
}
}
}
function getRoutesOfLine($line){
global $routes;
$tmp = array();
foreach ($routes as $route){
if ($route['line'] == $line){
array_push($tmp, $route);
}
}
return $tmp;
}
function getRoutesByStop($stopId){
global $routes;
$tmp = array();
foreach ($routes as $route){
foreach ($route['stops'] as $stop){
if ($stop == $stopId){
array_push($tmp, $route);
}
}
}
return $tmp;
}
function isValidRoute($id){
global $routes;
foreach ($routes as $route){
if ($route['id'] == $id){
return true;
}
}
return false;
}
function isValidLine($line){
global $routes;
foreach ($routes as $route){
if ($route['line'] == $line){
return true;
}
}
return false;
}
function isValidStop($stp){
global $stops;
foreach ($stops as $stop){
if ($stop['id'] == $stp){
return true;
}
}
return false;
}
function getRouteInfo($id){
global $routes;
foreach ($routes as $route){
if ($route['id'] == $id){
return $route;
}
}
return false;
}
function getStopInfo($id){
global $stops;
foreach ($stops as $stop){
if ($stop['id'] == $id){
return $stop;
}
}
return false;
}
function getLabelOfDir($dir){
if ($dir == 'go'){
return '<span class="label label-info">Go</span>';
} else if ($dir == 'come'){
return '<span class="label label-primary">Come</span>';
} else {
return false;
}
}
function getLines(){
global $routes;
$lines = array();
foreach ($routes as $r){
$found = false;
foreach($lines as $l){
if($r["line"] == $l){
$found=true;
}
}
if(!$found){
array_push($lines, $r["line"]);
}
}
return $lines;
}
function getPositionOfRoute($rt,$direction){
global $buspositions;
$locations = array();
foreach ($buspositions as $bus){
if($bus["routeid"] == $rt && $bus["direction"] == $direction){
array_push($locations,array($bus["lat"],$bus["lon"]));
}
}
return $locations;
}
function getPositionOfLine($line,$direction){
$locations = array();
foreach(getRoutesOfLine($line) as $route){
foreach(getPositionOfRoute($route["id"],$direction) as $pos){
array_push($locations,$pos);
}
}
return $locations;
}
?>