mod/branchtopic - move an off-topic comment to its own thread as a fresh wall-to-wall post and the same delivery permissions as its parent. No adjustments are made for complex delivery chains.

This commit is contained in:
friendica 2015-04-24 00:56:06 -07:00
parent 41343b32c5
commit b3ac1cd993
4 changed files with 1044 additions and 1046 deletions

View File

@ -470,7 +470,7 @@ function poco($a,$extended = false) {
$sql_extra = " and abook_flags = 0 ";
if($cid)
$sql_extra = sprintf(" and abook_id = %d ",intval($cid));
$sql_extra = sprintf(" and abook_id = %d and ( abook_flags & " . ABOOK_FLAG_HIDDEN . " ) = 0 ",intval($cid));
if($system_mode) {
$r = q("SELECT count(*) as `total` from abook where ( abook_flags & " . ABOOK_FLAG_SELF .

42
mod/branchtopic.php Normal file
View File

@ -0,0 +1,42 @@
<?php
function branchtopic_init(&$a) {
if(! local_channel())
return;
$item_id = 0;
if(argc() > 1)
$item_id = intval(argv(1));
if(! $item_id)
return;
$channel = $a->get_channel();
if(! $channel)
return;
$r = q("select * from item where id = %d and uid = %d and owner_xchan = '%s' and id != parent limit 1",
intval($item_id),
intval(local_channel()),
dbesc($channel['channel_hash'])
);
if(! $r)
return;
$p = q("select * from item where id = %d and uid = %d limit 1",
intval($r[0]['parent']),
intval(local_channel())
);
$x = q("update item set parent = id, item_flags = (item_flags | %d) where id = %d",
intval(ITEM_THREAD_TOP),
intval($item_id)
);
return;
}

File diff suppressed because it is too large Load Diff

View File

@ -1 +1 @@
2015-04-23.1011
2015-04-24.1012