summaryrefslogtreecommitdiff
path: root/classes/Profile.php
diff options
context:
space:
mode:
authorBrenda Wallace <shiny@cpan.org>2009-10-30 09:41:04 +1300
committerBrenda Wallace <shiny@cpan.org>2009-10-30 09:41:04 +1300
commitc0f8c0178a3cccead97fb0800a514b0ac9dbde64 (patch)
tree9d2f26feccaa85e73a7bc4985a1f899d9b89f730 /classes/Profile.php
parent7f5fbee2e36889fae1d1c5043d76625e197e39ea (diff)
parent24c3a15124ab866bf7e9401f638156e102074608 (diff)
Merge commit 'mainline/0.9.x' into 0.9.x
Diffstat (limited to 'classes/Profile.php')
-rw-r--r--classes/Profile.php25
1 files changed, 25 insertions, 0 deletions
diff --git a/classes/Profile.php b/classes/Profile.php
index 53d07fb2f..7c1e9db33 100644
--- a/classes/Profile.php
+++ b/classes/Profile.php
@@ -562,4 +562,29 @@ class Profile extends Memcached_DataObject
$block->blocked = $this->id;
$block->delete();
}
+
+ // XXX: identical to Notice::getLocation.
+
+ function getLocation()
+ {
+ $location = null;
+
+ if (!empty($this->location_id) && !empty($this->location_ns)) {
+ $location = Location::fromId($this->location_id, $this->location_ns);
+ }
+
+ if (is_null($location)) { // no ID, or Location::fromId() failed
+ if (!empty($this->lat) && !empty($this->lon)) {
+ $location = Location::fromLatLon($this->lat, $this->lon);
+ }
+ }
+
+ if (is_null($location)) { // still haven't found it!
+ if (!empty($this->location)) {
+ $location = Location::fromName($this->location);
+ }
+ }
+
+ return $location;
+ }
}