Changeset 3754

Show
Ignore:
Timestamp:
07/26/07 16:21:19 (3 years ago)
Author:
inureyes
Message:

#440

  • MT_getRecentEntries 플러그인에 캐시 모듈 추가
  • j.parker님을 위한 간단 사용 예제입니다 ~
Location:
trunk
Files:
4 modified

Legend:

Unmodified
Added
Removed
  • trunk/blog/owner/entry/update/item.php

    r3649 r3754  
    3838    $entry['published'] = empty($_POST['published']) ? 0 : $_POST['published']; 
    3939    setBlogSetting('LatestEditedEntry_user'.getUserId(),$suri['id']); 
    40     respondResultPage(updateEntry($blogid, $entry)); 
     40    if($id = updateEntry($blogid, $entry)){ 
     41        fireEvent('UpdatePost', $id, $entry); 
     42        respondResultPage(0); 
     43    } 
    4144} 
    4245respondResultPage(1); 
  • trunk/lib/model/blog.entry.php

    r3752 r3754  
    621621    if ($entry['visibility'] >= 2) 
    622622        clearRSS(); 
    623     return $result ? true : false; 
     623    return $result ? $entry['id'] : false; 
    624624} 
    625625 
  • trunk/plugins/MT_RecentPS_Default/index.php

    r3753 r3754  
    33    global $database,$blogid,$blogURL,$blog,$defaultURL; 
    44    requireComponent('Textcube.Core'); 
     5    requireComponent('Needlworks.Cache.PageCache'); 
    56    requireModel("blog.entry"); 
    67    requireModel("blog.tag"); 
     
    1718    } 
    1819 
     20    $cache = new PageCache; 
     21    $cache->name = 'MT_RecentPS'; 
     22    if($cache->load()) { 
     23        return $cache->contents; 
     24    } else { 
    1925    $visibility = doesHaveOwnership() ? '' : 'AND e.visibility > 0 AND (c.visibility > 1 OR e.category = 0)'; 
    2026    $entries = DBQuery::queryAll("SELECT e.id, e.userid, e.title, e.content, e.slogan, e.category, e.published, c.label  
     
    5763    } 
    5864    $target = $html; 
     65    $cache->contents = $target; 
     66    $cache->update(); 
     67    unset($cache); 
     68    return $target; 
     69    } 
     70} 
     71 
     72function MT_getRecentEntries_purgeCache($mother, $target) { 
     73    requireComponent('Needlworks.Cache.PageCache'); 
     74 
     75    $cache = new PageCache; 
     76    $cache->name = 'MT_RecentPS'; 
     77    $cache->purge(); 
    5978    return $target; 
    6079} 
  • trunk/plugins/MT_RecentPS_Default/index.xml

    r3753 r3754  
    1515  </requirements> 
    1616  <binding> 
     17    <listener event="AddPost">MT_getRecentEntries_purgeCache</listener> 
     18    <listener event="UpdatePost">MT_getRecentEntries_purgeCache</listener> 
     19    <listener event="DeletePost">MT_getRecentEntries_purgeCache</listener> 
    1720    <tag name="SKIN_head_end" handler="MT_getRecentEntryStyle" /> 
    1821    <metapage title="Recent Posts" handler="MT_getRecentEntries">