streams/Code/Module/Feed.php

47 lines
1.5 KiB
PHP
Raw Normal View History

2016-04-19 03:38:38 +00:00
<?php
2021-12-03 03:01:39 +00:00
2022-02-16 04:08:28 +00:00
namespace Code\Module;
2016-04-19 03:38:38 +00:00
2022-02-16 04:08:28 +00:00
use Code\Web\Controller;
use Code\Lib\Channel;
2019-06-11 06:39:17 +00:00
require_once('include/feedutils.php');
2016-04-19 03:38:38 +00:00
2021-12-02 23:02:31 +00:00
class Feed extends Controller
{
public function init()
{
$params = [];
$params['begin'] = ((x($_REQUEST, 'date_begin')) ? $_REQUEST['date_begin'] : NULL_DATE);
$params['end'] = ((x($_REQUEST, 'date_end')) ? $_REQUEST['date_end'] : '');
$params['type'] = ((stristr(argv(0), 'json')) ? 'json' : 'xml');
$params['pages'] = ((x($_REQUEST, 'pages')) ? intval($_REQUEST['pages']) : 0);
$params['top'] = ((x($_REQUEST, 'top')) ? intval($_REQUEST['top']) : 0);
$params['start'] = ((x($_REQUEST, 'start')) ? intval($_REQUEST['start']) : 0);
$params['records'] = ((x($_REQUEST, 'records')) ? intval($_REQUEST['records']) : 40);
$params['direction'] = ((x($_REQUEST, 'direction')) ? dbesc($_REQUEST['direction']) : 'desc');
$params['cat'] = ((x($_REQUEST, 'cat')) ? escape_tags($_REQUEST['cat']) : '');
$params['compat'] = ((x($_REQUEST, 'compat')) ? intval($_REQUEST['compat']) : 0);
if (!in_array($params['direction'], ['asc', 'desc'])) {
$params['direction'] = 'desc';
}
if (argc() > 1) {
2022-01-25 01:26:12 +00:00
$channel = Channel::from_username(argv(1));
2021-12-02 23:02:31 +00:00
if (!$channel) {
killme();
}
logger('public feed request from ' . $_SERVER['REMOTE_ADDR'] . ' for ' . $channel['channel_address']);
echo get_public_feed($channel, $params);
killme();
}
}
2016-04-19 03:38:38 +00:00
}