This shows up in the error log:
[19-Feb-2020 00:23:14 UTC] PHP Fatal error: Uncaught Error: Function name must be a string in /home/nerdonde/public_html/mekineer.com/feed.php:138
Stack trace:
#0 /home/nerdonde/public_html/mekineer.com/feed.php(26): rss_parseOptions()
#1 {main}
thrown in /home/nerdonde/public_html/mekineer.com/feed.php on line 138
[19-Feb-2020 00:23:21 UTC] PHP Fatal error: Uncaught Error: Function name must be a string in /home/nerdonde/public_html/mekineer.com/feed.php:138
Stack trace:
#0 /home/nerdonde/public_html/mekineer.com/feed.php(26): rss_parseOptions()
#1 {main}
thrown in /home/nerdonde/public_html/mekineer.com/feed.php on line 138
[19-Feb-2020 00:23:21 UTC] PHP Fatal error: Uncaught Error: Function name must be a string in /home/nerdonde/public_html/mekineer.com/feed.php:138
Stack trace:
#0 /home/nerdonde/public_html/mekineer.com/feed.php(26): rss_parseOptions()
#1 {main}
thrown in /home/nerdonde/public_html/mekineer.com/feed.php on line 138
Line 138 in feed.php reads: $opt[$name] = $INPUT->$val[0]($val[1], $val[2], true);
looking back at the function:
function rss_parseOptions() {
global $conf;
global $INPUT;
$opt = array();
foreach(array(
// Basic feed properties
// Plugins may probably want to add new values to these
// properties for implementing own feeds
// One of: list, search, recent
'feed_mode' => array('str', 'mode', 'recent'),
// One of: diff, page, rev, current
'link_to' => array('str', 'linkto', $conf['rss_linkto']),
// One of: abstract, diff, htmldiff, html
'item_content' => array('str', 'content', $conf['rss_content']),
// Special feed properties
// These are only used by certain feed_modes
// String, used for feed title, in list and rc mode
'namespace' => array('str', 'ns', null),
// Positive integer, only used in rc mode
'items' => array('int', 'num', $conf['recent']),
// Boolean, only used in rc mode
'show_minor' => array('bool', 'minor', false),
// String, only used in list mode
'sort' => array('str', 'sort', 'natural'),
// String, only used in search mode
'search_query' => array('str', 'q', null),
// One of: pages, media, both
'content_type' => array('str', 'view', $conf['rss_media'])
) as $name => $val) {
$opt[$name] = $INPUT->$val[0]($val[1], $val[2], true);
}
$opt['items'] = max(0, (int) $opt['items']);
$opt['show_minor'] = (bool) $opt['show_minor'];
$opt['sort'] = valid_input_set('sort', array('default' => 'natural', 'date'), $opt);
$opt['guardmail'] = ($conf['mailguard'] != '' && $conf['mailguard'] != 'none');
$type = $INPUT->valid(
'type',
array( 'rss', 'rss2', 'atom', 'atom1', 'rss1'),
$conf['rss_type']
);
switch($type) {
case 'rss':
$opt['feed_type'] = 'RSS0.91';
$opt['mime_type'] = 'text/xml';
break;
case 'rss2':
$opt['feed_type'] = 'RSS2.0';
$opt['mime_type'] = 'text/xml';
break;
case 'atom':
$opt['feed_type'] = 'ATOM0.3';
$opt['mime_type'] = 'application/xml';
break;
case 'atom1':
$opt['feed_type'] = 'ATOM1.0';
$opt['mime_type'] = 'application/atom+xml';
break;
default:
$opt['feed_type'] = 'RSS1.0';
$opt['mime_type'] = 'application/xml';
}
$eventData = array(
'opt' => &$opt,
);
trigger_event('FEED_OPTS_POSTPROCESS', $eventData);
return $opt;
}