Changeset 5085

Show
Ignore:
Timestamp:
01/20/08 04:11:38 (3 years ago)
Author:
inureyes
Message:
  • 어쩔수없이 종합 커밋합니다. (동시에 여러개를 해결하다보니...)

#779

  • 환경설정이 있는 사이드바 플러그인이 제대로 동작하지 않는 오류 수정
  • 사이드바 패널의 순서 설정이 실시간으로 반영되지 않는 오류 수정

#711

  • 데이터베이스 호환성 개선 작업 준비를 위하여 Trackbacks, TrackbackLogs 테이블에서 auto_increment 설정 제거

#796

  • 트랙백 테이블의 인덱스 재조정.
Location:
trunk
Files:
12 modified

Legend:

Unmodified
Added
Removed
  • trunk/components/Textcube.Data.Trackback.php

    r4943 r5085  
    7474    function add() { 
    7575        global $database; 
    76         $this->id = null; 
     76        if (!isset($this->id)) 
     77            $this->id = $this->nextId(); 
     78        else $this->id = $this->nextId($this->id); 
    7779        if (!isset($this->entry)) 
    7880            return $this->_error('entry'); 
     
    100102    function getCount() { 
    101103        return (isset($this->_count) ? $this->_count : 0); 
     104    } 
     105     
     106    function nextId($id = 0) { 
     107        global $database; 
     108        $maxId = POD::queryCell("SELECT max(id) FROM {$database['prefix']}Trackbacks WHERE blogid = ".getBlogId()); 
     109        if($id == 0) 
     110            return $maxId + 1; 
     111        else 
     112             return ($maxId > $id ? $maxId : $id); 
    102113    } 
    103114     
  • trunk/components/Textcube.Data.TrackbackLog.php

    r4943 r5085  
    6565     
    6666    function add() { 
    67         $this->id = null; 
     67        if (!isset($this->id)) 
     68            $this->id = $this->nextId(); 
     69        else $this->id = $this->nextId($this->id); 
    6870        if (!isset($this->entry)) 
    6971            return $this->_error('entry'); 
     
    8587    function getCount() { 
    8688        return (isset($this->_count) ? $this->_count : 0); 
     89    } 
     90     
     91    function nextId($id = 0) { 
     92        global $database; 
     93        $maxId = POD::queryCell("SELECT max(id) FROM {$database['prefix']}TrackbackLogs WHERE blogid = ".getBlogId()); 
     94        if($id == 0) 
     95            return $maxId + 1; 
     96        else 
     97             return ($maxId > $id ? $maxId : $id); 
    8798    } 
    8899     
  • trunk/interface/blog/checkup.php

    r5039 r5085  
    7777} 
    7878 
     79if (POD::queryCell("DESC {$database['prefix']}Trackbacks id", 'Extra') == 'auto_increment') { 
     80    $changed = true; 
     81    echo '<li>', _text('데이터베이스 호환성을 위하여 트랙백 테이블의 자동 증가 설정을 제거합니다.'), ': '; 
     82    if (POD::execute("ALTER TABLE {$database['prefix']}Trackbacks CHANGE id id int(11) NOT NULL") 
     83        && POD::execute("ALTER TABLE {$database['prefix']}TrackbackLogs CHANGE id id int(11) NOT NULL")) 
     84        echo '<span style="color:#33CC33;">', _text('성공'), '</span></li>'; 
     85    else 
     86        echo '<span style="color:#FF0066;">', _text('실패'), '</span></li>'; 
     87} 
     88 
    7989if (POD::queryCell("DESC {$database['prefix']}Comments blogid", 'Key') != 'PRI') { 
    8090    $changed = true; 
     
    186196 
    187197 
    188 if (POD::queryCount("SHOW INDEX FROM {$database['prefix']}Trackbacks WHERE Key_name = 'written'") == 0) { 
     198if (POD::queryCell("DESC {$database['prefix']}Trackbacks blogid", 'Key') != 'PRI') { 
    189199    $changed = true; 
    190200    echo '<li>', _text('트랙백 불러오기 속도를 개선하기 위하여 트랙백 테이블의 인덱스 설정을 변경합니다.'), ': '; 
    191     if (POD::execute("ALTER TABLE {$database['prefix']}Trackbacks ADD KEY written (blogid, isFiltered, written)")) 
     201    if (POD::execute("ALTER TABLE {$database['prefix']}Trackbacks  
     202            DROP PRIMARY KEY, ADD PRIMARY KEY (blogid, id), 
     203            DROP KEY blogid, 
     204            ADD KEY blogid (blogid, isFiltered, written)")) 
    192205        echo '<span style="color:#33CC33;">', _text('성공'), '</span></li>'; 
    193206    else 
     
    205218} 
    206219 
    207 //if (POD::queryCell("DESC {$database['prefix']}BlogSettings name", 'Key') != 'MUL') { 
    208 if (POD::queryCount("SHOW INDEX FROM {$database['prefix']}BlogSettings WHERE Key_name = 'name'") == 0) { 
     220if (POD::queryCell("DESC {$database['prefix']}BlogSettings name", 'Key') != 'PRI') { 
    209221    $changed = true; 
    210222    echo '<li>', _text('블로그 설정 불러오기 속도를 개선하기 위하여 블로그 설정 테이블의 인덱스 설정을 변경합니다.'), ': '; 
  • trunk/interface/owner/skin/sidebar/delete/index.php

    r5079 r5085  
    1818$sidebarOrder = deleteSidebarModuleOrderData(getSidebarModuleOrderData($sidebarCount), $_GET['sidebarNumber'], $_GET['modulePos']); 
    1919setBlogSetting("sidebarOrder", serialize($sidebarOrder)); 
     20Skin::purgeCache(); 
    2021 
    2122//respond::PrintResult(array('error' => 0)); 
  • trunk/interface/owner/skin/sidebar/initialize/index.php

    r5084 r5085  
    1010 
    1111setting::removeBlogSettingGlobal('sidebarOrder'); 
     12Skin::purgeCache(); 
    1213header('Location: '. $blogURL . '/owner/skin/sidebar' . $_REQUEST['viewMode']); 
    1314?> 
  • trunk/interface/owner/skin/sidebar/order/index.php

    r5076 r5085  
    3636     
    3737    setBlogSetting("sidebarOrder", serialize($sidebarOrder)); 
     38    Skin::purgeCache(); 
    3839} 
    3940 
  • trunk/interface/owner/skin/sidebar/register/index.php

    r4943 r5085  
    2929    if (!is_null($sidebarOrder)) { 
    3030        setBlogSetting("sidebarOrder", serialize($sidebarOrder)); 
     31        Skin::purgeCache(); 
    3132    } 
    3233} 
  • trunk/interface/owner/skin/sidebar/setPlugin/index.php

    r5078 r5085  
    7676$sidebarOrderData[$sidebarNumber][$modulePos]['parameters'] = $newParameter; 
    7777setBlogSetting("sidebarOrder", serialize($sidebarOrderData)); 
    78  
     78Skin::purgeCache(); 
    7979if ($ajaxcall == false) { 
    8080    if ($_REQUEST['viewMode'] != '') $_REQUEST['viewMode'] = '?' . $_REQUEST['viewMode']; 
  • trunk/lib/config.php

    r5082 r5085  
    66// Define basic signatures. 
    77define('TEXTCUBE_NAME', 'Textcube'); 
    8 define('TEXTCUBE_VERSION', '1.6 pre-beta 3a'); 
     8define('TEXTCUBE_VERSION', '1.6 pre-beta 3b'); 
    99define('TEXTCUBE_COPYRIGHT', 'Copyright &copy; 2004-2008. Needlworks / Tatter Network Foundation. All rights reserved. Licensed under the GPL.'); 
    1010define('TEXTCUBE_HOMEPAGE', 'http://www.textcube.org/'); 
  • trunk/lib/model/blog.trackback.php

    r4963 r5085  
    6565        FROM {$database['prefix']}Trackbacks t 
    6666        LEFT JOIN {$database['prefix']}Entries e ON t.entry = e.id AND t.blogid = e.blogid 
    67         WHERE t.entry > 0  
    68             AND t.blogid = $blogid $authorized  
    69             AND t.isFiltered = 0  
     67        WHERE  t.blogid = $blogid 
     68            AND t.isFiltered = 0 
     69            AND t.entry > 0 $authorized  
    7070            AND (t.excerpt like '%$search%' OR t.subject like '%$search%')")) { 
    71         foreach($result as $comment)     
    72             array_push($list['items'], $comment); 
     71        foreach($result as $trackback 
     72            array_push($list['items'], $trackback); 
    7373    }    
    7474    return $list; 
  • trunk/lib/model/common.plugin.php

    r5059 r5085  
    388388                    if (function_exists($handler)) { 
    389389                        $str .= "[##_temp_sidebar_element_{$i}_{$j}_##]"; 
    390                         if (function_exists($handler)) { 
    391                             $obj->sidebarStorage["temp_sidebar_element_{$i}_{$j}"]['plugin'] = $plugin; 
    392                             $obj->sidebarStorage["temp_sidebar_element_{$i}_{$j}"]['handler'] = $handler; 
    393                             $obj->sidebarStorage["temp_sidebar_element_{$i}_{$j}"]['parameters'] = $parameter; 
    394                         //  = call_user_func($handler, $parameters); 
    395                         } else { 
    396                             $obj->sidebarStorage["temp_sidebar_element_{$i}_{$j}"] = ""; 
    397                         } 
     390                        $parameter = $currentSidebarOrder[$j]['parameters']; 
     391                        $obj->sidebarStorage["temp_sidebar_element_{$i}_{$j}"]['plugin'] = $plugin; 
     392                        $obj->sidebarStorage["temp_sidebar_element_{$i}_{$j}"]['handler'] = $handler; 
     393                        $obj->sidebarStorage["temp_sidebar_element_{$i}_{$j}"]['parameters'] = $parameter; 
     394                    } else { 
     395                        $obj->sidebarStorage["temp_sidebar_element_{$i}_{$j}"] = ""; 
    398396                    } 
    399397                } else { 
     
    411409            if (!is_null($sidebarAllOrders)) $sidebarAllOrders[$i] = $newSidebarAllOrders[$i];   
    412410        } 
    413          
    414411        dress("sidebar_{$i}", $str, $sval); 
    415412    } 
    416413     
    417414    if (count($newSidebarAllOrders) > 0) { 
    418         if (($previewMode == false) && !is_null($sidebarAllOrders)) 
     415        if (($previewMode == false) && !is_null($sidebarAllOrders)) { 
    419416            setBlogSetting("sidebarOrder", serialize($sidebarAllOrders)); 
     417            Skin::purgeCache(); 
     418        } 
    420419    } 
    421420} 
  • trunk/lib/piece/blog/end.php

    r5060 r5085  
    116116    foreach ($sidebarElements as $element) { 
    117117        $pluginData = $skin->sidebarStorage[$element]; 
     118        $plugin = $pluginData['plugin']; 
    118119        include_once (ROOT . "/plugins/{$plugin}/index.php"); 
    119120        $pluginURL = "{$service['path']}/plugins/{$plugin}"; 
     
    123124        else 
    124125            $configVal =''; 
    125      
     126 
    126127        dress($element, call_user_func($pluginData['handler'], $pluginData['parameters']), $view); 
    127128    } 
    128129} 
     130 
    129131// Coverpage dressing 
    130132$coverpageElements = array_keys($skin->coverpageStorage);