-
Notifications
You must be signed in to change notification settings - Fork 1
/
LocnLocation.php
65 lines (63 loc) · 1.86 KB
/
LocnLocation.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<?php
/**
*
* Basic representation of a Location, as defined in the LOCN vocabulary
*
* Copyright 2016 Michele Maresca and Cristiano Longo
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* @author Michele Maresca
* @author Cristiano Longo
*/
class LocnLocation {
public $name;
public $city;
public $address;
public $houseNumber;
public $lat;
public $long;
public $id;
/**
*
* @param String $name
* not null, used to identify the location
* @param String $city
* @param String $address
* @param String $houseNumber
* @param double $lat
* @param double $long
*/
public function __construct($name, $city, $address, $houseNumber, $lat, $long) {
$this->name = $name;
$this->city = $city;
$this->address = $address;
$this->houseNumber = $houseNumber;
$this->lat = $lat;
$this->long = $long;
$this->id = $this->generateId($name, $city, $address, $houseNumber);
}
/**
* Create a unique identifier for this location
*/
private function generateId($name, $city, $address, $houseNumber){
if ($name!=null && strlen($name)>0)
return $name;
$city=$city==null ? '' : $city;
$address=$address==null ? '' : $address;
$houseNumber=$houseNumber==null ? '' : $houseNumber;
return "$city-$address-$houseNumber";
}
}
?>