From 26a6eca94e0ce90fb6c85c731590a5a32cbd89ab Mon Sep 17 00:00:00 2001 From: Mikael Nordfeldth Date: Fri, 1 Jan 2016 19:29:31 +0100 Subject: [PATCH] Location::fromOptions(Notice::locationOptions(...)) --- lib/location.php | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/lib/location.php b/lib/location.php index 191550d6d6..54e0d07acf 100644 --- a/lib/location.php +++ b/lib/location.php @@ -56,6 +56,23 @@ class Location var $names = array(); + /** + * Constructor that makes a Location from Notice::locationOptions(...) + * + * @param array $options an array for example provided by Notice::locationOptions(...) + * + * @return Location Location with the given options (lat, lon, id, name) + */ + static function fromOptions(array $options) { + $location = new Location(); + foreach (['lat', 'lon', 'location_id', 'location_ns'] as $opt) { + if (isset($options[$opt])) { + $location->$opt = $options[$opt]; + } + } + return $location; + } + /** * Constructor that makes a Location from a string name *