Вход Регистрация
Файл: InstantSocial/uploud/components/rssfeed/frontend.php
Строк: 134
<?php
/******************************************************************************/
//                                                                            //
//                             InstantCMS v1.9                                //
//                        http://www.instantcms.ru/                           //
//                                                                            //
//                   written by InstantCMS Team, 2007-2011                    //
//                produced by InstantSoft, (www.instantsoft.ru)               //
//                                                                            //
//                        LICENSED BY GNU/GPL v2                              //
//                                                                            //
/******************************************************************************/

function rssfeed(){

    
$inCore     cmsCore::getInstance();
    
$inPage     cmsPage::getInstance();
    
$inDB       cmsDatabase::getInstance();
    
$inConf     cmsConfig::getInstance();

    
$cfg        $inCore->loadComponentConfig('rssfeed');
    
    
// Проверяем включен ли компонент
    
if(!$cfg['component_enabled']) { cmsCore::error404(); }

    global 
$_LANG;

    
$do         $inCore->request('do''str''rss');
    
$target     $inCore->request('target''str''rss');
    
$item_id    $inCore->request('item_id''str''all');

    
// фильтруем входные параметры
    
$target  preg_replace ('/[^a-z0-9]/i'''$target);
    if (!
preg_match('/^([a-z0-9-]+)$/i'$item_id)) { $item_id 'all'; }

    if (!isset(
$cfg['addsite'])) { $cfg['addsite'] = 1; }
    if (!isset(
$cfg['icon_on'])) { $cfg['icon_on'] = 0; }
    if (!isset(
$cfg['maxitems'])) { $cfg['maxitems'] = 50; }

////////////////////// RSS /////////////////////////////////////////////////////////////////////////////////////////////////
if ($do=='rss'){

    if (
file_exists(PATH.'/components/'.$target.'/prss.php')){

        
header('Content-Type: application/rss+xml; charset=windows-1251');

        
cmsCore::loadLanguage('components/'.$target);

        
$inCore->includeFile('components/'.$target.'/prss.php');

        eval(
'rss_'.$target.'($item_id, $cfg, $rssdata);');    
        
        
$ready sizeof($rssdata['items']);

        
//BUILD RSS FEED        
            
$channel $rssdata['channel'];
            
$items   $rssdata['items'];
        
            if (
$cfg['addsite']) { $channel['title'] .= ' :: ' $inConf->sitename; }
        
            
$rss  '<?xml version="1.0" encoding="windows-1251" ?>' ."n";
            
$rss .= '<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">' ."n";
                
$rss .= '<channel>' ."n";
                    
//CHANNEL
                    
$rss .= '<title>'.trim($channel['title']).'</title>' ."n";
                    
$rss .= '<link>'.$channel['link'].'</link>' ."n";
                    
$rss .= '<description><![CDATA['.trim(htmlspecialchars(strip_tags($channel['description']))).']]></description>' ."n";            
                    
//CHANNEL ICON
                    
if ($cfg['icon_on']){
                        
$rss .= '<image>'."n";
                            
$rss .= '<title>'.$cfg['icon_title'].'</title>'."n";
                            
$rss .= '<url>'.$cfg['icon_url'].'</url>'."n";
                            
$rss .= '<link>'.$cfg['icon_link'].'</link>'."n";                        
                        
$rss .= '</image>'."n";
                    }        
                    
//ITEMS
                    
if (is_array($items)){
                    foreach (
$items as $key=>$item){
                        
$rss .= '<item>' ."n";
                            
$rss .= '<title>'.trim(htmlspecialchars(strip_tags($item['title']))).'</title>' ."n";
                            
$rss .= '<pubDate>'.date('r'strtotime($item['pubdate'])+($inConf->timediff*3600)).'</pubDate>' ."n";
                            
$rss .= '<guid>'.$item['link'].'</guid>' ."n";
                            
$rss .= '<link>'.$item['link'].'</link>' ."n";
                            if (isset(
$item['description'])){
                                
$rss .= '<description><![CDATA['.trim(htmlspecialchars(strip_tags($item['description']))).']]></description>' ."n";
                            }
                            
$rss .= '<category>'.$item['category'].'</category>' ."n";
                            
$rss .= '<comments>'.$item['comments'].'</comments>' ."n";                            
                            if (
$item['image']){
                                  
$rss .= '<enclosure url="'.$item['image'].'" length="'.$item['size'].'" type="image/jpeg" />' ."n";
                            }
                        
$rss .= '</item>' ."n";    
                    }        
                    }
                
$rss .= '</channel>' ."n";            
            
$rss .= '</rss>';
    
        } else {    
        
$rss '<p>'.$_LANG['NOT_RSS_GENERATOR'].'</p>';
    }

    
$inCore->halt($rss);

}
//RSS
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

$inCore->executePluginRoute($do);

}

?>
Онлайн: 0
Реклама