Merge pull request #9161 from MrPetovan/bug/9140-private-note-self-only
Add a self-only ACL block to personal notes jot
This commit is contained in:
commit
065ab017c7
|
@ -1137,28 +1137,11 @@ function status_editor(App $a, $x, $notes_cid = 0, $popup = false)
|
||||||
$jotplugins = '';
|
$jotplugins = '';
|
||||||
Hook::callAll('jot_tool', $jotplugins);
|
Hook::callAll('jot_tool', $jotplugins);
|
||||||
|
|
||||||
// Private/public post links for the non-JS ACL form
|
|
||||||
$private_post = 1;
|
|
||||||
if (!empty($_REQUEST['public'])) {
|
|
||||||
$private_post = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
$query_str = DI::args()->getQueryString();
|
$query_str = DI::args()->getQueryString();
|
||||||
if (strpos($query_str, 'public=1') !== false) {
|
if (strpos($query_str, 'public=1') !== false) {
|
||||||
$query_str = str_replace(['?public=1', '&public=1'], ['', ''], $query_str);
|
$query_str = str_replace(['?public=1', '&public=1'], ['', ''], $query_str);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* I think $a->query_string may never have ? in it, but I could be wrong
|
|
||||||
* It looks like it's from the index.php?q=[etc] rewrite that the web
|
|
||||||
* server does, which converts any ? to &, e.g. suggest&ignore=61 for suggest?ignore=61
|
|
||||||
*/
|
|
||||||
if (strpos($query_str, '?') === false) {
|
|
||||||
$public_post_link = '?public=1';
|
|
||||||
} else {
|
|
||||||
$public_post_link = '&public=1';
|
|
||||||
}
|
|
||||||
|
|
||||||
// $tpl = Renderer::replaceMacros($tpl,array('$jotplugins' => $jotplugins));
|
// $tpl = Renderer::replaceMacros($tpl,array('$jotplugins' => $jotplugins));
|
||||||
$tpl = Renderer::getMarkupTemplate("jot.tpl");
|
$tpl = Renderer::getMarkupTemplate("jot.tpl");
|
||||||
|
|
||||||
|
@ -1212,11 +1195,6 @@ function status_editor(App $a, $x, $notes_cid = 0, $popup = false)
|
||||||
|
|
||||||
// ACL permissions box
|
// ACL permissions box
|
||||||
'$acl' => $x['acl'],
|
'$acl' => $x['acl'],
|
||||||
'$group_perms' => DI::l10n()->t('Post to Groups'),
|
|
||||||
'$contact_perms' => DI::l10n()->t('Post to Contacts'),
|
|
||||||
'$private' => DI::l10n()->t('Private post'),
|
|
||||||
'$is_private' => $private_post,
|
|
||||||
'$public_link' => $public_post_link,
|
|
||||||
|
|
||||||
//jot nav tab (used in some themes)
|
//jot nav tab (used in some themes)
|
||||||
'$message' => DI::l10n()->t('Message'),
|
'$message' => DI::l10n()->t('Message'),
|
||||||
|
|
|
@ -55,7 +55,7 @@ function notes_content(App $a, $update = false)
|
||||||
'default_location' => $a->user['default-location'],
|
'default_location' => $a->user['default-location'],
|
||||||
'nickname' => $a->user['nickname'],
|
'nickname' => $a->user['nickname'],
|
||||||
'lockstate' => 'lock',
|
'lockstate' => 'lock',
|
||||||
'acl' => '',
|
'acl' => \Friendica\Core\ACL::getSelfOnlyHTML(local_user(), DI::l10n()->t('Personal notes are visible only by yourself.')),
|
||||||
'bang' => '',
|
'bang' => '',
|
||||||
'visitor' => 'block',
|
'visitor' => 'block',
|
||||||
'profile_uid' => local_user(),
|
'profile_uid' => local_user(),
|
||||||
|
|
|
@ -987,8 +987,6 @@ function photos_content(App $a)
|
||||||
'$uploadurl' => $ret['post_url'],
|
'$uploadurl' => $ret['post_url'],
|
||||||
|
|
||||||
// ACL permissions box
|
// ACL permissions box
|
||||||
'$group_perms' => DI::l10n()->t('Show to Groups'),
|
|
||||||
'$contact_perms' => DI::l10n()->t('Show to Contacts'),
|
|
||||||
'$return_path' => DI::args()->getQueryString(),
|
'$return_path' => DI::args()->getQueryString(),
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
@ -1352,8 +1350,6 @@ function photos_content(App $a)
|
||||||
'$delete' => DI::l10n()->t('Delete Photo'),
|
'$delete' => DI::l10n()->t('Delete Photo'),
|
||||||
|
|
||||||
// ACL permissions box
|
// ACL permissions box
|
||||||
'$group_perms' => DI::l10n()->t('Show to Groups'),
|
|
||||||
'$contact_perms' => DI::l10n()->t('Show to Contacts'),
|
|
||||||
'$return_path' => DI::args()->getQueryString(),
|
'$return_path' => DI::args()->getQueryString(),
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
|
@ -83,6 +83,27 @@ class ACL
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a minimal ACL block for self-only permissions
|
||||||
|
*
|
||||||
|
* @param int $localUserId
|
||||||
|
* @param string $explanation
|
||||||
|
* @return string
|
||||||
|
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
|
||||||
|
*/
|
||||||
|
public static function getSelfOnlyHTML(int $localUserId, string $explanation)
|
||||||
|
{
|
||||||
|
$selfPublicContactId = Contact::getPublicIdByUserId($localUserId);
|
||||||
|
|
||||||
|
$tpl = Renderer::getMarkupTemplate('acl/self_only.tpl');
|
||||||
|
$o = Renderer::replaceMacros($tpl, [
|
||||||
|
'$selfPublicContactId' => $selfPublicContactId,
|
||||||
|
'$explanation' => $explanation,
|
||||||
|
]);
|
||||||
|
|
||||||
|
return $o;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return the default permission of the provided user array
|
* Return the default permission of the provided user array
|
||||||
*
|
*
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
<input type="hidden" name="contact_allow" value="{{$selfPublicContactId}}">
|
||||||
|
<input type="hidden" name="group_allow" value="">
|
||||||
|
<input type="hidden" name="contact_deny" value="">
|
||||||
|
<input type="hidden" name="group_deny" value="">
|
||||||
|
<div class="alert alert-info" role="alert"><p>{{$explanation}}</p></div>
|
Loading…
Reference in New Issue
Block a user