friendica/mod/dirfind.php
Friendika 2206d894b3 add contact_widgets and provide widgets on appropriate pages, fix the saved search widget
fix directory page on testbubble, don't use system theme for community, directory, and search if the viewer is logged in.
2011-10-11 19:27:58 -07:00

66 lines
1.3 KiB
PHP

<?php
function dirfind_init(&$a) {
require_once('include/contact_widgets.php');
if(! x($a->page,'aside'))
$a->page['aside'] = '';
$a->page['aside'] .= follow_widget();
$a->page['aside'] .= findpeople_widget();
}
function dirfind_content(&$a) {
$search = notags(trim($_REQUEST['search']));
$o = '';
$o .= '<h2>' . t('People Search') . ' - ' . $search . '</h2>';
if($search) {
$p = (($a->pager['page'] != 1) ? '&p=' . $a->pager['page'] : '');
if(strlen(get_config('system','directory_submit_url')))
$x = fetch_url('http://dir.friendika.com/lsearch?f=' . $p . '&search=' . urlencode($search));
//TODO fallback local search if global dir not available.
// else
// $x = post_url($a->get_baseurl() . '/lsearch', $params);
$j = json_decode($x);
if($j->total) {
$a->set_pager_total($j->total);
$a->set_pager_itemspage($j->items_page);
}
if(count($j->results)) {
$tpl = get_markup_template('match.tpl');
foreach($j->results as $jj) {
$o .= replace_macros($tpl,array(
'$url' => $jj->url,
'$name' => $jj->name,
'$photo' => $jj->photo,
'$tags' => $jj->tags
));
}
}
else {
info( t('No matches') . EOL);
}
}
$o .= '<div class="clear"></div>';
$o .= paginate($a);
return $o;
}