summaryrefslogtreecommitdiff
path: root/classes
diff options
context:
space:
mode:
Diffstat (limited to 'classes')
-rw-r--r--classes/User.php26
1 files changed, 17 insertions, 9 deletions
diff --git a/classes/User.php b/classes/User.php
index 2bcb7c2a0..34151778c 100644
--- a/classes/User.php
+++ b/classes/User.php
@@ -999,17 +999,25 @@ class User extends Memcached_DataObject
function shareLocation()
{
- $share = true;
+ $cfg = common_config('location', 'share');
- $prefs = User_location_prefs::staticGet('user_id', $this->id);
+ if ($cfg == 'always') {
+ return true;
+ } else if ($cfg == 'never') {
+ return false;
+ } else { // user
+ $share = true;
- if (empty($prefs)) {
- $share = common_config('location', 'share');
- } else {
- $share = $prefs->share_location;
- $prefs->free();
- }
+ $prefs = User_location_prefs::staticGet('user_id', $this->id);
- return $share;
+ if (empty($prefs)) {
+ $share = common_config('location', 'sharedefault');
+ } else {
+ $share = $prefs->share_location;
+ $prefs->free();
+ }
+
+ return $share;
+ }
}
}