Пример #1
0
		<td>Telefon:</td>
		<td><?php 
echo "";
?>
</td>
	</tr>	
</table>

<h2>Åpningstider</h2>

<?php 
// Henter inn åpningstider
$opening_hours = $db_handler->getOpeningHours($company->getCompanyId());
$opening_hours_day = array("monday" => "Mandag", "tuesday" => "Tirsdag", "wednesday" => "Onsdag", "thursday" => "Torsdag", "friday" => "Fredag", "saturday" => "Lørdag", "sunday" => "Søndag");
// Henter åpent-status
$open_now = OpenHandler::getOpenStatus($opening_hours);
// Skriver ut om bedriften er åpen nå eller ikke
if (isset($open_now)) {
    if ($open_now) {
        $open_now_status = "Åpen";
    } else {
        $open_now_status = "Stengt";
    }
    echo "Bedriften er: <b>" . $open_now_status . "</b>.";
}
?>

<br /><br />

<?php 
// Skriver ut åpningstider
Пример #2
0
 public static function getClosestBasedOnAddress($fromAddress, $travelMode)
 {
     global $db;
     global $db_handler;
     global $ip;
     // Lager arrays for å lagre nærmeste bedrifter
     $fastfoodCompanyId = array();
     $fastfoodAddresses = array();
     $fastfoodInfo = array();
     $fastFoodName = array();
     $fastFoodOpenStatus = array();
     // Legger til informasjon om hvilken adresse distansene er beregnet fra
     $fastfoodInfo[] = array('name' => $db_handler->getPostalName($fromAddress->getPostalCode()), 'address' => $fromAddress->getFullAddress(), 'distance' => "0", 'duration' => "0");
     // Retter opp tegnsett-problemer
     $db->query("set names 'utf8'");
     $sql = "SELECT *, ( 6371 * acos( cos( radians(" . $db->real_escape_string($fromAddress->getLatitude()) . ") ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(" . $db->real_escape_string($fromAddress->getLongitude()) . ") ) + sin( radians(" . $db->real_escape_string($fromAddress->getLatitude()) . ") ) * sin( radians( lat ) ) ) ) AS distance FROM companies ORDER BY distance ASC LIMIT 0,5";
     $result = $db->query($sql);
     if (!$result) {
         echo "ERROR!: " . $db->error;
         die;
     }
     // Legger til alle resultater fra databasen i en array
     if ($result != null) {
         while (($row = $result->fetch_assoc()) !== null) {
             $fastfoodCompanyId[] = $row['id'];
             $fastfoodAddresses[] = $row['adresse'] . ", " . $row['postnr'] . ", Norge";
             $fastfoodAddressesShort[] = $row['adresse'] . ", " . $row['postnr'] . " " . $db_handler->getPostalName($row['postnr']);
             $fastfoodName[] = $row['navn'];
             $fastFoodOpenStatus[] = OpenHandler::getOpenStatus($db_handler->getOpeningHours($row['id']));
         }
     } else {
         echo "ingen resultater";
     }
     // Går gjennom alle adressene og finner hvilke som er nærmest (basert på reisetid)
     for ($i = 0; $i < sizeOf($fastfoodAddresses); $i++) {
         $toAddressOriginal = $fastfoodAddresses[$i];
         $fromAddressStr = str_replace(' ', '%20', $fromAddress->getFullAddress());
         $toAddress = str_replace(' ', '%20', $toAddressOriginal);
         $distanceUrl = "https://maps.googleapis.com/maps/api/distancematrix/json?origins=" . $fromAddressStr . "&destinations=" . $toAddress . "&mode=" . $travelMode . "&language=no_NO";
         if ($travelMode == "transit") {
             $distanceUrl .= "&key=AIzaSyBmk1TB45rSKaVCZW8ENNvhXuM86RpdAHc";
         }
         // API-key er nødvendig for transit
         $json = file_get_contents($distanceUrl);
         $data = json_decode($json, true);
         $distance = $data['rows'][0]['elements'][0]['distance']['text'];
         $travelTime = $data['rows'][0]['elements'][0]['duration']['text'];
         // Legger til informasjonen som ble hentet i en array
         $fastfoodInfo[] = array('company_id' => $fastfoodCompanyId[$i], 'name' => $fastfoodName[$i], 'address' => $fastfoodAddressesShort[$i], 'distance' => $distance, 'duration' => $travelTime, 'open_status' => $fastFoodOpenStatus[$i]);
     }
     //usort($fastfoodInfo, 'sortByOrder');
     // Lagrer informasjon om søket til databasen
     $db_handler->saveSearchAddress($ip, $fromAddress->getStreetAddress(), $fromAddress->getPostalCode());
     // Returnerer array som inneholder de nærmeste bedriftene
     return $fastfoodInfo;
 }