root/expansion_pack/textcube/plugins/CT_RecentTB_Default/index.php @ 538

Revision 538, 2.4 KB (checked in by inureyes, 2 years ago)
  • 9월 중순의 소스로 수정
Line 
1<?php
2/* Recent Trackbacks plugin for Textcube 1.5
3   ----------------------------------
4   Version 1.0
5   Tatter and Friends development team.
6
7   Creator          : NANI
8   Maintainer       : Peris, inureyes, graphittie
9
10   Created at       : 2006.10.10
11   Last modified at : 2007.8.10
12
13 This plugin shows recent trackback on 'quilt'.
14 For the detail, visit http://forum.Textcube.com/ko
15
16
17 General Public License
18 http://www.gnu.org/licenses/gpl.html
19
20 This program is free software; you can redistribute it and/or modify
21 it under the terms of the GNU General Public License as published by
22 the Free Software Foundation; either version 2 of the License, or
23 (at your option) any later version.
24
25*/
26
27// lib/model/trackback.php : 46 line
28function _getRecentTrackbacks($blogid) {
29    global $database;
30    global $skinSetting;
31    $trackbacks = array();
32    $sql = doesHaveOwnership() ? "SELECT *
33        FROM
34            {$database['prefix']}Trackbacks
35        WHERE
36            blogid = $blogid AND isFiltered = 0
37        ORDER BY
38            written
39        DESC LIMIT
40            {$skinSetting['trackbacksOnRecent']}" :
41        "SELECT t.*
42        FROM
43            {$database['prefix']}Trackbacks t
44            LEFT JOIN {$database['prefix']}Entries e ON t.blogid = e.blogid AND t.entry = e.id
45            LEFT JOIN {$database['prefix']}Categories c ON e.blogid = c.blogid AND e.category = c.id
46        WHERE
47            t.blogid = $blogid AND e.draft = 0 AND e.visibility >= 2 AND (c.visibility > 1 OR e.category = 0) AND t.isFiltered = 0
48        ORDER BY
49            t.written
50        DESC LIMIT
51            {$skinSetting['trackbacksOnRecent']}";
52    if ($result = DBQuery::query($sql)) {
53        while ($trackback = mysql_fetch_array($result))
54            array_push($trackbacks, $trackback);
55    }
56    return $trackbacks;
57}
58
59function CT_RecentTB_Default($target) {
60    global $blogid;
61    global $blogURL;
62    requireComponent("Eolin.PHP.Core");
63    requireComponent("Textcube.Function.misc");
64   
65    $target .= '<ul>';
66    $trackbacks = _getRecentTrackbacks($blogid);
67    foreach ($trackbacks as $trackback) {
68        $target .= '<li>';
69        $target .= '<span style="color: #9E7C54;">'.Timestamp::format2($trackback['written']).'</span>';
70        $target .= '<a href="'.$blogURL.'/'.$trackback['entry'].'#trackback'.$trackback['id'].'"> ';
71        $target .= htmlspecialchars(UTF8::lessenAsEm($trackback['subject'],30));
72        $target .= '</a> - ';
73        $target .= '<cite style="color: #777; font-style: normal;">';
74        $target .= htmlspecialchars(UTF8::lessenAsEm($trackback['site'], 10));
75        $target .= '</cite>';
76        $target .= '</li>';
77    }
78    $target .= '</ul>';
79
80    return $target;
81}
82?>
Note: See TracBrowser for help on using the browser.