$uid = $r["uid"];
- $accessible = $uid ? DI::pConfig()->get($uid, 'system', 'accessible-photos') : false;
+ $accessible = $uid ? (bool)DI::pConfig()->get($uid, 'system', 'accessible-photos', false) : false;
$sql_acl = Security::getPermissionsSQLByUserId($uid, $accessible);
$backend_ref = $storage->put($Image->asString(), $backend_ref);
}
-
$fields = [
"uid" => $uid,
"contact-id" => $cid,
// Ensure to only modify photos that you own
$srch = '<' . intval($original_contact_id) . '>';
- $condition = ["(`allow_cid` = ? OR `allow_cid` IS NULL) AND
- (`allow_gid` = ? OR `allow_gid` IS NULL) AND
- (`deny_cid` = ? OR `deny_cid` IS NULL) AND
- (`deny_gid` = ? OR `deny_gid` IS NULL) AND
- `resource-id` = ? AND `uid` =?", $srch, '', '', '', $image_rid, $uid];
+ $condition = [
+ 'allow_cid' => $srch, 'allow_gid' => '', 'deny_cid' => '', 'deny_gid' => '',
+ 'resource-id' => $image_rid, 'uid' => $uid
+ ];
if (!Photo::exists($condition)) {
+ $photo = self::selectFirst(['allow_cid', 'allow_gid', 'deny_cid', 'deny_gid', 'uid'], ['resource-id' => $image_rid]);
+ if (!DBA::isResult($photo)) {
+ Logger::info('Image not found', ['resource-id' => $image_rid]);
+ } else {
+ Logger::info('Mismatching permissions', ['condition' => $condition, 'photo' => $photo]);
+ }
continue;
}
*/
$fields = ['allow_cid' => $str_contact_allow, 'allow_gid' => $str_group_allow,
- 'deny_cid' => $str_contact_deny, 'deny_gid' => $str_group_deny];
-
- if (DI::pConfig()->get($uid, 'system', 'accessible-photos')) {
- $fields['accessible'] = true;
- }
+ 'deny_cid' => $str_contact_deny, 'deny_gid' => $str_group_deny,
+ 'accessible' => DI::pConfig()->get($uid, 'system', 'accessible-photos', false)];
$condition = ['resource-id' => $image_rid, 'uid' => $uid];
Logger::info('Set permissions', ['condition' => $condition, 'permissions' => $fields]);