directory server sitelist module (needed for public site list and building friend suggestions for new sites/channels with no known contacts)
This commit is contained in:
parent
e265a943c8
commit
c86dfd2e0c
@ -274,6 +274,7 @@ function suggestion_query($uid, $myxchan, $start = 0, $limit = 80) {
|
||||
intval($limit)
|
||||
);
|
||||
|
||||
|
||||
/*
|
||||
$r = q("SELECT count(xlink.xchan) as `total`, gcontact.* from gcontact
|
||||
left join glink on glink.gcid = gcontact.id
|
||||
|
51
mod/sitelist.php
Normal file
51
mod/sitelist.php
Normal file
@ -0,0 +1,51 @@
|
||||
<?php /** @file */
|
||||
|
||||
function sitelist_init(&$a) {
|
||||
|
||||
$start = (($_REQUEST['start']) ? intval($_REQUEST['start']) : 0);
|
||||
$limit = ((intval($_REQUEST['limit'])) ? intval($_REQUEST['limit']) : 30);
|
||||
$order = (($_REQUEST['order']) ? $_REQUEST['order'] : 'random');
|
||||
$open = (($_REQUEST['open']) ? intval($_REQUEST['open']) : false);
|
||||
|
||||
|
||||
$sql_order = " order by site_url ";
|
||||
if($order == 'random')
|
||||
$sql_order = " order by rand() ";
|
||||
|
||||
$sql_limit = " limit $start, $limit ";
|
||||
|
||||
$sql_extra = "";
|
||||
if($open)
|
||||
$sql_extra = " and site_register = " . intval(REGISTER_OPEN) . " ";
|
||||
|
||||
|
||||
$result = array('success' => false);
|
||||
|
||||
$r = q("select count(site_url) as total from site where 1 $sql_extra ");
|
||||
|
||||
if($r)
|
||||
$result['total'] = intval($r[0]['total']);
|
||||
|
||||
$result['start'] = $start;
|
||||
$result['limit'] = $limit;
|
||||
|
||||
$r = q("select * from site where true $sql_extra $sql_order $sql_limit");
|
||||
|
||||
$result['results'] = 0;
|
||||
$result['entries'] = array();
|
||||
|
||||
if($r) {
|
||||
$result['success'] = true;
|
||||
$result['results'] = count($r);
|
||||
|
||||
foreach($r as $rr) {
|
||||
$result['entries'][] = array('url' => $rr['site_url']);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
echo json_encode($result);
|
||||
killme();
|
||||
|
||||
|
||||
}
|
Reference in New Issue
Block a user