aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorzotlabs <mike@macgirvin.com>2017-02-12 17:40:18 -0800
committerzotlabs <mike@macgirvin.com>2017-02-12 17:40:18 -0800
commit2a525922929d5d9d54fd898e6f1658f0b959e667 (patch)
tree87a4859ebcd5a43a6123e201b99ef26447d6df69
parentccdfbc721fa0cf6710cce262cbaa219e2803e8c2 (diff)
downloadvolse-hubzilla-2a525922929d5d9d54fd898e6f1658f0b959e667.tar.gz
volse-hubzilla-2a525922929d5d9d54fd898e6f1658f0b959e667.tar.bz2
volse-hubzilla-2a525922929d5d9d54fd898e6f1658f0b959e667.zip
testing and bug fixes virtual profile groups
-rw-r--r--Zotlabs/Module/Lockview.php39
-rw-r--r--include/acl_selectors.php10
-rw-r--r--include/photos.php4
3 files changed, 49 insertions, 4 deletions
diff --git a/Zotlabs/Module/Lockview.php b/Zotlabs/Module/Lockview.php
index 7d1d8a43f..fc7d5c7c8 100644
--- a/Zotlabs/Module/Lockview.php
+++ b/Zotlabs/Module/Lockview.php
@@ -32,10 +32,10 @@ class Lockview extends \Zotlabs\Web\Controller {
if(! $item_id)
killme();
- if (!in_array($type, array('item','photo','event', 'menu_item', 'chatroom')))
+ if (! in_array($type, array('item', 'photo', 'attach', 'event', 'menu_item', 'chatroom')))
killme();
- //we have different naming in in menu_item table and chatroom table
+ // we have different naming in in menu_item table and chatroom table
switch($type) {
case 'menu_item':
$id = 'mitem_id';
@@ -101,6 +101,22 @@ class Lockview extends \Zotlabs\Web\Controller {
stringify_array_elms($deny_groups,true);
stringify_array_elms($deny_users,true);
+
+ $profile_groups = [];
+ if($allowed_groups) {
+ foreach($allowed_groups as $g) {
+ if(substr($g,0,4) === '\'vp.') {
+ $profile_groups[] = '\'' . substr($g,4);
+ }
+ }
+ }
+ if(count($profile_groups)) {
+ $r = q("SELECT profile_name FROM profile WHERE profile_guid IN ( " . implode(', ', $profile_groups) . " )");
+ if($r)
+ foreach($r as $rr)
+ $l[] = '<li><b>' . t('Profile','acl') . ' ' . $rr['profile_name'] . '</b></li>';
+ }
+
if(count($allowed_groups)) {
$r = q("SELECT gname FROM groups WHERE hash IN ( " . implode(', ', $allowed_groups) . " )");
if($r)
@@ -120,6 +136,25 @@ class Lockview extends \Zotlabs\Web\Controller {
}
}
}
+
+
+ $profile_groups = [];
+ if($deny_groups) {
+ foreach($deny_groups as $g) {
+ if(substr($g,0,4) === '\'vp.') {
+ $profile_groups[] = '\'' . substr($g,4);
+ }
+ }
+ }
+ if(count($profile_groups)) {
+ $r = q("SELECT profile_name FROM profile WHERE profile_guid IN ( " . implode(', ', $profile_groups) . " )");
+ if($r)
+ foreach($r as $rr)
+ $l[] = '<li><b><strike>' . t('Profile','acl') . ' ' . $rr['profile_name'] . '</strike></b></li>';
+ }
+
+
+
if(count($deny_groups)) {
$r = q("SELECT gname FROM groups WHERE hash IN ( " . implode(', ', $deny_groups) . " )");
if($r)
diff --git a/include/acl_selectors.php b/include/acl_selectors.php
index dcf0fe9a2..09c24f82c 100644
--- a/include/acl_selectors.php
+++ b/include/acl_selectors.php
@@ -174,6 +174,16 @@ function populate_acl($defaults = null,$show_jotnets = true, $emptyACL_descripti
$custom = false;
}
+ $r = q("SELECT id, profile_guid, profile_name from profile where is_default = 0 and uid = %d order by profile_name",
+ intval(local_channel())
+ );
+ if($r) {
+ foreach($r as $rv) {
+ $selected = (($single_group && 'vp.' . $rr['hash'] === $allow_gid[0]) ? ' selected = "selected" ' : '');
+ $groups .= '<option id="' . 'vp' . $rv['id'] . '" value="' . 'vp.' . $rv['profile_guid'] . '"' . $selected . '>' . t('Profile','acl') . ' ' . $rv['profile_name'] . '</option>' . "\r\n";
+ }
+ }
+
$r = q("SELECT id, hash, gname FROM groups WHERE deleted = 0 AND uid = %d ORDER BY gname ASC",
intval(local_channel())
);
diff --git a/include/photos.php b/include/photos.php
index 4cd5952f9..c0f7dc8c4 100644
--- a/include/photos.php
+++ b/include/photos.php
@@ -750,14 +750,14 @@ function photo_profile_setperms($channel_id,$resource_id,$profile_id) {
else {
$r = q("update photo set allow_cid = '', allow_gid = '%s', deny_cid = '', deny_gid = ''
where resource_id = '%s' and uid = %d",
- dbesc('vp.' . $profile_guid),
+ dbesc('<vp.' . $profile_guid . '>'),
dbesc($resource_id),
intval($channel_id)
);
$r = q("update attach set allow_cid = '', allow_gid = '%s', deny_cid = '', deny_gid = ''
where hash = '%s' and uid = %d",
- dbesc('vp.' . $profile_guid),
+ dbesc('<vp.' . $profile_guid . '>'),
dbesc($resource_id),
intval($channel_id)
);