X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fpoke.php;h=6ebb8632c18b3a24bc229b2c300fc1a8e346e97f;hb=1ec5c6b2840cedbe21e089f4ef4404d22a65031e;hp=bff3ebdf2c1ec3dca50acd5ffe0c2f94dee9b76a;hpb=d49f986d1eb6894dd948577288357b6c1755e3d3;p=friendica.git diff --git a/mod/poke.php b/mod/poke.php index bff3ebdf2c..6ebb8632c1 100644 --- a/mod/poke.php +++ b/mod/poke.php @@ -18,39 +18,40 @@ use Friendica\Core\Addon; use Friendica\Core\L10n; use Friendica\Core\System; use Friendica\Core\Worker; -use Friendica\Database\DBM; +use Friendica\Database\DBA; +use Friendica\Model\Item; require_once 'include/security.php'; -require_once 'include/bbcode.php'; require_once 'include/items.php'; -function poke_init(App $a) { - - if (! local_user()) { +function poke_init(App $a) +{ + if (!local_user()) { return; } $uid = local_user(); - $verb = notags(trim($_GET['verb'])); - if (! $verb) { + if (empty($_GET['verb'])) { return; } + $verb = notags(trim($_GET['verb'])); + $verbs = get_poke_verbs(); - if (! array_key_exists($verb,$verbs)) { + if (!array_key_exists($verb, $verbs)) { return; } $activity = ACTIVITY_POKE . '#' . urlencode($verbs[$verb][0]); $contact_id = intval($_GET['cid']); - if (! $contact_id) { + if (!$contact_id) { return; } - $parent = ((x($_GET,'parent')) ? intval($_GET['parent']) : 0); + $parent = (x($_GET,'parent') ? intval($_GET['parent']) : 0); logger('poke: verb ' . $verb . ' contact ' . $contact_id, LOGGER_DEBUG); @@ -61,50 +62,45 @@ function poke_init(App $a) { intval($uid) ); - if (! DBM::is_result($r)) { + if (!DBA::isResult($r)) { logger('poke: no contact ' . $contact_id); return; } $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 (DBM::is_result($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']; + if ($parent) { + $fields = ['uri', 'private', 'allow_cid', 'allow_gid', 'deny_cid', 'deny_gid']; + $condition = ['id' => $parent, 'parent' => $parent, 'uid' => $uid]; + $item = Item::selectFirst($fields, $condition); + + if (DBA::isResult($item)) { + $parent_uri = $item['uri']; + $private = $item['private']; + $allow_cid = $item['allow_cid']; + $allow_gid = $item['allow_gid']; + $deny_cid = $item['deny_cid']; + $deny_gid = $item['deny_gid']; } - } - else { + } else { + $private = (x($_GET,'private') ? intval($_GET['private']) : 0); - $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']); + $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; - $uri = item_new_uri($a->get_hostname(),$uid); + $uri = Item::newURI($uid); $arr = []; - $arr['guid'] = get_guid(32); + $arr['guid'] = System::createUUID(); $arr['uid'] = $uid; $arr['uri'] = $uri; - $arr['parent-uri'] = (($parent_uri) ? $parent_uri : $uri); - $arr['type'] = 'activity'; + $arr['parent-uri'] = (!empty($parent_uri) ? $parent_uri : $uri); $arr['wall'] = 1; $arr['contact-id'] = $poster['id']; $arr['owner-name'] = $poster['name']; @@ -124,37 +120,27 @@ function poke_init(App $a) { $arr['object-type'] = ACTIVITY_OBJ_PERSON; $arr['origin'] = 1; - $arr['body'] = '[url=' . $poster['url'] . ']' . $poster['name'] . '[/url]' . ' ' . t($verbs[$verb][0]) . ' ' . '[url=' . $target['url'] . ']' . $target['name'] . '[/url]'; + $arr['body'] = '[url=' . $poster['url'] . ']' . $poster['name'] . '[/url]' . ' ' . L10n::t($verbs[$verb][0]) . ' ' . '[url=' . $target['url'] . ']' . $target['name'] . '[/url]'; - $arr['object'] = '' . ACTIVITY_OBJ_PERSON . '' . $target['name'] . '' . System::baseUrl() . '/contact/' . $target['id'] . ''; + $arr['object'] = '' . ACTIVITY_OBJ_PERSON . '' . $target['name'] . '' . $target['url'] . ''; $arr['object'] .= '' . xmlify('' . "\n"); $arr['object'] .= xmlify('' . "\n"); $arr['object'] .= '' . "\n"; - $item_id = item_store($arr); - if($item_id) { - //q("UPDATE `item` SET `plink` = '%s' WHERE `uid` = %d AND `id` = %d", - // dbesc(System::baseUrl() . '/display/' . $poster['nickname'] . '/' . $item_id), - // intval($uid), - // intval($item_id) - //); + $item_id = Item::insert($arr); + if ($item_id) { Worker::add(PRIORITY_HIGH, "Notifier", "tag", $item_id); } - Addon::callHooks('post_local_end', $arr); - Worker::add(PRIORITY_HIGH, "Notifier", "like", $post_id); - return; } - - -function poke_content(App $a) { - - if (! local_user()) { +function poke_content(App $a) +{ + if (!local_user()) { notice(L10n::t('Permission denied.') . EOL); return; } @@ -162,17 +148,17 @@ function poke_content(App $a) { $name = ''; $id = ''; - if(intval($_GET['c'])) { - $r = q("SELECT `id`,`name` FROM `contact` WHERE `id` = %d AND `uid` = %d LIMIT 1", - intval($_GET['c']), - intval(local_user()) - ); - if (DBM::is_result($r)) { - $name = $r[0]['name']; - $id = $r[0]['id']; - } + if (empty($_GET['c'])) { + return; + } + + $contact = DBA::selectFirst('contact', ['id', 'name'], ['id' => $_GET['c'], 'uid' => local_user()]); + if (!DBA::isResult($contact)) { + return; } + $name = $contact['name']; + $id = $contact['id']; $base = System::baseUrl(); @@ -183,32 +169,32 @@ function poke_content(App $a) { ]); - $parent = ((x($_GET,'parent')) ? intval($_GET['parent']) : '0'); + $parent = (x($_GET,'parent') ? intval($_GET['parent']) : '0'); $verbs = get_poke_verbs(); $shortlist = []; - foreach($verbs as $k => $v) - if($v[1] !== 'NOTRANSLATION') - $shortlist[] = [$k,$v[1]]; - + foreach ($verbs as $k => $v) { + if ($v[1] !== 'NOTRANSLATION') { + $shortlist[] = [$k, $v[1]]; + } + } $tpl = get_markup_template('poke_content.tpl'); $o = replace_macros($tpl,[ - '$title' => t('Poke/Prod'), - '$desc' => t('poke, prod or do other things to somebody'), - '$clabel' => t('Recipient'), - '$choice' => t('Choose what you wish to do to recipient'), + '$title' => L10n::t('Poke/Prod'), + '$desc' => L10n::t('poke, prod or do other things to somebody'), + '$clabel' => L10n::t('Recipient'), + '$choice' => L10n::t('Choose what you wish to do to recipient'), '$verbs' => $shortlist, '$parent' => $parent, - '$prv_desc' => t('Make this post private'), - '$submit' => t('Submit'), + '$prv_desc' => L10n::t('Make this post private'), + '$submit' => L10n::t('Submit'), '$name' => $name, '$id' => $id ]); return $o; - }