diff options
author | Mario Vavti <mario@mariovavti.com> | 2018-08-24 14:44:45 +0200 |
---|---|---|
committer | Mario Vavti <mario@mariovavti.com> | 2018-08-24 14:44:45 +0200 |
commit | f036c25dca3bbf18b994dff3b32492bef0ff4d50 (patch) | |
tree | 508bb52dddcca5af3321f548aad3db30307ea0aa /include/items.php | |
parent | 7fc4292ed866026552add794d573d521481a0519 (diff) | |
parent | 7018da3f127e9d2abdb359516d079fc038a4c2a3 (diff) | |
download | volse-hubzilla-f036c25dca3bbf18b994dff3b32492bef0ff4d50.tar.gz volse-hubzilla-f036c25dca3bbf18b994dff3b32492bef0ff4d50.tar.bz2 volse-hubzilla-f036c25dca3bbf18b994dff3b32492bef0ff4d50.zip |
Merge remote-tracking branch 'mike/master' into dev
Diffstat (limited to 'include/items.php')
-rwxr-xr-x | include/items.php | 75 |
1 files changed, 48 insertions, 27 deletions
diff --git a/include/items.php b/include/items.php index ee7bfd5bc..b0f6a89cf 100755 --- a/include/items.php +++ b/include/items.php @@ -4,7 +4,13 @@ * @brief Items related functions. */ -use Zotlabs\Lib as Zlib; +use Zotlabs\Lib\Enotify; +use Zotlabs\Lib\MarkdownSoap; +use Zotlabs\Lib\MessageFilter; +use Zotlabs\Lib\IConfig; +use Zotlabs\Access\PermissionLimits; +use Zotlabs\Access\AccessList; +use Zotlabs\Daemon\Master; require_once('include/bbcode.php'); require_once('include/oembed.php'); @@ -379,7 +385,7 @@ function post_activity_item($arr, $allow_code = false, $deliver = true) { return $ret; } - $arr['public_policy'] = ((array_key_exists('public_policy',$arr)) ? escape_tags($arr['public_policy']) : map_scope(\Zotlabs\Access\PermissionLimits::Get($channel['channel_id'],'view_stream'),true)); + $arr['public_policy'] = ((array_key_exists('public_policy',$arr)) ? escape_tags($arr['public_policy']) : map_scope(PermissionLimits::Get($channel['channel_id'],'view_stream'),true)); if($arr['public_policy']) $arr['item_private'] = 1; @@ -407,7 +413,7 @@ function post_activity_item($arr, $allow_code = false, $deliver = true) { $arr['deny_gid'] = $channel['channel_deny_gid']; } - $arr['comment_policy'] = map_scope(\Zotlabs\Access\PermissionLimits::Get($channel['channel_id'],'post_comments')); + $arr['comment_policy'] = map_scope(PermissionLimits::Get($channel['channel_id'],'post_comments')); if ((! $arr['plink']) && (intval($arr['item_thread_top']))) { $arr['plink'] = substr(z_root() . '/channel/' . $channel['channel_address'] . '/?f=&mid=' . urlencode($arr['mid']),0,190); @@ -446,7 +452,7 @@ function post_activity_item($arr, $allow_code = false, $deliver = true) { } if($post_id && $deliver) { - Zotlabs\Daemon\Master::Summon(array('Notifier','activity',$post_id)); + Master::Summon([ 'Notifier','activity',$post_id ]); } $ret['success'] = true; @@ -744,7 +750,7 @@ function get_item_elements($x,$allow_code = false) { // was generated on the escaped content. if($arr['mimetype'] === 'text/markdown') - $arr['body'] = \Zotlabs\Lib\MarkdownSoap::unescape($arr['body']); + $arr['body'] = MarkdownSoap::unescape($arr['body']); if(array_key_exists('revision',$x)) { @@ -1003,7 +1009,7 @@ function encode_item($item,$mirror = false) { ); if($r) - $comment_scope = \Zotlabs\Access\PermissionLimits::Get($item['uid'],'post_comments'); + $comment_scope = PermissionLimits::Get($item['uid'],'post_comments'); else $comment_scope = 0; @@ -2439,7 +2445,7 @@ function send_status_notifications($post_id,$item) { return; - Zlib\Enotify::submit(array( + Enotify::submit(array( 'type' => NOTIFY_COMMENT, 'from_xchan' => $item['author_xchan'], 'to_xchan' => $r[0]['channel_hash'], @@ -2532,7 +2538,7 @@ function tag_deliver($uid, $item_id) { $verb = urldecode(substr($item['verb'],strpos($item['verb'],'#')+1)); if($poke_notify) { - Zlib\Enotify::submit(array( + Enotify::submit(array( 'to_xchan' => $u[0]['channel_hash'], 'from_xchan' => $item['author_xchan'], 'type' => NOTIFY_POKE, @@ -2686,7 +2692,7 @@ function tag_deliver($uid, $item_id) { * Kill two birds with one stone. As long as we're here, send a mention notification. */ - Zlib\Enotify::submit(array( + Enotify::submit(array( 'to_xchan' => $u[0]['channel_hash'], 'from_xchan' => $item['author_xchan'], 'type' => NOTIFY_TAGSELF, @@ -2988,7 +2994,7 @@ function start_delivery_chain($channel, $item, $item_id, $parent) { $private = (($channel['channel_allow_cid'] || $channel['channel_allow_gid'] || $channel['channel_deny_cid'] || $channel['channel_deny_gid']) ? 1 : 0); - $new_public_policy = map_scope(\Zotlabs\Access\PermissionLimits::Get($channel['channel_id'],'view_stream'),true); + $new_public_policy = map_scope(PermissionLimits::Get($channel['channel_id'],'view_stream'),true); if((! $private) && $new_public_policy) $private = 1; @@ -3031,7 +3037,7 @@ function start_delivery_chain($channel, $item, $item_id, $parent) { dbesc($channel['channel_deny_gid']), intval($private), dbesc($new_public_policy), - dbesc(map_scope(\Zotlabs\Access\PermissionLimits::Get($channel['channel_id'],'post_comments'))), + dbesc(map_scope(PermissionLimits::Get($channel['channel_id'],'post_comments'))), dbesc($title), dbesc($body), intval($item_wall), @@ -3040,7 +3046,7 @@ function start_delivery_chain($channel, $item, $item_id, $parent) { ); if($r) - Zotlabs\Daemon\Master::Summon(array('Notifier','tgroup',$item_id)); + Master::Summon([ 'Notifier','tgroup',$item_id ]); else { logger('start_delivery_chain: failed to update item'); // reset the source xchan to prevent loops @@ -3105,7 +3111,7 @@ function check_item_source($uid, $item) { return true; } - if (\Zotlabs\Lib\MessageFilter::evaluate($item, $r[0]['src_patt'], EMPTY_STR)) { + if (MessageFilter::evaluate($item, $r[0]['src_patt'], EMPTY_STR)) { logger('source: text filter success'); return true; } @@ -3128,7 +3134,7 @@ function post_is_importable($item,$abook) { if(! ($abook['abook_incl'] || $abook['abook_excl'])) return true; - return \Zotlabs\Lib\MessageFilter::evaluate($item,$abook['abook_incl'],$abook['abook_excl']); + return MessageFilter::evaluate($item,$abook['abook_incl'],$abook['abook_excl']); } @@ -3264,7 +3270,7 @@ function mail_store($arr) { 'otype' => 'mail' ); - Zlib\Enotify::submit($notif_params); + Enotify::submit($notif_params); } if($arr['conv_guid']) { @@ -3547,8 +3553,9 @@ function drop_items($items,$interactive = false,$stage = DROPITEM_NORMAL,$force // multiple threads may have been deleted, send an expire notification - if($uid) - Zotlabs\Daemon\Master::Summon(array('Notifier','expire',$uid)); + if($uid) { + Master::Summon([ 'Notifier','expire',$uid ]); + } } @@ -3656,8 +3663,9 @@ function drop_item($id,$interactive = true,$stage = DROPITEM_NORMAL,$force = fal // We'll rely on the undocumented behaviour that DROPITEM_PHASE1 is (hopefully) only // set if we know we're going to send delete notifications out to others. - if((intval($item['item_wall']) && ($stage != DROPITEM_PHASE2)) || ($stage == DROPITEM_PHASE1)) - Zotlabs\Daemon\Master::Summon(array('Notifier','drop',$notify_id)); + if((intval($item['item_wall']) && ($stage != DROPITEM_PHASE2)) || ($stage == DROPITEM_PHASE1)) { + Master::Summon([ 'Notifier','drop',$notify_id ]); + } goaway(z_root() . '/' . $_SESSION['return_url']); } @@ -3781,21 +3789,34 @@ function delete_item_lowlevel($item, $stage = DROPITEM_NORMAL, $force = false) { * @brief Return the first post date. * * @param int $uid - * @param boolean $wall (optional) default false + * @param boolean $wall (optional) no longer used * @return string|boolean date string, otherwise false */ function first_post_date($uid, $wall = false) { - $wall_sql = (($wall) ? " and item_wall = 1 " : "" ); - $item_normal = item_normal(); + $sql_extra = ''; + + switch(App::$module) { + case 'articles': + $sql_extra .= " and item_type = 7 "; + $item_normal = " and item.item_hidden = 0 and item.item_type = 7 and item.item_deleted = 0 + and item.item_unpublished = 0 and item.item_delayed = 0 and item.item_pending_remove = 0 + and item.item_blocked = 0 "; + break; + case 'channel': + $sql_extra = " and item_wall = 1 "; + default: + $item_normal = item_normal(); + break; + } $r = q("select id, created from item - where uid = %d and id = parent $item_normal $wall_sql + where uid = %d and id = parent $item_normal $sql_extra order by created asc limit 1", intval($uid) ); + if($r) { -// logger('first_post_date: ' . $r[0]['id'] . ' ' . $r[0]['created'], LOGGER_DATA); return substr(datetime_convert('',date_default_timezone_get(),$r[0]['created']),0,10); } @@ -4393,7 +4414,7 @@ function update_remote_id($channel,$post_id,$webpage,$pagetitle,$namespace,$remo // sixteen bytes of the mid - which makes the link portable and not quite as daunting // as the entire mid. If it were the post_id the link would be less portable. - \Zotlabs\Lib\IConfig::Set( + IConfig::Set( intval($post_id), 'system', $page_type, @@ -4526,7 +4547,7 @@ function send_profile_photo_activity($channel,$photo,$profile) { $arr['body'] = sprintf($t,$channel['channel_name'],$ptext) . "\n\n" . $ltext; - $acl = new Zotlabs\Access\AccessList($channel); + $acl = new AccessList($channel); $x = $acl->get(); $arr['allow_cid'] = $x['allow_cid']; @@ -4757,7 +4778,7 @@ function item_create_edit_activity($post) { } } - \Zotlabs\Daemon\Master::Summon(array('Notifier', 'edit_activity', $post_id)); + Master::Summon([ 'Notifier', 'edit_activity', $post_id ]); } /** |