aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfriendica <info@friendica.com>2014-05-08 17:08:34 -0700
committerfriendica <info@friendica.com>2014-05-08 17:08:34 -0700
commit2fe8bae7a59ae61b2b0708a480d250e46dab7673 (patch)
tree5c2a12c3e646ec08d87de75890df7c1c938260ec
parent350e6490b8e2e5e0d0e6ed20bdc80d6c86b9a382 (diff)
downloadvolse-hubzilla-2fe8bae7a59ae61b2b0708a480d250e46dab7673.tar.gz
volse-hubzilla-2fe8bae7a59ae61b2b0708a480d250e46dab7673.tar.bz2
volse-hubzilla-2fe8bae7a59ae61b2b0708a480d250e46dab7673.zip
show hidden connections in contact block if and only if the observer is the profile owner
-rwxr-xr-xinclude/text.php18
-rw-r--r--mod/viewconnections.php16
2 files changed, 26 insertions, 8 deletions
diff --git a/include/text.php b/include/text.php
index b36e550f9..0e136fe8e 100755
--- a/include/text.php
+++ b/include/text.php
@@ -705,12 +705,22 @@ function contact_block() {
if($shown == 0)
return;
+
+ $is_owner = ((local_user() && local_user() == $a->profile['uid']) ? true : false);
+
+ $abook_flags = ABOOK_FLAG_PENDING|ABOOK_FLAG_SELF;
+ $xchan_flags = XCHAN_FLAGS_ORPHAN|XCHAN_FLAGS_DELETED;
+ if(! $is_owner) {
+ $abook_flags = $abook_flags | ABOOK_FLAGS_HIDDEN;
+ $xchan_flags = $xchan_flags | XCHAN_FLAGS_HIDDEN;
+ }
+
if((! is_array($a->profile)) || ($a->profile['hide_friends']))
return $o;
$r = q("SELECT COUNT(abook_id) AS total FROM abook left join xchan on abook_xchan = xchan_hash WHERE abook_channel = %d and not ( abook_flags & %d ) and not (xchan_flags & %d)",
intval($a->profile['uid']),
- intval(ABOOK_FLAG_HIDDEN|ABOOK_FLAG_PENDING|ABOOK_FLAG_SELF),
- intval(XCHAN_FLAGS_HIDDEN|XCHAN_FLAGS_ORPHAN|XCHAN_FLAGS_DELETED)
+ intval($abook_flags),
+ intval($xchan_flags)
);
if(count($r)) {
$total = intval($r[0]['total']);
@@ -723,8 +733,8 @@ function contact_block() {
$r = q("SELECT abook.*, xchan.* FROM abook left join xchan on abook.abook_xchan = xchan.xchan_hash WHERE abook_channel = %d AND not ( abook_flags & %d) and not (xchan_flags & %d ) ORDER BY RAND() LIMIT %d",
intval($a->profile['uid']),
- intval(ABOOK_FLAG_HIDDEN|ABOOK_FLAG_PENDING|ABOOK_FLAG_SELF),
- intval(XCHAN_FLAGS_HIDDEN|XCHAN_FLAGS_ORPHAN|XCHAN_FLAGS_DELETED),
+ intval($abook_flags),
+ intval($xchan_flags),
intval($shown)
);
diff --git a/mod/viewconnections.php b/mod/viewconnections.php
index f5e7ab213..b6a6b483c 100644
--- a/mod/viewconnections.php
+++ b/mod/viewconnections.php
@@ -28,11 +28,19 @@ function viewconnections_content(&$a) {
return;
}
+ $is_owner = ((local_user() && local_user() == $a->profile['uid']) ? true : false);
+
+ $abook_flags = ABOOK_FLAG_PENDING|ABOOK_FLAG_SELF;
+ $xchan_flags = XCHAN_FLAGS_ORPHAN|XCHAN_FLAGS_DELETED;
+ if(! $is_owner) {
+ $abook_flags = $abook_flags | ABOOK_FLAGS_HIDDEN;
+ $xchan_flags = $xchan_flags | XCHAN_FLAGS_HIDDEN;
+ }
$r = q("SELECT count(*) as total FROM abook left join xchan on abook_xchan = xchan_hash where abook_channel = %d and not (abook_flags & %d ) and not ( xchan_flags & %d ) ",
intval($a->profile['uid']),
- intval(ABOOK_FLAG_HIDDEN|ABOOK_FLAG_PENDING|ABOOK_FLAG_SELF),
- intval(XCHAN_FLAGS_HIDDEN|XCHAN_FLAGS_ORPHAN|XCHAN_FLAGS_DELETED)
+ intval($abook_flags),
+ intval($xchan_flags)
);
if($r) {
$a->set_pager_total($r[0]['total']);
@@ -40,8 +48,8 @@ function viewconnections_content(&$a) {
$r = q("SELECT * FROM abook left join xchan on abook_xchan = xchan_hash where abook_channel = %d and not ( abook_flags & %d ) and not ( xchan_flags & %d ) order by xchan_name LIMIT %d , %d ",
intval($a->profile['uid']),
- intval(ABOOK_FLAG_HIDDEN|ABOOK_FLAG_PENDING|ABOOK_FLAG_SELF),
- intval(XCHAN_FLAGS_HIDDEN|XCHAN_FLAGS_ORPHAN|XCHAN_FLAGS_DELETED),
+ intval($abook_flags),
+ intval($xchan_flags),
intval($a->pager['start']),
intval($a->pager['itemspage'])
);