Nucleus CMS日本語版用プラグインのうち、日本語版開発者がサポートしているもの
Revision | 8e65532bcd181d37bf25a6f2b27d04b1b2cfa262 (tree) |
---|---|
Time | 2006-10-03 21:52:43 |
Author | shizuki <shizuki@1ca2...> |
Commiter | shizuki |
include ChoppedDisc0.5
git-svn-id: https://svn.sourceforge.jp/svnroot/nucleus-jp/plugin@408 1ca29b6e-896d-4ea0-84a5-967f57386b96
@@ -0,0 +1,423 @@ | ||
1 | +<?php | |
2 | +class NP_SearchResultsEX extends NucleusPlugin { | |
3 | + function getName() { return 'SearchResults EX'; } | |
4 | + function getAuthor() { return 'Taka + nakahara21 + Andy + shizuki'; } | |
5 | + function getURL() { return 'http://shizuki.kinezumi.net/NucleusCMS/Plugins/SearchResultsEX/'; } | |
6 | + function getVersion() { return '0.01'; } | |
7 | + function getDescription() { | |
8 | + return 'This plugin replace <%searchresults()%> with page switch<br /> | |
9 | + Usage: <%SearchResultsEX(default/index,15,,2,500)%><br /> | |
10 | + Requered NP_ExtensibleSearch'; | |
11 | + } | |
12 | + | |
13 | + function getEventList() { return array('PreSearchResults'); } | |
14 | + | |
15 | + function getPluginDep() { return array('NP_ExtensibleSearch'); } | |
16 | + | |
17 | + function supportsFeature($what) { | |
18 | + switch($what){ | |
19 | + case 'SqlTablePrefix': | |
20 | + return 1; | |
21 | + default: | |
22 | + return 0; | |
23 | + } | |
24 | + } | |
25 | + | |
26 | + function install() { | |
27 | + $this->createOption("srex_ads1", "[Ads code] code displayed under first and second item of the page", "textarea",''."\n"); | |
28 | + $this->createOption("srex_ads2", "[Ads code] code displayed under second and third item of the page", "textarea",''."\n"); | |
29 | + } | |
30 | + | |
31 | + function event_PreSearchResults(&$data) { // Orign NP_CommentSearch by Andy | |
32 | + global $blog, $manager; | |
33 | + $blogs = $data['blogs']; | |
34 | + $query = $data['query']; | |
35 | + $items = & $data['items']; | |
36 | + $searchclass =& new SEARCH($query); | |
37 | + | |
38 | + $sqlquery = 'SELECT i.inumber as itemid FROM '; | |
39 | + $tables = sql_table('item').' as i '; | |
40 | + $where_str = 'xxx.cm.cbody'; | |
41 | +// if ($manager->pluginInstalled('NP_TagEX')) { | |
42 | +// $tables .= ' left join '.sql_table('plug_tagex').' as tag on i.inumber = tag.inum'; | |
43 | +// $where_str .= ',xxx.tag.itags'; | |
44 | +// } | |
45 | + if ($manager->pluginInstalled('NP_TrackBack')) { | |
46 | + $tables .= ' left join '.sql_table('plugin_tb').' as t on i.inumber = t.tb_id'; | |
47 | + $where_str .= ',xxx.t.title,xxx.t.excerpt'; | |
48 | + } | |
49 | + $sqlquery .= $tables.' left join '.sql_table('comment').' as cm on i.inumber = cm.citem '; | |
50 | + $where = $searchclass->boolean_sql_where($where_str); | |
51 | + $where = strtr($where, array('i.xxx.'=> '')); | |
52 | + $sqlquery .= ' WHERE i.idraft = 0 and i.itime <= '.mysqldate($blog -> getCorrectTime()) | |
53 | + .' and i.iblog in (' . implode(',', $blogs) . ') ' | |
54 | + .' and '.$where; | |
55 | + $res = sql_query($sqlquery); | |
56 | + $array = array(); | |
57 | + while ($itemid = mysql_fetch_row($res)) { | |
58 | + array_push($array, $itemid[0]); | |
59 | + } | |
60 | + $data['items'] = array_unique(array_merge($items,$array)); | |
61 | + } | |
62 | + | |
63 | + function doSkinVar($skinType, $template = 'default/index', $p_amount = 10, $type = 1, $bmode = 'all', $maxresults = '') { | |
64 | + global $manager, $CONF, $blog, $query, $amount, $startpos; | |
65 | + $this->maxamount = ($maxresults) ? $maxresults : 0; | |
66 | + | |
67 | +// if (!$manager->pluginInstalled('NP_ExtensibleSearch') && getNucleusVersion() < ???) return; // Future | |
68 | + $type = floatval($type); | |
69 | + $typeExp = intval(($type - floor($type))*10); //0 or 1 or 9 | |
70 | + list($pageamount, $offset) = sscanf($p_amount, '%d(%d)'); | |
71 | + if (!$pageamount) $pageamount = 10; | |
72 | + if (preg_match("/^(<>)?([0-9\/]+)$/",$bmode,$matches)) { | |
73 | + if ($matches[1]) { | |
74 | + $hide = explode("/",$matches[2]); | |
75 | + $show = array(); | |
76 | + } else { | |
77 | + $hide = array(); | |
78 | + $show = explode("/",$matches[2]); | |
79 | + } | |
80 | + $bmode = 'all'; | |
81 | + } | |
82 | + if ($blog) { | |
83 | + $b =& $blog; | |
84 | + } else { | |
85 | + $b =& $manager->getBlog($CONF['DefaultBlog']); | |
86 | + } | |
87 | + $nowbid = intval($b->getID()); | |
88 | + | |
89 | + if ($template == 'form') { | |
90 | + $q = getVar('query'); | |
91 | + echo "<form method=\"get\" action=\"",createBlogidLink($nowbid)."\">\n"; | |
92 | + echo "\t<div class=\"searchform\">\n"; | |
93 | + echo "\t\t<input name=\"query\" class=\"formfield\" size=\"10\" maxlength=\"60\" accesskey=\"4\" value=\"".$q."\" />\n"; | |
94 | + echo "\t\t<br />\n"; | |
95 | + echo "\t\t<input type=\"submit\" value=\"_SEARCHFORM_SUBMIT\" class=\"formbutton\" />\n"; | |
96 | + echo "\t</div>\n"; | |
97 | + echo "</form>\n"; | |
98 | + return; | |
99 | + } | |
100 | + | |
101 | + $s_blogs = ''; | |
102 | + if ($bmode != 'all') { | |
103 | + $s_blogs .= ' and i.iblog = ' . $nowbid; | |
104 | + } elseif ($hide[0] && $bmode=='all') { | |
105 | + foreach ($hide as $val) { | |
106 | + if (intval($val) < 1) { | |
107 | + $val = getBlogIDFromName($val); | |
108 | + } | |
109 | + $s_blogs .= ' and i.iblog != ' . intval($val); | |
110 | + } | |
111 | + } elseif ($show[0] && $bmode=='all') { | |
112 | + foreach ($show as $val) { | |
113 | + if(intval($val) < 1){ | |
114 | + $val = getBlogIDFromName($val); | |
115 | + } | |
116 | + $w[] = intval($val); | |
117 | + } | |
118 | + $s_blogs .= ' and i.iblog in ('.implode(",",$w).')'; | |
119 | + } | |
120 | +// Origin NP_ExtensibleSearch by Andy | |
121 | + $highlight = ''; | |
122 | +// if ($manager->pluginInstalled('NP_ExtensibleSearch')) { | |
123 | + $explugin =& $manager->getPlugin('NP_ExtensibleSearch'); | |
124 | + $sqlquery = $explugin->getSqlQuery(htmlspecialchars($query), $amount, $highlight); | |
125 | +// } elseif (getNucleusVersion() >= ???) { | |
126 | +// $sqlquery = getSqlQuery($query, $amount, $highlight); | |
127 | +// } | |
128 | + $que_arr = explode(' ORDER BY', $sqlquery, 2); | |
129 | + $sqlquery = implode($s_blogs.' ORDER BY', $que_arr); | |
130 | + if (!$sqlquery) { | |
131 | + // no query -> show everything | |
132 | + $extraquery = ''; | |
133 | + $amountfound = $b->readLogAmount($template, $maxresults, $extraQuery, $query, 1, 1); | |
134 | + } else { | |
135 | +// if ($manager->pluginInstalled('NP_ExtensibleSearch')) { | |
136 | + $entries = $explugin->getArray($sqlquery); | |
137 | +// } elseif (getNucleusVersion() >= ???) { | |
138 | +// $entries = $???????->getArray($sqlquery); | |
139 | +// } | |
140 | + if (count($entries) > 0) { | |
141 | + $page_switch = $this->PageSwitch($type, $pageamount, $offset, $entries, $b); | |
142 | + if ($typeExp != 9) echo $page_switch; | |
143 | + $this->_showUsingQuery($template, $sqlquery, $highlight, $startpos, $pageamount, $b); | |
144 | + if ($type >= 1 && $typeExp != 1) echo $page_switch; | |
145 | + } else { | |
146 | + $template =& $manager->getTemplate($template); | |
147 | + $vars = array( | |
148 | + 'query' => htmlspecialchars($query), | |
149 | + 'blogid' => $nowbid | |
150 | + ); | |
151 | + echo TEMPLATE::fill($template['SEARCH_NOTHINGFOUND'],$vars); | |
152 | + } | |
153 | + } | |
154 | + } | |
155 | + | |
156 | + function _showUsingQuery($template, $showQuery, $highlight, $q_startpos, $q_amount, $b) { | |
157 | + $onlyone_query = $showQuery . ' LIMIT ' . intval($q_startpos) .', 1'; | |
158 | + $b->showUsingQuery($template, $onlyone_query, intval($highlight), 1, 1); | |
159 | + echo $this->getOption('srex_ads1'); | |
160 | + | |
161 | + $q_startpos++; | |
162 | + $q_amount--; | |
163 | + $onlyone_query = $showQuery . ' LIMIT ' . intval($q_startpos) .', 1'; | |
164 | + $b->showUsingQuery($template, $onlyone_query, intval($highlight), 1, 1); | |
165 | + if (mysql_num_rows(sql_query($onlyone_query))) { | |
166 | + echo $this->getOption('srex_ads2'); | |
167 | + } | |
168 | + | |
169 | + $q_startpos++; | |
170 | + $q_amount--; | |
171 | + $second_query = $showQuery . ' LIMIT ' . intval($q_startpos) . ',' . intval($q_amount); | |
172 | + $b->showUsingQuery($template, $second_query, intval($highlight), 1, 1); | |
173 | + } | |
174 | + | |
175 | + function PageSwitch($type, $pageamount, $offset, $entries, $b) { // Orign NP_ShowBlogs by Taka + nakahara21 | |
176 | + global $CONF, $startpos; | |
177 | + $startpos = intval($startpos); | |
178 | + $pageamount = intval($pageamount); | |
179 | + $offset = intval($offset); | |
180 | + if($_SERVER['REQUEST_URI']==''){ | |
181 | + $uri = (serverVar("QUERY_STRING"))? | |
182 | + sprintf("%s%s%s?%s","http://",serverVar("HTTP_HOST"),serverVar("SCRIPT_NAME"),serverVar("QUERY_STRING")): | |
183 | + sprintf("%s%s%s","http://",serverVar("HTTP_HOST"),serverVar("SCRIPT_NAME")); | |
184 | + } else { | |
185 | + $uri = sprintf("%s%s%s","http://",serverVar("HTTP_HOST"),serverVar("REQUEST_URI")); | |
186 | + } | |
187 | + $page_str = ($CONF['URLMode'] == 'pathinfo') ? 'page/' : 'page='; | |
188 | + list($pagelink, $currentpage) = explode($page_str,$uri); | |
189 | + $currentpage = intval($currentpage); | |
190 | + $pagelink = preg_replace('|[^a-z0-9-~+_.?#=&;,/:@%]|i', '', $pagelink); | |
191 | +// $pagelink = rawurldecode($pagelink); | |
192 | +// $pagelink = stripslashes($pagelink); | |
193 | + if ($currentpage>0) { | |
194 | + $startpos = ($currentpage-1) * $pageamount; | |
195 | + } else { | |
196 | + $currentpage = 1; | |
197 | + $uri = parse_url($pagelink); | |
198 | + if ($pagelink == $CONF['IndexURL'] && $CONF['URLMode'] != 'pathinfo') { // add | |
199 | + $pagelink = $b->getURL(); | |
200 | + if ($uri['query']) { | |
201 | + $pagelink .= '?'.$uri['query']; | |
202 | + $uri['query'] = true; | |
203 | + } | |
204 | + } | |
205 | + if ($uri['query']) { | |
206 | + $pagelink .= '&'; | |
207 | + $pagelink = str_replace('&&','&',$pagelink); | |
208 | + $pagelink = str_replace('&&','&',$pagelink); | |
209 | + } elseif (strpos('?', $uri)) { | |
210 | + $pagelink .= '?'; | |
211 | + } | |
212 | + } | |
213 | + if ($CONF['URLMode'] == 'pathinfo' && substr($pagelink, -1) != '/') $pagelink .= '/'; | |
214 | + | |
215 | + $totalamount = 0; | |
216 | + if (is_array($entries)) { | |
217 | + $totalamount = count($entries); | |
218 | + } | |
219 | + $totalamount = intval($totalamount); | |
220 | + | |
221 | + if (!empty($this->maxamount) && $this->maxamount < $totalamount) $totalamount = intval($this->maxamount); | |
222 | + $totalpages = ceil($totalamount/$pageamount); | |
223 | + $totalpages = intval($totalpages); | |
224 | + if ($startpos > $totalamount) { | |
225 | + $currentpage = $totalpages; | |
226 | + $startpos = $totalamount-$pageamount; | |
227 | + } | |
228 | + if ($offset) { | |
229 | + $startpos += $offset; | |
230 | + $totalamount -= $offset; | |
231 | + } | |
232 | + $totalpages = ceil($totalamount/$pageamount); | |
233 | + if ($startpos > $totalamount) { | |
234 | + $currentpage = $totalpages; | |
235 | + $startpos = $totalamount-$pageamount; | |
236 | + } | |
237 | + $prevpage = ($currentpage > 1) ? $currentpage - 1 : 0; | |
238 | + $nextpage = $currentpage + 1; | |
239 | + $firstpagelink = $pagelink . $page_str . '1'; | |
240 | +// $firstpagelink .= '.html'; | |
241 | + $lastpagelink = $pagelink . $page_str . $totalpages; | |
242 | +// $lastpagelink .= '.html'; | |
243 | + | |
244 | + if ($type >= 1) { | |
245 | + $buf .= '<div class="pageswitch">'."\n"; | |
246 | + if ($prevpage) { | |
247 | + $buf .= "<link rel=\"first\" title=\"first page\" href=\"{$firstpagelink}\" />\n"; | |
248 | + $prevpagelink = $pagelink . $page_str . $prevpage; | |
249 | +// $prevpagelink .= '.html'; | |
250 | + $buf .= "\n<a href=\"{$prevpagelink}\" title=\"Previous page\" rel=\"Prev\">«Prev</a> |"; | |
251 | + } elseif ($type >= 2) { | |
252 | + $buf .= "\n«Prev |"; | |
253 | + } | |
254 | + if (intval($type) == 2) { | |
255 | + $sepstr = '·'; | |
256 | + $buf .= "|"; | |
257 | + for ($i=1; $i<=$totalpages; $i++) { | |
258 | + $i_pagelink = $pagelink . $page_str . $i; | |
259 | +// $i_pagelink .= '.html'; | |
260 | + if ($i == $currentpage) { | |
261 | + $buf .= " <strong>{$currentpage}</strong> |\n"; | |
262 | + } elseif ($totalpages<10 || $i<4 || $i>$totalpages-3) { | |
263 | + $buf .= " <a href=\"{$i_pagelink}\" title=\"Page No.{$i}\">{$i}</a> |\n"; | |
264 | + } else { | |
265 | + if ($i<$currentpage-1 || $i>$currentpage+1) { | |
266 | + if (($i==4 && ($currentpage>5 || $currentpage==1)) || $i==$currentpage+2) { | |
267 | + $buf = rtrim($buf); | |
268 | + $buf .= "...|\n"; | |
269 | + } | |
270 | + } else { | |
271 | + $buf .= " <a href=\"{$i_pagelink}\" title=\"Page No.{$i}\">{$i}</a> |"; | |
272 | + } | |
273 | + } | |
274 | + } | |
275 | + $buf = rtrim($buf); | |
276 | + } | |
277 | + if (intval($type) == 3) { | |
278 | + $buf .= "|"; | |
279 | + $sepstr = '·'; | |
280 | + for ($i=1; $i<=$totalpages; $i++) { | |
281 | + $i_pagelink = $pagelink . $page_str . $i; | |
282 | + $i_pagelink .= '.html'; | |
283 | + $paging = 5; | |
284 | + if ($i == $currentpage) { | |
285 | + $buf .= " <strong>{$i}</strong> {$sepstr}\n"; | |
286 | + } elseif ($totalpages < 10 || (($i < ($currentpage + $paging)) && (($currentpage - $paging) < $i))) { | |
287 | + $buf .= " <a href=\"{$i_pagelink}\" title=\"Page No.{$i}\">{$i}</a> {$sepstr}\n"; | |
288 | + } elseif ($currentpage - $paging == $i) { | |
289 | + $buf = rtrim($buf); | |
290 | + $buf .= ' ...'."\n"; | |
291 | + } elseif ($currentpage + $paging == $i) { | |
292 | + $buf = rtrim($buf); | |
293 | + $buf = preg_replace("/$sepstr$/","",$buf); | |
294 | + $buf .= "... |\n"; | |
295 | + } | |
296 | + } | |
297 | + } | |
298 | + if ($totalpages >= $nextpage) { | |
299 | + $nextpagelink = $pagelink . $page_str . $nextpage; | |
300 | +// $nextpagelink .= '.html'; | |
301 | + $buf .= "| <a href=\"{$nextpagelink}\" title=\"Next page\" rel=\"Next\">Next»</a>\n"; | |
302 | + $buf .= "<link rel=\"last\" title=\"Last page\" href=\"{$lastpagelink}\" />\n"; | |
303 | + } elseif ($type >= 2) { | |
304 | + $buf .= "| Next»\n"; | |
305 | + } | |
306 | + $buf .= "</div>\n"; | |
307 | + return $buf; | |
308 | + } | |
309 | + } | |
310 | + | |
311 | + function doTemplateVar(&$item, $maxLength = 250, $addHighlight = 1) { // Orign NP_ChoppedDisc.php by nakahara21 | |
312 | + global $CONF, $manager, $member, $catid; | |
313 | + | |
314 | + $item_id = intval($item->itemid); | |
315 | + $que = 'SELECT %s as result FROM %s WHERE %s = %d'; | |
316 | + $Searched['Item'] = strip_tags($item->body).strip_tags($item->more); | |
317 | + $res = sql_query(sprintf($que, cbody, sql_table('comment'), citem, $item_id)); | |
318 | + while ($cm = mysql_fetch_object($res)) { | |
319 | + $Searched['comment'] .= strip_tags($cm->result); | |
320 | + } | |
321 | +// $res = quickQuery(sprintf($que, title, sql_table('plugin_tb'), tb_id, $item_id)); | |
322 | +// $Searched['Trackback_title'] = strip_tags($res); | |
323 | + $res = sql_query(sprintf($que, excerpt, sql_table('plugin_tb'), tb_id, $item_id)); | |
324 | + while ($tb = mysql_fetch_object($res)) { | |
325 | + $Searched['Trackback'] .= strip_tags($tb->result); | |
326 | + } | |
327 | + $que_arr = $this->getQueryStrings(); | |
328 | + foreach($Searched as $sKey => $sValue) { | |
329 | + $i = 1; | |
330 | + foreach($que_arr as $qValue) { | |
331 | + if (!(mb_substr_count($sValue, htmlspecialchars($qValue)))) $i++; | |
332 | + } | |
333 | + if ($i > count($que_arr)) { | |
334 | + $sValue = ''; | |
335 | + } | |
336 | + if ($sValue) { | |
337 | + if ($addHighlight) { | |
338 | + $i = 0; | |
339 | + foreach($que_arr as $qValue) { | |
340 | + $pattern = "<span class='highlight_{$i}'>{$qValue}</span>"; | |
341 | + $sValue = mb_eregi_replace(htmlspecialchars($qValue), $pattern, $sValue); | |
342 | + $i++; | |
343 | + if ($i == 10) $i = 0; | |
344 | + } | |
345 | + $str_array = mb_split('</span>', $sValue); | |
346 | + $num = count($str_array); | |
347 | + $lastKey = $num +(-1); | |
348 | + foreach($str_array as $key => $value) { | |
349 | + $tmpStr = mb_split("<span class='highlight", $value); | |
350 | + $tmpStr[0] = mb_eregi_replace('<', '<', $tmpStr[0]); | |
351 | + $tmpStr[0] = mb_eregi_replace('>', '>', $tmpStr[0]); | |
352 | + $tmpStr[0] = mb_eregi_replace('&', '&', $tmpStr[0]); | |
353 | + //$tmpStr[0] = mb_eregi_replace(' ', ' ', $tmpStr[0]); | |
354 | + $lastp = mb_strwidth($tmpStr[0], _CHARSET); | |
355 | + if ($key == 0) { | |
356 | + if ($lastp > 20) { | |
357 | + $temp_s = '...'.mb_substr($tmpStr[0], -20, 20, _CHARSET); | |
358 | + } else { | |
359 | + $temp_s = $tmpStr[0]; | |
360 | + } | |
361 | + } elseif ($key > 0 && $key < $lastKey) { | |
362 | + if ($lastp > 30) { | |
363 | + $temp_s = mb_substr($tmpStr[0], 0, 10, _CHARSET).'...'.mb_substr($tmpStr[0], -10, 10, _CHARSET); | |
364 | + } else { | |
365 | + $temp_s = $tmpStr[0]; | |
366 | + } | |
367 | + } elseif ($key == $lastKey) { | |
368 | + if ($lastp > 20) { | |
369 | + $temp_s = mb_substr($tmpStr[0], 0, 20, _CHARSET).'...'; | |
370 | + } else { | |
371 | + $temp_s = $tmpStr[0]; | |
372 | + } | |
373 | + } | |
374 | + if ($key != $lastKey) { | |
375 | + $str_array[$key] = htmlspecialchars($temp_s, ENT_QUOTES) . "<span class='highlight" . $tmpStr[1]; | |
376 | + } else { | |
377 | + $str_array[$key] = htmlspecialchars($temp_s, ENT_QUOTES); | |
378 | + } | |
379 | + } | |
380 | + $sValue = '<span class="queryPosition">in ' . htmlspecialchars($sKey); | |
381 | + $sValue .= '</span><div class="queryResults">' . @join('</span>', $str_array) . '</div>'; | |
382 | + } else { | |
383 | + $sValue = '<span class="queryPosition">in ' . htmlspecialchars($sKey) . '</span><div class="queryResults">'; | |
384 | + $sValue .= htmlspecialchars(shorten($sValue, $maxLength, '...'), ENT_QUOTES) . '</div>'; | |
385 | + } | |
386 | + echo $sValue; | |
387 | + } | |
388 | + } | |
389 | + } | |
390 | + | |
391 | + function getQueryStrings() { | |
392 | + global $query; | |
393 | +// if (requestVar('query')) { | |
394 | + $q = 'query'; | |
395 | +// $urlq = serverVar("QUERY_STRING"); | |
396 | + if(_CHERSET != 'UTF-8') { | |
397 | + $query = mb_convert_encoding($query, "UTF-8", _CHARSET); | |
398 | + } | |
399 | + $urlq = urlencode($query); | |
400 | + $urlq = preg_replace('|[^a-zA-Z0-9-~+_.#=&;,:@%]|i', '', $urlq); | |
401 | +// $urlq = str_replace('?', '', $urlq); | |
402 | +// $urlq = str_replace('or+', '', $urlq); | |
403 | + $SQ = str_replace('or+', '', $urlq); | |
404 | + /*$urlq = explode('&', $urlq); | |
405 | + foreach ($urlq as $v) { | |
406 | + $tmpq = explode('=', $v); | |
407 | + if ($tmpq[0] == $q) $SQ = $tmpq[1]; | |
408 | + }*/ | |
409 | + $SQarray = explode('+', $SQ); | |
410 | + return array_map(array(&$this, '_rawdecode'), $SQarray); | |
411 | +// } | |
412 | + } | |
413 | + | |
414 | + function _rawdecode($str){ | |
415 | + $str = rawurldecode($str); | |
416 | + if(_CHERSET != 'UTF-8') { | |
417 | + $str = mb_convert_encoding($str, _CHARSET, "UTF-8"); | |
418 | + } | |
419 | + return $str; | |
420 | + } | |
421 | +} | |
422 | + | |
423 | +?> | |
\ No newline at end of file |
@@ -0,0 +1,30 @@ | ||
1 | +<? | |
2 | + | |
3 | +class NP_ItemBname extends NucleusPlugin { | |
4 | + | |
5 | + function getName() { return 'ItemBname'; } | |
6 | + function getAuthor() { return ''; } | |
7 | + function getURL() { return '../../index.html'; } | |
8 | + function getVersion() { return '1.0'; } | |
9 | + function getDescription() { return 'Usage:<%ItemBname%> in template'; } | |
10 | + | |
11 | + function doTemplateVar($item) { | |
12 | + global $CONF; | |
13 | + $thisblogid = getBlogIDFromItemID($item->itemid); | |
14 | + $thisblogname = getBlogNameFromID($thisblogid); | |
15 | + echo '<a href="'.createBlogIDLink($thisblogid).'">'.$thisblogname.'</a>'; | |
16 | + } | |
17 | + | |
18 | + function supportsFeature ($what) | |
19 | + { | |
20 | + switch ($what) | |
21 | + { | |
22 | + case 'SqlTablePrefix': | |
23 | + return 1; | |
24 | + default: | |
25 | + return 0; | |
26 | + } | |
27 | + } | |
28 | + | |
29 | +} | |
30 | +?> |
@@ -0,0 +1,89 @@ | ||
1 | +#main .entry .highlight_0 { | |
2 | + color: #000; | |
3 | + background-color: rgb(255, 255, 102); | |
4 | + line-height : 1.2em; | |
5 | + font-size : 1.1em; | |
6 | + font-style : italic; | |
7 | + font-weight : bold; | |
8 | +} | |
9 | + | |
10 | +#main .entry .highlight_1 { | |
11 | + color: #000; | |
12 | + background-color: rgb(160, 255, 255); | |
13 | + line-height : 1.2em; | |
14 | + font-size : 1.1em; | |
15 | + font-style : italic; | |
16 | + font-weight : bold; | |
17 | +} | |
18 | + | |
19 | +#main .entry .highlight_2 { | |
20 | + color: #000; | |
21 | + background-color: rgb(153, 255, 153); | |
22 | + line-height : 1.2em; | |
23 | + font-size : 1.1em; | |
24 | + font-style : italic; | |
25 | + font-weight : bold; | |
26 | +} | |
27 | + | |
28 | +#main .entry .highlight_3 { | |
29 | + color: #000; | |
30 | + background-color: rgb(255, 153, 153); | |
31 | + line-height : 1.2em; | |
32 | + font-size : 1.1em; | |
33 | + font-style : italic; | |
34 | + font-weight : bold; | |
35 | +} | |
36 | + | |
37 | +#main .entry .highlight_4 { | |
38 | + color: #000; | |
39 | + background-color: rgb(255, 102, 255); | |
40 | + line-height : 1.2em; | |
41 | + font-size : 1.1em; | |
42 | + font-style : italic; | |
43 | + font-weight : bold; | |
44 | +} | |
45 | + | |
46 | +#main .entry .highlight_5 { | |
47 | + color: #fff; | |
48 | + background-color: rgb(136, 0, 0); | |
49 | + line-height : 1.2em; | |
50 | + font-size : 1.1em; | |
51 | + font-style : italic; | |
52 | + font-weight : bold; | |
53 | +} | |
54 | + | |
55 | +#main .entry .highlight_6 { | |
56 | + color: #fff; | |
57 | + background-color: rgb(0, 170, 0); | |
58 | + line-height : 1.2em; | |
59 | + font-size : 1.1em; | |
60 | + font-style : italic; | |
61 | + font-weight : bold; | |
62 | +} | |
63 | + | |
64 | +#main .entry .highlight_7 { | |
65 | + color: #fff; | |
66 | + background-color: rgb(136, 104, 0); | |
67 | + line-height : 1.2em; | |
68 | + font-size : 1.1em; | |
69 | + font-style : italic; | |
70 | + font-weight : bold; | |
71 | +} | |
72 | + | |
73 | +#main .entry .highlight_8 { | |
74 | + color: #fff; | |
75 | + background-color: rgb(0, 70, 153); | |
76 | + line-height : 1.2em; | |
77 | + font-size : 1.1em; | |
78 | + font-style : italic; | |
79 | + font-weight : bold; | |
80 | +} | |
81 | + | |
82 | +#main .entry .highlight_9 { | |
83 | + color: #fff; | |
84 | + background-color: rgb(153, 0, 153); | |
85 | + line-height : 1.2em; | |
86 | + font-size : 1.1em; | |
87 | + font-style : italic; | |
88 | + font-weight : bold; | |
89 | +} |
@@ -0,0 +1,5 @@ | ||
1 | +<h2 class="e_title"><a href="<%itemlink%>" title="<%title%> を読む"><%syndicate_title(25)%></a></h2> | |
2 | +<p class="e_body"><%SearchResultsEX(250,1)%></p> | |
3 | +<div class="searchT"><%TagEX()%></div> | |
4 | +<span class="pageURL"><a href="<%itemlink%>"><%itemlink%></a></span> | |
5 | +<span class="opt">( [<%ItemBname%>] <%date%> <%time%> <%edit%> )</span> | |
\ No newline at end of file |