HEX
Server: LiteSpeed
System: Linux d8 4.18.0-553.121.1.lve.el8.x86_64 #1 SMP Thu Apr 30 16:40:41 UTC 2026 x86_64
User: wbwebdes (3015)
PHP: 8.1.31
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: /home/wbwebdes/domains/mailing.wb-cloud.nl/private_html/admin/communityfeed.php
<?php
/**
 * Build the news <ul> element from the rss feed items.
 *
 * @param ONYX_RSS $rss onyx-rss instance
 * @param int      $max the maximum number of feed items to return
 *
 * @return string the generated html or an empty string
 */
function buildNews($rss, $max)
{
    if ($rss->numItems() == 0) {
        return '';
    }

    $news = '';
    $count = 0;
    // reset index so that feed items can be processed more than once
    $rss->rss['output_index'] = -1;

    while ($item = $rss->getNextItem()) {
        ++$count;

        if ($count > $max) {
            break;
        }
        $date = $item['pubdate'];
        $date = str_replace('00:00:00 +0000', '', $date);
        $date = str_replace('00:00:00 +0100', '', $date);
        $date = str_replace('+0000', '', $date);
        if (preg_match('/\d+:\d+:\d+/', $date, $regs)) {
            $date = str_replace($regs[0], '', $date);
        }

        //# remove the '<p>&nbsp;</p>' in the descriptions
        $desc = $item['description'];
        $desc = str_replace('<p>&nbsp;</p>', '', $desc);
        $desc = '';

        $news .= '<li>
    <div class="publisheddate">'.$date.'</div> <a href="'.$item['link'].'?utm_source=phplist-'.VERSION.'&utm_medium=newspanel&utm_content='.urlencode($item['title']).'&utm_campaign=newspanel" target="_blank">'.$item['title'].'</a>
    '.$desc.'
    </li>';
    }

    return "<ul>$news</ul>";
}

/**
 * Generate the short and long community news lists from an rss feed then cache
 * in the session.
 */
$newsSize = 'long';

if (empty($_SESSION['adminloggedin'])
    || (isset($_GET['page']) && !in_array($_GET['page'], array('home', 'about', 'dashboard', 'community', 'login')))) {
    $newsSize = 'short';
}

if (isset($_SESSION['communitynews'][$newsSize])) {
    echo $_SESSION['communitynews'][$newsSize];

    return;
}

include 'onyxrss/onyx-rss.php';
$onyxRss = new ONYX_RSS();

if (!DEVVERSION) {
    $onyxRss->setDebugMode(false);
}
$onyxRss->setCachePath($GLOBALS['tmpdir']);
$onyxRss->setExpiryTime(1440);
$parseresult = $onyxRss->parse('https://www.phplist.org/newslist/feed/', 'phplistnews');

if ($parseresult) {
    $_SESSION['communitynews']['short'] = buildNews($onyxRss, 3);
    $_SESSION['communitynews']['long'] = buildNews($onyxRss, 10);
} else {
    $_SESSION['communitynews']['short'] = '';
    $_SESSION['communitynews']['long'] = '';
}

echo $_SESSION['communitynews'][$newsSize];