Changeset 5908

Show
Ignore:
Timestamp:
05/09/08 02:50:20 (8 months ago)
Author:
inureyes
Message:

#782

  • 기본 구현
  • TODO :
    • 카테고리 지우기 기능
    • 카테고리의 스킨 출력기능
    • 리스트에서 특정 카테고리에 해당되는 링크만 보기 기능
Location:
trunk
Files:
5 added
14 modified

Legend:

Unmodified
Added
Removed
  • trunk/interface/blog/checkup.php

    r5835 r5908  
    329329            else 
    330330                showCheckupMessage(false); 
     331        } else { 
     332            showCheckupMessage(false); 
     333        } 
     334    } 
     335    if (!doesExistTable($database['prefix'] . 'LinkCategories')) { 
     336        $changed = true; 
     337        echo '<li>', _text('링크 카테고리 테이블을 만듭니다'), ': '; 
     338        $query = " 
     339        CREATE TABLE `{$database['prefix']}LinkCategories` ( 
     340          pid int(11) NOT NULL default '0', 
     341          blogid int(11) NOT NULL default '0', 
     342          id int(11) NOT NULL default '0', 
     343          name varchar(128) NOT NULL, 
     344          priority int(11) NOT NULL default '0', 
     345          visibility tinyint(4) NOT NULL default '2', 
     346          PRIMARY KEY (pid), 
     347          UNIQUE KEY blogid (blogid, id) 
     348        ) TYPE=MyISAM 
     349        "; 
     350        if (POD::execute($query . ' DEFAULT CHARSET=utf8') || POD::execute($query)) { 
     351            if (POD::execute("ALTER TABLE {$database['prefix']}Links  
     352                    ADD category int(11) NOT NULL DEFAULT 0 AFTER id, 
     353                    ADD pid int(11) NOT NULL DEFAULT 0 FIRST, 
     354                    CHANGE id id int(11) NOT NULL default '0'") && 
     355                POD::execute("UPDATE {$database['prefix']}Links  
     356                    SET pid = id") && 
     357                POD::execute("ALTER TABLE {$database['prefix']}Links  
     358                    DROP PRIMARY KEY, 
     359                    ADD PRIMARY KEY (pid)")) { 
     360                showCheckupMessage(true); 
     361            } else { 
     362                @POD::execute("DROP TABLE {$database['prefix']}LinkCategories"); 
     363                showCheckupMessage(false); 
     364            } 
    331365        } else { 
    332366            showCheckupMessage(false); 
  • trunk/interface/owner/communication/link/add/exec/index.php

    r5076 r5908  
    77        'name' => array('string'), 
    88        'rss' => array('string', 'default' => ''), 
    9         'url' => array('string') 
     9        'url' => array('string'), 
     10        'category' => array('int','mandatory'=>false), 
     11        'newCategory' => array('string','mandatory'=>false) 
    1012    ) 
    1113); 
  • trunk/interface/owner/communication/link/add/index.php

    r5878 r5908  
    88require ROOT . '/lib/piece/owner/header.php'; 
    99require ROOT . '/lib/piece/owner/contentMenu.php'; 
     10 
     11$tabsClass['add'] = true; 
    1012?> 
    1113                        <script type="text/javascript"> 
     
    1719                                        return false;        
    1820                                    } 
    19                                      
     21 
    2022                                    if(document.getElementById('addForm').rss.value.indexOf("http://")==-1) { 
    2123                                        uri = 'http://'+document.getElementById('addForm').rss.value; 
     
    2527                                    var request = new HTTPRequest("GET", "<?php echo $blogURL;?>/owner/communication/link/site/?rss=" + uri); 
    2628                                    request.onVerify = function() { 
    27                                         return (this.getText("/response/url") != "") 
     29                                        return (this.getText("/response/url") != ""); 
    2830                                    } 
    2931                                    request.onSuccess = function () { 
     
    8587                                    } 
    8688                                    PM.addRequest(request, "<?php echo _t('링크를 추가하고 있습니다.');?>"); 
    87                                     request.send("name=" + encodeURIComponent(oForm.name.value) + "&url=" + encodeURIComponent(oForm.url.value) + "&rss=" + encodeURIComponent(oForm.rss.value)); 
     89 
     90                                    request.send("name=" + encodeURIComponent(oForm.name.value) + "&url=" + encodeURIComponent(oForm.url.value) + 
     91                                    "&rss=" + encodeURIComponent(oForm.rss.value) + 
     92                                    "&category=" + encodeURIComponent(oForm.category.value) + 
     93                                    "&newCategory=" + encodeURIComponent(oForm.newCategory.value) 
     94                                    ); 
    8895                                }    
    8996                            //]]> 
     
    9299                        <div id="part-link-add" class="part"> 
    93100                            <h2 class="caption"><span class="main-text"><?php echo _t('새로운 링크를 추가합니다');?></span></h2> 
    94  
     101<?php 
     102require ROOT . '/lib/piece/owner/linkTab.php'; 
     103?> 
    95104                            <div class="main-explain-box"> 
    96105                                <p class="explain"><?php echo _t('RSS 주소를 입력해서 링크할 홈페이지의 정보를 읽어올 수 있습니다. 수동으로 제목과 주소를 입력하셔도 됩니다. RSS 주소를 입력해서 홈페이지의 정보를 읽어온 경우 링크를 추가할 때 바깥 글 읽기에 RSS 주소를 추가할지를 물어봅니다.');?></p> 
     
    111120                                        <dd><input type="text" id="url" class="input-text url" name="url" /></dd> 
    112121                                    </dl> 
     122                                    <dl id="category-line" class="line"> 
     123                                        <dt><label for="url"><?php echo _t('분류');?></label></dt> 
     124                                        <dd> 
     125                                            <select id="category" name="category"> 
     126                                            <option value="0"><?php echo _t('분류 없음');?></option> 
     127<?php 
     128$categories = array(); 
     129$categories = getLinkCategories(getBlogId()); 
     130foreach ($categories as $category) { 
     131?> 
     132                                            <option value="<?php echo $category['id'];?>"><?php echo htmlspecialchars($category['name']);?></option> 
     133<?php 
     134} 
     135?> 
     136                                            </select> 
     137                                        </dd> 
     138                                        <dd><?php echo _t('또는 새로운 분류를 추가합니다.').' :';?><input type="text" id="newCategory" class="input-text input-category" name="newCategory" /></dd> 
     139                                    </dl> 
    113140                                </div> 
    114141                                 
  • trunk/interface/owner/communication/link/edit/exec/index.php

    r5076 r5908  
    55$IV = array(   
    66    'POST' => array( 
    7         'id' => array( 'id' ), 
    8         'name' => array( 'string' , 'min' => 0 ,  'max' => 255), 
    9         'rss' => array( 'string' , 'min' => 0 ,  'max' => 255 , 'mandatory' => false), 
    10         'url' => array( 'string' , 'min' => 0 ,  'max' => 255) 
     7        'id'   => array('id'), 
     8        'name' => array('string','min' => 0,'max' => 255), 
     9        'rss'  => array('string','min' => 0,'max' => 255 , 'mandatory' => false), 
     10        'url'  => array('string','min' => 0,'max' => 255), 
     11        'category'    => array('int','mandatory'=>false), 
     12        'newCategory' => array('string','mandatory'=>false) 
    1113    ) 
    1214); 
  • trunk/interface/owner/communication/link/edit/index.php

    r5696 r5908  
    1111require ROOT . '/lib/piece/owner/header.php'; 
    1212require ROOT . '/lib/piece/owner/contentMenu.php'; 
     13 
     14$tabsClass['edit'] = true; 
    1315?> 
    1416                        <script type="text/javascript"> 
     
    4547                                    if (!checkValue(oForm.name, "<?php echo _t('이름을 입력해 주십시오.');?>\t")) return false; 
    4648                                    if (!checkValue(oForm.url, "<?php echo _t('주소를 입력해 주십시오.');?>\t")) return false; 
    47                                         var request = new HTTPRequest("POST", blogURL + "/owner/communication/link/edit/exec/"); 
     49                                    var request = new HTTPRequest("POST", blogURL + "/owner/communication/link/edit/exec/"); 
    4850                                    request.onSuccess = function () { 
    4951                                        PM.removeRequest(this); 
     
    5961                                    } 
    6062                                    PM.addRequest(request, "<?php echo _t('링크를 수정하고 있습니다.');?>"); 
    61                                     request.send("id=<?php echo $suri['value'];?>&name=" + encodeURIComponent(oForm.name.value) + "&url=" + encodeURIComponent(oForm.url.value) + "&rss=" + encodeURIComponent(oForm.rss.value));   
     63                                    request.send("id=<?php echo $suri['value'];?>&name=" + encodeURIComponent(oForm.name.value) +  
     64                                    "&url=" + encodeURIComponent(oForm.url.value) +  
     65                                    "&rss=" + encodeURIComponent(oForm.rss.value) + 
     66                                    "&category=" + encodeURIComponent(oForm.category.value) + 
     67                                    "&newCategory=" + encodeURIComponent(oForm.newCategory.value) 
     68                                    );   
    6269                                } 
    6370                            //]]> 
     
    6875                        <div id="part-link-edit" class="part"> 
    6976                            <h2 class="caption"><span class="main-text"><?php echo _t('링크 정보를 수정합니다');?></span></h2> 
    70                              
     77<?php 
     78require ROOT . '/lib/piece/owner/linkTab.php'; 
     79?> 
    7180                            <form id="editForm" method="post" action="<?php echo $blogURL;?>/owner/communication/link/edit/"> 
    7281                                <input type="hidden" name="id" value="<?php echo $suri['value'];?>" /> 
     
    8594                                        <dd><input type="text" class="input-text" id="url" name="url" value="<?php echo htmlspecialchars($link['url']);?>" /></dd> 
    8695                                    </dl> 
     96                                    <dl id="category-line" class="line"> 
     97                                        <dt><label for="url"><?php echo _t('분류');?></label></dt> 
     98                                        <dd> 
     99                                            <select id="category" name="category"> 
     100                                            <option value="0"><?php echo _t('분류 없음');?></option> 
     101<?php 
     102$categories = array(); 
     103$categories = getLinkCategories(getBlogId()); 
     104foreach ($categories as $category) { 
     105?> 
     106                                            <option value="<?php echo $category['id'];?>"<?php echo ($link['category'] == $category['id'] ? ' selected="selected"' : '');?>><?php echo htmlspecialchars($category['name']);?></option> 
     107<?php 
     108} 
     109?> 
     110                                            </select> 
     111                                        </dd> 
     112                                        <dd><?php echo _t('또는 새로운 분류를 추가합니다.').' :';?><input type="text" id="newCategory" class="input-text input-category" name="newCategory" /></dd> 
     113                                    </dl> 
    87114                                </div> 
    88115                                 
  • trunk/interface/owner/communication/link/index.php

    r5743 r5908  
    99require ROOT . '/lib/piece/owner/header.php'; 
    1010require ROOT . '/lib/piece/owner/contentMenu.php'; 
     11 
     12$tabsClass['list'] = true; 
    1113?> 
    1214                        <script type="text/javascript"> 
     
    8789                        <div id="part-link-list" class="part"> 
    8890                            <h2 class="caption"><span class="main-text"><?php echo _t('링크 목록입니다');?></span></h2> 
    89                              
     91<?php 
     92require ROOT . '/lib/piece/owner/linkTab.php'; 
     93?> 
    9094                            <table class="data-inbox" cellspacing="0" cellpadding="0"> 
    9195                                <thead> 
    9296                                    <tr> 
     97                                        <th class="category"><span class="text"><?php echo _t('분류');?></span></th> 
    9398                                        <th class="homepage"><span class="text"><?php echo _t('홈페이지 이름');?></span></th> 
    9499                                        <th class="address"><span class="text"><?php echo _t('사이트 주소');?></span></th> 
     
    109114?> 
    110115                                    <tr id="link_<?php echo $link['id'];?>" class="<?php echo $className;?> inactive-class" onmouseover="rolloverClass(this, 'over')" onmouseout="rolloverClass(this, 'out')"> 
     116                                        <td class="category"><a href="<?php echo $blogURL;?>/owner/communication/link/categoryEdit/<?php echo $link['category'];?>" title="<?php echo _t('이 카테고리 정보를 수정합니다.');?>"><?php echo (isset($link['categoryName']) ? htmlspecialchars($link['categoryName']) : _t('분류 없음'));?></a></td> 
    111117                                        <td class="homepage"><a href="<?php echo $blogURL;?>/owner/communication/link/edit/<?php echo $link['id'];?>" title="<?php echo _t('이 링크 정보를 수정합니다.');?>"><?php echo htmlspecialchars($link['name']);?></a></td> 
    112118                                        <td class="address"><a href="<?php echo htmlspecialchars($link['url']);?>" onclick="window.open(this.href); return false;" title="<?php echo _t('이 링크에 연결합니다.');?>"><?php echo htmlspecialchars($link['url']);?></a></td> 
  • trunk/interface/owner/communication/xfn/index.php

    r5696 r5908  
    1717} 
    1818 
     19$tabsClass['xfn'] = true; 
    1920list( $links, $paging ) = getLinksWithPagingForOwner($blogid, $page, 30); 
    2021$service['admin_script'] = array( 'xfn.js' ); 
     
    2930                        <div id="part-link-list" class="part"> 
    3031                            <h2 class="caption"><span class="main-text"><?php echo _t('친구 관계를 설정합니다');?></span></h2> 
    31                              
     32<?php 
     33require ROOT . '/lib/piece/owner/linkTab.php'; 
     34?> 
     35                            <div class="main-explain-box"> 
     36                                <p class="explain"><?php echo _t('각 링크의 관계를 설정합니다.').' '._t('여기서 지정한 링크들의 관계는 XFN (XHTML Friends Network) 규격에 맞추어 블로그의 링크 출력시 추가 데이터로 함께 출력됩니다.');?></p> 
     37                            </div> 
    3238                            <form method="post"> 
    3339                            <input type="hidden" name="usexfn" id="usexfn" value="0" /> 
  • trunk/lib/config.php

    r5895 r5908  
    66// Define basic signatures. 
    77define('TEXTCUBE_NAME', 'Textcube'); 
    8 define('TEXTCUBE_VERSION', '1.7 : pre-Beta 2'); 
     8define('TEXTCUBE_VERSION', '1.7 : pre-Beta 2a1'); 
    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.link.php

    r5285 r5908  
    1010    global $database, $__gCacheLink; 
    1111    if(empty($__gCacheLink)) { 
    12         if ($result = POD::queryAll("SELECT *  
    13             FROM {$database['prefix']}Links  
    14             WHERE blogid = $blogid  
    15             ORDER BY name")) { 
     12        if ($result = POD::queryAll("SELECT l.*, lc.name AS categoryName 
     13            FROM {$database['prefix']}Links l 
     14            LEFT JOIN {$database['prefix']}LinkCategories lc ON lc.blogid = l.blogid AND lc.id = l.category 
     15            WHERE l.blogid = $blogid  
     16            ORDER BY l.name")) { 
    1617            $__gCacheLink = array(); 
    1718            foreach($result as $link) { 
     
    2526function getLinksWithPagingForOwner($blogid, $page, $count) { 
    2627    global $database; 
    27     return fetchWithPaging( "SELECT * FROM {$database['prefix']}Links WHERE blogid = $blogid ORDER BY name", $page, $count ); 
     28    return fetchWithPaging("SELECT l.*, lc.name AS categoryName 
     29            FROM {$database['prefix']}Links l  
     30            LEFT JOIN {$database['prefix']}LinkCategories lc ON lc.blogid = l.blogid AND lc.id = l.category 
     31            WHERE l.blogid = $blogid ORDER BY l.name", $page, $count ); 
    2832} 
    2933 
    3034function getLink($blogid, $id) { 
    3135    global $database, $__gCacheLink; 
    32     return POD::queryRow("SELECT * FROM {$database['prefix']}Links WHERE blogid = $blogid and id = $id"); 
     36    return POD::queryRow("SELECT l.*, lc.name AS categoryName 
     37            FROM {$database['prefix']}Links l  
     38            LEFT JOIN {$database['prefix']}LinkCategories lc ON lc.blogid = l.blogid AND lc.id = l.category 
     39            WHERE l.blogid = $blogid AND l.id = $id"); 
    3340} 
    3441 
     
    4956    $name = UTF8::lessenAsEncoding(trim($link['name']), 255); 
    5057    $url = UTF8::lessenAsEncoding(trim($link['url']), 255); 
     58 
    5159    if (empty($name) || empty($url)) 
    5260        return - 1; 
     61    $category = (isset($link['category'])) ? $link['category'] : 0; 
    5362    $name = POD::escapeString($name); 
    5463    $url = POD::escapeString($url); 
     64    if(isset($link['newCategory']) && !empty($link['newCategory'])) { // Add new category information 
     65        $newCategoryTitle = POD::escapeString(UTF8::lessenAsEncoding(trim($link['newCategory']), 255)); 
     66        $newCategoryId = addLinkCategory($blogid, $newCategoryTitle); 
     67        if(!empty($newCategoryId)) $category = $newCategoryId; 
     68        else return false; 
     69    } 
     70     
     71    $id = getMaxIdOfLink() + 1; 
     72    $pid = getMaxPidOfLink() + 1; 
     73 
    5574    $rss = isset($link['rss']) ? POD::escapeString(UTF8::lessenAsEncoding(trim($link['rss']), 255)) : ''; 
    5675    if (POD::queryCell("SELECT id FROM {$database['prefix']}Links WHERE blogid = $blogid AND url = '$url'")) 
    5776        return 1; 
    58     if (POD::execute("INSERT INTO {$database['prefix']}Links (blogid,name,url,rss,written) VALUES ($blogid, '$name', '$url', '$rss', UNIX_TIMESTAMP())")) 
     77    if (POD::execute("INSERT INTO {$database['prefix']}Links (pid, blogid,id,category,name,url,rss,written) VALUES ($pid, $blogid, $id, $category, '$name', '$url', '$rss', UNIX_TIMESTAMP())")) 
    5978        return 0; 
    6079    else 
     
    6988    if (empty($name) || empty($url)) 
    7089        return false; 
     90    $category = (isset($link['category'])) ? $link['category'] : 0; 
    7191    $name = POD::escapeString($name); 
    7292    $url = POD::escapeString($url); 
     93 
     94    if(isset($link['newCategory']) && !empty($link['newCategory'])) { // Add new category information 
     95        $newCategoryTitle = UTF8::lessenAsEncoding(trim($link['newCategory']), 255); 
     96        $newCategoryId = addLinkCategory($blogid, $newCategoryTitle); 
     97        if(!empty($newCategoryId)) $category = $newCategoryId; 
     98    } 
     99 
    73100    $rss = isset($link['rss']) ? POD::escapeString(UTF8::lessenAsEncoding(trim($link['rss']), 255)) : ''; 
    74     return POD::execute("update {$database['prefix']}Links 
    75                 set 
     101    return POD::execute("UPDATE {$database['prefix']}Links 
     102                SET 
     103                    category = $category, 
    76104                    name = '$name', 
    77105                    url = '$url', 
    78106                    rss = '$rss', 
    79107                    written = UNIX_TIMESTAMP() 
    80                 where 
     108                WHERE 
    81109                    blogid = $blogid and id = {$link['id']}"); 
    82110} 
     
    98126    } 
    99127} 
     128function getLinkCategories($blogid) { 
     129    global $database; 
     130    return POD::queryAll("SELECT * FROM {$database['prefix']}LinkCategories 
     131            WHERE blogid = $blogid"); 
     132} 
     133 
     134function addLinkCategory($blogid, $categoryTitle) { 
     135    global $database; 
     136    $categoryTitle = POD::escapeString($categoryTitle); 
     137    $id = POD::queryCell("SELECT id FROM {$database['prefix']}LinkCategories 
     138        WHERE blogid = $blogid AND name = '".$categoryTitle."'"); 
     139    if(!empty($id)) { 
     140        return $id; 
     141    } else {    // Add new Link Category 
     142        $pid = getMaxPidOfLinkCategory() + 1; 
     143        $id = getMaxIdOfLinkCategory($blogid) + 1; 
     144        $priority = 0; 
     145        $visibility = 2; // Default visibility 
     146        if(POD::query("INSERT INTO {$database['prefix']}LinkCategories 
     147            (pid, blogid, id, name, priority, visibility) VALUES 
     148            ($pid, $blogid, $id, '$categoryTitle', $priority, $visibility)")) { 
     149            return $id; 
     150        } else { 
     151            return false; 
     152        } 
     153    } 
     154} 
     155 
     156function updateLinkCategory($blogid, $category) { 
     157    global $database; 
     158    $categoryTitle = POD::escapeString($category['name']); 
     159    $id = $category['id']; 
     160     
     161    if(POD::query("UPDATE {$database['prefix']}LinkCategories 
     162        SET 
     163            name = '".$categoryTitle."' 
     164            WHERE blogid = $blogid AND id = $id")) { 
     165        return true; 
     166    } else { 
     167        return false; 
     168    } 
     169} 
     170 
     171function deleteLinkCategory($blogid, $id) { 
     172    global $database; 
     173    if(POD::query("DELETE FROM {$database['prefix']}LinkCategories 
     174        WHERE blogid = $blogid AND id = $id")) { 
     175        POD::execute("UPDATE {$database['prefix']}Links 
     176            SET category = 0 
     177            WHERE blogid = $blogid AND category = $id"); 
     178        return true; 
     179    } else { 
     180        return false; 
     181    } 
     182} 
     183 
     184function getLinkCategory($blogid, $id) { 
     185    global $database; 
     186    return POD::queryRow("SELECT *  
     187            FROM {$database['prefix']}LinkCategories  
     188            WHERE blogid = $blogid AND id = $id"); 
     189} 
     190 
     191function getMaxIdOfLink($blogid = null) { 
     192    global $database; 
     193    if(empty($blogid)) $blogid = getBlogId(); 
     194    $id = POD::queryCell("SELECT max(id) FROM {$database['prefix']}Links 
     195            WHERE blogid = $blogid"); 
     196    return (empty($id) ? 0 : $id); 
     197} 
     198 
     199function getMaxPidOfLink() { 
     200    global $database; 
     201    $id = POD::queryCell("SELECT max(pid) FROM {$database['prefix']}Links"); 
     202    return (empty($id) ? 0 : $id); 
     203} 
     204 
     205function getMaxIdOfLinkCategory($blogid = null) { 
     206    global $database; 
     207    if(empty($blogid)) $blogid = getBlogId();    
     208    $id = POD::queryCell("SELECT max(id) FROM {$database['prefix']}LinkCategories 
     209            WHERE blogid = $blogid"); 
     210    return (empty($id) ? 0 : $id); 
     211} 
     212function getMaxPidOfLinkCategory() { 
     213    global $database; 
     214    $id = POD::queryCell("SELECT max(pid) FROM {$database['prefix']}LinkCategories"); 
     215    return (empty($id) ? 0 : $id); 
     216} 
     217 
    100218?> 
  • trunk/lib/model/common.setting.php

    r5763 r5908  
    9292    global $database; 
    9393    $prefix = $database['prefix']; 
    94     $definedTables = array("{$prefix}Attachments", "{$prefix}BlogSettings", "{$prefix}BlogStatistics", "{$prefix}Categories", "{$prefix}Comments", "{$prefix}CommentsNotified", "{$prefix}CommentsNotifiedQueue", "{$prefix}CommentsNotifiedSiteInfo", "{$prefix}DailyStatistics", "{$prefix}Entries", "{$prefix}EntriesArchive", "{$prefix}FeedGroupRelations", "{$prefix}FeedGroups", "{$prefix}FeedItems", "{$prefix}FeedReads", "{$prefix}OpenIDUsers", "{$prefix}Feeds", "{$prefix}FeedSettings", "{$prefix}FeedStarred", "{$prefix}Filters", "{$prefix}Links", "{$prefix}PageCacheLog", "{$prefix}Plugins", "{$prefix}RefererLogs", "{$prefix}RefererStatistics", "{$prefix}ReservedWords", "{$prefix}ServiceSettings", "{$prefix}Sessions", "{$prefix}SessionVisits", "{$prefix}SkinSettings", "{$prefix}TagRelations", "{$prefix}Tags", "{$prefix}Teamblog", "{$prefix}TeamEntryRelations", "{$prefix}TrackbackLogs", "{$prefix}Trackbacks", "{$prefix}Users", "{$prefix}UserSettings", "{$prefix}XMLRPCPingSettings"); 
     94    $definedTables = array("{$prefix}Attachments", "{$prefix}BlogSettings", "{$prefix}BlogStatistics", "{$prefix}Categories", "{$prefix}Comments", "{$prefix}CommentsNotified", "{$prefix}CommentsNotifiedQueue", "{$prefix}CommentsNotifiedSiteInfo", "{$prefix}DailyStatistics", "{$prefix}Entries", "{$prefix}EntriesArchive", "{$prefix}FeedGroupRelations", "{$prefix}FeedGroups", "{$prefix}FeedItems", "{$prefix}FeedReads", "{$prefix}OpenIDUsers", "{$prefix}Feeds", "{$prefix}FeedSettings", "{$prefix}FeedStarred", "{$prefix}Filters", "{$prefix}Links", "{$prefix}LinkCategories", "{$prefix}PageCacheLog", "{$prefix}Plugins", "{$prefix}RefererLogs", "{$prefix}RefererStatistics", "{$prefix}ReservedWords", "{$prefix}ServiceSettings", "{$prefix}Sessions", "{$prefix}SessionVisits", "{$prefix}SkinSettings", "{$prefix}TagRelations", "{$prefix}Tags", "{$prefix}Teamblog", "{$prefix}TeamEntryRelations", "{$prefix}TrackbackLogs", "{$prefix}Trackbacks", "{$prefix}Users", "{$prefix}UserSettings", "{$prefix}XMLRPCPingSettings"); 
    9595    return $definedTables; 
    9696} 
  • trunk/lib/piece/owner/contentMenu.php

    r5874 r5908  
    3636                    array('menu'=>'comment','title'=>_t('소통 기록'),'link'=>'/owner/communication/comment'), 
    3737                    array('menu'=>'openid','title'=>_t('오픈아이디 목록'),'link'=>'/owner/communication/openid'), 
    38                     array('menu'=>'add','title'=>_t('링크 추가'),'link'=>'/owner/communication/link/add'), 
    39                     array('menu'=>'link','title'=>_t('링크 목록'),'link'=>'/owner/communication/link'), 
    40                     array('menu'=>'xfn','title'=>_t('친구 링크 관리'),'link'=>'/owner/communication/xfn') 
     38                    array('menu'=>'link','title'=>_t('링크'),'link'=>'/owner/communication/link') 
    4139                ); 
    4240                if($service['reader'] == true) array_push($blogContentMenuItem,array('menu'=>'reader','title'=>_t('바깥 글 읽기'),'link'=>'/owner/communication/reader')); 
     
    147145    if(in_array($blogMenu['contentMenu'],array('notify','trackback','trashcomment','trashtrackback'))) 
    148146        $blogMenu['contentMenu'] = 'comment'; 
    149  
     147    else if(in_array($blogMenu['contentMenu'],array('linkadd','linkedit','linkcategoryEdit','xfn'))) 
     148        $blogMenu['contentMenu'] = 'link'; 
     149     
    150150    foreach($blogContentMenuItem as $contentMenuItem) {  
    151151        $PostIdStr = null; 
  • trunk/setup.php

    r5854 r5908  
    12681268) $charset; 
    12691269CREATE TABLE {$_POST['dbPrefix']}Links ( 
    1270   blogid int(11) NOT NULL default '0', 
    1271   id int(11) NOT NULL auto_increment, 
     1270  pid int(11) NOT NULL default '0', 
     1271  blogid int(11) NOT NULL default '0', 
     1272  id int(11) NOT NULL default '0', 
    12721273  name varchar(255) NOT NULL default '', 
    12731274  url varchar(255) NOT NULL default '', 
     
    12761277  visibility tinyint(4) NOT NULL default '2', 
    12771278  xfn varchar(128) NOT NULL default '', 
    1278   PRIMARY KEY  (id), 
     1279  PRIMARY KEY (pid), 
    12791280  UNIQUE KEY blogid (blogid,url) 
     1281) $charset; 
     1282CREATE TABLE {$_POST['dbPrefix']}LinkCategories ( 
     1283  pid int(11) NOT NULL default '0', 
     1284  blogid int(11) NOT NULL default '0',