Changeset 6169

Show
Ignore:
Timestamp:
06/04/08 20:50:34 (6 months ago)
Author:
inureyes
Message:

#193

  • Atom Feed 구현
Location:
trunk
Files:
10 added
8 modified

Legend:

Unmodified
Added
Removed
  • trunk/interface/owner/setting/blog/visibility/index.php

    r5673 r6169  
    1010); 
    1111require ROOT . '/lib/includeForBlogOwner.php'; 
    12 requireModel('blog.rss'); 
     12requireModel('blog.feed'); 
    1313 
    1414requireStrictRoute(); 
  • trunk/interface/rss/comment/index.php

    r5367 r6169  
    77 
    88require ROOT . '/lib/includeForBlog.php'; 
    9 requireModel("blog.rss"); 
     9requireModel("blog.feed"); 
    1010requireModel("blog.entry"); 
    1111 
     
    1818    $cache->name = 'commentRSS_'.$suri['id']; 
    1919    if(!$cache->load()) { 
    20         $result = getCommentRSSByEntryId(getBlogId(),$suri['id']); 
     20        $result = getCommentFeedByEntryId(getBlogId(),$suri['id']); 
    2121        if($result !== false) { 
    2222            $cache->contents = $result; 
     
    2727    $cache->name = 'commentRSS'; 
    2828    if(!$cache->load()) { 
    29         $result = getCommentRSSTotal(getBlogId()); 
     29        $result = getCommentFeedTotal(getBlogId()); 
    3030        if($result !== false) { 
    3131            $cache->contents = $result; 
  • trunk/interface/rss/index.php

    r5899 r6169  
    77define('__TEXTCUBE_LOGIN__',true); 
    88require ROOT . '/lib/includeForBlog.php'; 
    9 requireModel("blog.rss"); 
     9requireModel("blog.feed"); 
    1010requireModel("blog.entry"); 
    1111 
     
    1616publishEntries(); 
    1717if (!file_exists(ROOT . "/cache/rss/$blogid.xml")) 
    18     refreshRSS($blogid); 
     18    refreshFeed($blogid,'rss'); 
    1919header('Content-Type: text/xml; charset=utf-8'); 
    2020$fileHandle = fopen(ROOT . "/cache/rss/$blogid.xml", 'r+'); 
  • trunk/interface/rss/notifycomment/index.php

    r5560 r6169  
    1515); 
    1616require ROOT . '/lib/includeForBlog.php'; 
    17 requireModel("blog.rss"); 
     17requireModel("blog.feed"); 
    1818requireModel("blog.entry"); 
    1919 
     
    2727$cache->name = 'commentNotifiedRSS'; 
    2828if(!$cache->load()) { 
    29     $result = getCommentNotifiedRSSTotal(getBlogId()); 
     29    $result = getCommentNotifiedFeedTotal(getBlogId()); 
    3030    if($result !== false) { 
    3131        $cache->contents = $result; 
  • trunk/interface/rss/response/index.php

    r5378 r6169  
    66 
    77require ROOT . '/lib/includeForBlog.php'; 
    8 requireModel("blog.rss"); 
     8requireModel("blog.feed"); 
    99requireModel("blog.entry"); 
    1010 
     
    1717    $cache->name = 'responseRSS_'.$suri['id']; 
    1818    if(!$cache->load()) { 
    19         $result = getResponseRSSByEntryId(getBlogId(),$suri['id']); 
     19        $result = getResponseFeedByEntryId(getBlogId(),$suri['id']); 
    2020        if($result !== false) { 
    2121            $cache->contents = $result; 
     
    2626    $cache->name = 'responseRSS'; 
    2727    if(!$cache->load()) { 
    28         $result = getResponseRSSTotal(getBlogId()); 
     28        $result = getResponseFeedTotal(getBlogId()); 
    2929        if($result !== false) { 
    3030            $cache->contents = $result; 
  • trunk/interface/rss/trackback/index.php

    r5367 r6169  
    77 
    88require ROOT . '/lib/includeForBlog.php'; 
    9 requireModel("blog.rss"); 
     9requireModel("blog.feed"); 
    1010requireModel("blog.entry"); 
    1111 
     
    1818    $cache->name = 'trackbackRSS_'.$suri['id']; 
    1919    if(!$cache->load()) { 
    20         $result = getTrackbackRSSByEntryId(getBlogId(),$suri['id']); 
     20        $result = getTrackbackFeedByEntryId(getBlogId(),$suri['id']); 
    2121        if($result !== false) { 
    2222            $cache->contents = $result; 
     
    2727    $cache->name = 'trackbackRSS'; 
    2828    if(!$cache->load()) { 
    29         $result = getTrackbackRSSTotal(getBlogId()); 
     29        $result = getTrackbackFeedTotal(getBlogId()); 
    3030        if($result !== false) { 
    3131            $cache->contents = $result; 
  • trunk/lib/model/blog.feed.php

    r6168 r6169  
    176176    $channel['title'] = $blog['title']. ': '._text('최근 댓글/트랙백 목록'); 
    177177 
    178     $recentComment = getCommentRSSTotal($blogid,true); 
    179     $recentTrackback = getTrackbackRSSTotal($blogid,true); 
     178    $recentComment = getCommentFeedTotal($blogid,true,$mode); 
     179    $recentTrackback = getTrackbackFeedTotal($blogid,true,$mode); 
    180180    $merged = array_merge($recentComment, $recentTrackback); 
    181181    $channel['items'] = $merged; 
     
    188188function getResponseFeedByEntryId($blogid, $entryId, $mode = 'rss') { 
    189189    global $database, $serviceURL, $defaultURL, $blogURL, $blog, $service; 
    190     if(empty($blogid)) $blogid = getBlogId(); 
    191     $channel = initializeRSSchannel($blogid); 
    192     $channel['title'] = $blog['title']. ': '._text('최근 댓글/트랙백 목록'); 
    193  
    194     $recentComment = getCommentRSSByEntryId($blogid,$entryId,true); 
    195     $recentTrackback = getTrackbackRSSByEntryId($blogid,$entryId,true); 
     190     
     191    if(empty($blogid)) $blogid = getBlogId(); 
     192 
     193    $entry = POD::queryRow("SELECT slogan, visibility, category FROM {$database['prefix']}Entries WHERE blogid = $blogid AND id = $entryId"); 
     194    if(empty($entry)) return false; 
     195    if($entry['visibility'] < 2) return false; 
     196    if(in_array($entry['category'], getCategoryVisibilityList($blogid, 'private'))) return false; 
     197    $channel = array(); 
     198 
     199    $channel = initializeRSSchannel($blogid); 
     200    $channel['title'] = RSSMessage($blog['title']. ': '._textf('%1에 달린 최근 댓글/트랙백 목록',$entry['slogan'])); 
     201 
     202    $recentComment = getCommentFeedByEntryId($blogid,$entryId,true,$mode); 
     203    $recentTrackback = getTrackbackFeedByEntryId($blogid,$entryId,true,$mode); 
    196204    $merged = array_merge($recentComment, $recentTrackback); 
    197205    $channel['items'] = $merged; 
     206     
    198207    $rss = array('channel' => $channel); 
    199208    if($mode == 'rss') return publishRSS($blogid, $rss); 
     
    471480    echo '<feed xmlns="http://www.w3.org/2005/Atom" xmlns:thr="http://purl.org/syndication/thread/1.0">', CRLF; 
    472481    echo '  <title type="html">', htmlspecialchars($data['channel']['title'], ENT_QUOTES), '</title>', CRLF; 
    473     echo '  <id>', $data['channel']['link'], '</id', CRLF; 
    474     echo '  <link rel="alternate" type="text/html" hreflang="', $data['channel']['language'] ,'" href="', $data['channel']['link'] , ' />', CRLF; 
     482    echo '  <id>', $data['channel']['link'], '</id>', CRLF; 
     483    echo '  <link rel="alternate" type="text/html" hreflang="', $data['channel']['language'] ,'" href="', $data['channel']['link'] , '" />', CRLF; 
    475484    echo '  <subtitle type="html">', htmlspecialchars($data['channel']['description'], ENT_QUOTES), '</subtitle>', CRLF; 
    476485    echo '  <updated>', $data['channel']['pubDate'], '</updated>', CRLF; 
  • trunk/lib/piece/blog/entries.php

    r5973 r6169  
    2020//          'href="'.$defaultURL.'/rss/comment/'.$entry['id'].'" />'.CRLF; 
    2121        $entryRsses .= '<link rel="alternate" type="application/rss+xml" '. 
    22             'title="Responses : '.htmlspecialchars($entry['title']).' - '.htmlspecialchars($blog['title']).'" '. 
    23             'href="'.$defaultURL.'/rss/response/'.$entry['id'].'" />'.CRLF; 
     22            'title="Responses (RSS) : '.htmlspecialchars($entry['title']).' - '.htmlspecialchars($blog['title']).'" '. 
     23            'href="'.$defaultURL.'/rss/response/'.$entry['id'].'" />'.CRLF. 
     24            '<link rel="alternate" type="application/atom+xml" '. 
     25            'title="Responses (ATOM) : '.htmlspecialchars($entry['title']).' - '.htmlspecialchars($blog['title']).'" '. 
     26            'href="'.$defaultURL.'/atom/response/'.$entry['id'].'" />'.CRLF; 
    2427    } 
    2528    if( getBlogSetting('useFOAF',1) && rtrim( $suri['url'], '/' ) == $pathURL ) {