didn't realise that collections (search by group) and search by contact weren't working on the matrix/network page and had never been properly ported. They're now ported - whether or not they work is another matter.

This commit is contained in:
friendica 2013-05-22 22:48:48 -07:00
parent 981a497fa0
commit a96d2177f7

View File

@ -433,11 +433,11 @@ function network_content(&$a, $update = 0, $load = false) {
$sql_extra = " AND `item`.`parent` IN ( SELECT `parent` FROM `item` WHERE (item_flags & " . intval(ITEM_THREAD_TOP) . ") $sql_options ) "; $sql_extra = " AND `item`.`parent` IN ( SELECT `parent` FROM `item` WHERE (item_flags & " . intval(ITEM_THREAD_TOP) . ") $sql_options ) ";
if($group) { if($group) {
$r = q("SELECT `name`, `id` FROM `group` WHERE `id` = %d AND `uid` = %d LIMIT 1", $r = q("SELECT * FROM `group` WHERE id = %d AND uid = %d LIMIT 1",
intval($group), intval($group),
intval($_SESSION['uid']) intval(local_user())
); );
if(! count($r)) { if(! $r) {
if($update) if($update)
killme(); killme();
notice( t('No such group') . EOL ); notice( t('No such group') . EOL );
@ -445,33 +445,33 @@ function network_content(&$a, $update = 0, $load = false) {
// NOTREACHED // NOTREACHED
} }
$contacts = expand_groups(array($group)); $contacts = expand_groups(array($arr['group']));
if((is_array($contacts)) && count($contacts)) { if((is_array($contacts)) && count($contacts)) {
$contact_str = implode(',',$contacts); $contact_str = implode(',',$contacts);
} }
else { else {
$contact_str = ' 0 '; $contact_str = ' 0 ';
info( t('Group is empty')); info( t('Group is empty'));
} }
$sql_extra = " AND item.parent IN ( SELECT DISTINCT parent FROM item WHERE true $sql_options AND ( author_xchan IN ( $contact_str ) OR owner_xchan in ( $contact_str) or allow_gid like '" . protect_sprintf('%<' . dbesc($r[0]['hash']) . '>%') . "' ) and item_restrict = 0 ) ";
}
$sql_extra = " AND `item`.`parent` IN ( SELECT DISTINCT(`parent`) FROM `item` WHERE 1 $sql_options AND ( `contact-id` IN ( $contact_str ) OR `allow_gid` like '" . protect_sprintf('%<' . intval($group) . '>%') . "' ) and deleted = 0 ) ";
$o = '<h2>' . t('Group: ') . $r[0]['name'] . '</h2>' . $o;
}
elseif($cid) { elseif($cid) {
$r = q("SELECT `id`,`name`,`network`,`writable`,`nurl` FROM `contact` WHERE `id` = %d $r = q("SELECT * from abook where abook_id = %d and abook_channel = %d and not ( abook_flags & " . intval(ABOOK_FLAG_BLOCKED) . ") limit 1",
AND `blocked` = 0 AND `pending` = 0 LIMIT 1", intval($cid),
intval($cid) intval(local_user())
); );
if(count($r)) { if($r) {
$sql_extra = " AND `item`.`parent` IN ( SELECT DISTINCT(`parent`) FROM `item` WHERE 1 $sql_options AND `contact-id` = " . intval($cid) . " and deleted = 0 ) "; $sql_extra = " AND item.parent IN ( SELECT DISTINCT parent FROM item WHERE true $sql_options AND uid = " . intval(local_user()) . " AND ( author_xchan = " . dbesc($r[0]['abook_xchan']) . " or owner_xchan = " . dbesc($r[0]['abook_xchan']) . " ) and item_restrict = 0 ) ";
$o = '<h2>' . t('Contact: ') . $r[0]['name'] . '</h2>' . $o; $o = '<h2>' . t('Contact: ') . $r[0]['name'] . '</h2>' . $o;
} }
else { else {
notice( t('Invalid contact.') . EOL); notice( t('Invalid contact.') . EOL);
goaway($a->get_baseurl(true) . '/network'); goaway($a->get_baseurl(true) . '/network');
// NOTREACHED }
}
} }