Updated sup

This commit is contained in:
Evan Prodromou 2009-01-23 00:36:24 +01:00
parent cc5808cc28
commit c0d7ce8a3c
1 changed files with 16 additions and 18 deletions

View File

@ -21,44 +21,42 @@ if (!defined('LACONICA')) { exit(1); }
class SupAction extends Action
{
function handle($args)
{
parent::handle($args);
$seconds = $this->trimmed('seconds');
if (!$seconds) {
$seconds = 15;
}
$updates = $this->get_updates($seconds);
$updates = $this->getUpdates($seconds);
header('Content-Type: application/json; charset=utf-8');
print json_encode(array('updated_time' => date('c'),
'since_time' => date('c', time() - $seconds),
'available_periods' => $this->available_periods(),
'available_periods' => $this->availablePeriods(),
'period' => $seconds,
'updates' => $updates));
}
function available_periods()
function availablePeriods()
{
static $periods = array(86400, 43200, 21600, 7200,
3600, 1800, 600, 300, 120,
60, 30, 15);
60, 30, 15);
$available = array();
foreach ($periods as $period) {
$available[$period] = common_local_url('sup',
array('seconds' => $period));
}
return $available;
}
function get_updates($seconds)
function getUpdates($seconds)
{
$notice = new Notice();
@ -69,16 +67,16 @@ class SupAction extends Action
'FROM notice ' .
'WHERE created > (now() - ' . $seconds . ') ' .
'GROUP BY profile_id');
$updates = array();
while ($notice->fetch()) {
$updates[] = array($notice->profile_id, $notice->max_id);
}
return $updates;
}
function isReadOnly()
{
return true;