Provide backend ability to poke as a comment rather than top-level post

This commit is contained in:
friendica 2012-07-31 20:59:51 -07:00
parent 08c9185a7e
commit 764ee653ba
2 changed files with 45 additions and 12 deletions

View File

@ -27,8 +27,8 @@ function poke_init(&$a) {
if(! $contact_id) if(! $contact_id)
return; return;
$parent = ((x($_GET,'parent')) ? intval($_GET['parent']) : 0);
$private = ((x($_GET,'private')) ? intval($_GET['private']) : 0);
logger('poke: verb ' . $verb . ' contact ' . $contact_id, LOGGER_DEBUG); logger('poke: verb ' . $verb . ' contact ' . $contact_id, LOGGER_DEBUG);
@ -45,6 +45,35 @@ function poke_init(&$a) {
$target = $r[0]; $target = $r[0];
if($parent) {
$r = q("select uri, private, allow_cid, allow_gid, deny_cid, deny_gid
from item where id = %d and parent = %d and uid = %d limit 1",
intval($parent),
intval($parent),
intval($uid)
);
if(! count($r)) {
$parent_uri = $r[0]['uri'];
$private = $r[0]['private'];
$allow_cid = $r[0]['allow_cid'];
$allow_gid = $r[0]['allow_gid'];
$deny_cid = $r[0]['deny_cid'];
$deny_gid = $r[0]['deny_gid'];
}
}
else {
$private = ((x($_GET,'private')) ? intval($_GET['private']) : 0);
$allow_cid = (($private) ? '<' . $target['id']. '>' : $a->user['allow_cid']);
$allow_gid = (($private) ? '' : $a->user['allow_gid']);
$deny_cid = (($private) ? '' : $a->user['deny_cid']);
$deny_gid = (($private) ? '' : $a->user['deny_gid']);
}
$poster = $a->contact; $poster = $a->contact;
$uri = item_new_uri($a->get_hostname(),$owner_uid); $uri = item_new_uri($a->get_hostname(),$owner_uid);
@ -53,7 +82,7 @@ function poke_init(&$a) {
$arr['uid'] = $uid; $arr['uid'] = $uid;
$arr['uri'] = $uri; $arr['uri'] = $uri;
$arr['parent-uri'] = $uri; $arr['parent-uri'] = (($parent_uri) ? $parent_uri : $uri);
$arr['type'] = 'activity'; $arr['type'] = 'activity';
$arr['wall'] = 1; $arr['wall'] = 1;
$arr['contact-id'] = $poster['id']; $arr['contact-id'] = $poster['id'];
@ -64,10 +93,10 @@ function poke_init(&$a) {
$arr['author-link'] = $poster['url']; $arr['author-link'] = $poster['url'];
$arr['author-avatar'] = $poster['thumb']; $arr['author-avatar'] = $poster['thumb'];
$arr['title'] = ''; $arr['title'] = '';
$arr['allow_cid'] = (($private) ? '<' . $target['id']. '>' : $a->user['allow_cid']); $arr['allow_cid'] = $allow_cid;
$arr['allow_gid'] = (($private) ? '' : $a->user['allow_gid']); $arr['allow_gid'] = $allow_gid;
$arr['deny_cid'] = (($private) ? '' : $a->user['deny_cid']); $arr['deny_cid'] = $deny_cid;
$arr['deny_gid'] = (($private) ? '' : $a->user['deny_gid']); $arr['deny_gid'] = $deny_gid;
$arr['last-child'] = 1; $arr['last-child'] = 1;
$arr['visible'] = 1; $arr['visible'] = 1;
$arr['verb'] = $activity; $arr['verb'] = $activity;
@ -132,12 +161,12 @@ function poke_content(&$a) {
<script>$(document).ready(function() { <script>$(document).ready(function() {
var a; var a;
a = $("#recip").autocomplete({ a = $("#poke-recip").autocomplete({
serviceUrl: '$base/acl', serviceUrl: '$base/acl',
minChars: 2, minChars: 2,
width: 350, width: 350,
onSelect: function(value,data) { onSelect: function(value,data) {
$("#recip-complete").val(data); $("#poke-recip-complete").val(data);
} }
}); });
a.setOptions({ params: { type: 'a' }}); a.setOptions({ params: { type: 'a' }});
@ -148,6 +177,9 @@ function poke_content(&$a) {
</script> </script>
EOT; EOT;
$parent = ((x($_GET,'parent')) ? intval($_GET['parent']) : '0');
$verbs = get_poke_verbs(); $verbs = get_poke_verbs();
@ -165,6 +197,7 @@ EOT;
'$clabel' => t('Recipient'), '$clabel' => t('Recipient'),
'$choice' => t('Choose what you wish to do to recipient'), '$choice' => t('Choose what you wish to do to recipient'),
'$verbs' => $shortlist, '$verbs' => $shortlist,
'$parent' => $parent,
'$prv_desc' => t('Make this post private'), '$prv_desc' => t('Make this post private'),
'$submit' => t('Submit'), '$submit' => t('Submit'),
'$name' => $name, '$name' => $name,

View File

@ -8,9 +8,9 @@
<div id="poke-recip-label">$clabel</div> <div id="poke-recip-label">$clabel</div>
<br /> <br />
<input id="recip" type="text" size="64" maxlength="255" value="$name" name="pokename" autocomplete="off"> <input id="poke-recip" type="text" size="64" maxlength="255" value="$name" name="pokename" autocomplete="off" />
<input id="recip-complete" type="hidden" value="$id" name="cid"> <input id="poke-recip-complete" type="hidden" value="$id" name="cid" />
<input id="poke-parent" type="hidden" value="$parent" name="parent" />
<br /> <br />
<br /> <br />
<div id="poke-action-label">$choice</div> <div id="poke-action-label">$choice</div>
@ -24,7 +24,7 @@
<br /> <br />
<br /> <br />
<div id="poke-private-desc">$prv_desc</div> <div id="poke-private-desc">$prv_desc</div>
<input type="checkbox" name="private" value="1" /> <input type="checkbox" name="private" {{ if $parent }}disabled="disabled"{{ endif }} value="1" />
<br /> <br />
<br /> <br />
<input type="submit" name="submit" value="$submit" /> <input type="submit" name="submit" value="$submit" />