Пример #1
0
 /**
  * @return string
  */
 public static function decode($url, $width, $height)
 {
     $config = parent::loadConfig(__DIR__);
     if (empty($url) || empty($config['link'])) {
         return $url;
     }
     $charset = !empty($config['charset']) ? $config['charset'] : "UTF-8";
     $ret = "<a href='" . sprintf($config['link'], urlencode(XoopsLocale::convert_encoding($url, $charset))) . "' rel='external' title=''>{$text}</a>";
     return $ret;
 }
Пример #2
0
function buildRssFeedCache($rssurl)
{
    $snoopy = new Snoopy();
    $cnt = 0;
    foreach ($rssurl as $url) {
        if ($snoopy->fetch($url)) {
            $rssdata = $snoopy->results;
            $rss2parser = new XoopsXmlRss2Parser($rssdata);
            if (false != $rss2parser->parse()) {
                $_items = $rss2parser->getItems();
                $count = count($_items);
                for ($i = 0; $i < $count; $i++) {
                    $_items[$i]['title'] = XoopsLocale::convert_encoding($_items[$i]['title'], XoopsLocale::getCharset(), 'UTF-8');
                    $_items[$i]['description'] = XoopsLocale::convert_encoding($_items[$i]['description'], XoopsLocale::getCharset(), 'UTF-8');
                    $items[(string) strtotime($_items[$i]['pubdate']) . "-" . (string) ++$cnt] = $_items[$i];
                }
            } else {
                echo $rss2parser->getErrors();
            }
        }
    }
    krsort($items);
    return $items;
}
Пример #3
0
    $dimension = getimagesize($xoops->path($imgPath));
    $tpl->assign('image_width', $dimension[0]);
    $tpl->assign('image_height', $dimension[1]);
    $items = array();
    if ($xoops->isModule()) {
        /* @var $plugin SystemPluginInterface */
        $plugin = Xoops_Module_Plugin::getPlugin($dirname, 'system');
        $res = $plugin->backend(10);
        if (is_array($res) && count($res) > 0) {
            foreach ($res as $item) {
                $date[] = array('date' => $item['date']);
                $items[] = array('date' => XoopsLocale::formatTimestamp($item['date'], 'rss'), 'title' => XoopsLocale::convert_encoding(htmlspecialchars($item['title'])), 'content' => XoopsLocale::convert_encoding(htmlspecialchars($item['content'])), 'link' => $item['link'], 'guid' => $item['link']);
            }
        }
    } else {
        $plugins = Xoops_Module_Plugin::getPlugins('system');
        /* @var $plugin SystemPluginInterface */
        foreach ($plugins as $plugin) {
            $res = $plugin->backend(10);
            if (is_array($res) && count($res) > 0) {
                foreach ($res as $item) {
                    $date[] = array('date' => $item['date']);
                    $items[] = array('date' => XoopsLocale::formatTimestamp($item['date'], 'rss'), 'title' => XoopsLocale::convert_encoding(htmlspecialchars($item['title'])), 'content' => XoopsLocale::convert_encoding(htmlspecialchars($item['content'])), 'link' => $item['link'], 'guid' => $item['link']);
                }
            }
        }
    }
    array_multisort($date, SORT_DESC, $items);
    $tpl->assign('items', $items);
}
$tpl->display('module:' . $dirname . '/system_rss.tpl');