2) { $post_id = intval(argv(1)); if(! $post_id) goaway(z_root() . '/moderate'); $action = argv(2); $r = q("select * from item where uid = %d and id = %d and item_blocked = %d limit 1", intval(local_channel()), intval($post_id), intval(ITEM_MODERATED) ); if($r) { if($action === 'approve') { q("update item set item_blocked = 0 where uid = %d and id = %d", intval(local_channel()), intval($post_id) ); // update the parent's commented timestamp $z = q("select max(created) as commented from item where parent_mid = '%s' and uid = %d and item_delayed = 0 ", dbesc($r[0]['parent_mid']), intval(local_channel()) ); q("UPDATE item set commented = '%s', changed = '%s' WHERE id = %d", dbesc(($z) ? $z[0]['commented'] : (datetime_convert())), dbesc(datetime_convert()), intval($r[0]['parent']) ); notice( t('Comment approved') . EOL); } elseif($action === 'drop') { drop_item($post_id,false); notice( t('Comment deleted') . EOL); } $r = q("select * from item where id = %d", intval($post_id) ); if($r) { xchan_query($r); $sync_item = fetch_post_tags($r); build_sync_packet(local_channel(),array('item' => array(encode_item($sync_item[0],true)))); } if($action === 'approve') { \Zotlabs\Daemon\Master::Summon(array('Notifier', 'comment-new', $post_id)); } goaway(z_root() . '/moderate'); } } if($r) { xchan_query($r); $items = fetch_post_tags($r,true); } else { $items = array(); } $o = conversation($items,'moderate',false,'traditional'); return $o; } }