4 include($strRel . 'config.php');
5 include($DIR_LIBS . 'PLUGINADMIN.php');
6 include('template.php');
9 // Send out Content-type
10 sendContentType('application/xhtml+xml', 'admin-trackback', _CHARSET);
12 // Compatiblity with Nucleus < = 2.0
13 if (!function_exists('sql_table')) { function sql_table($name) { return 'nucleus_' . $name; } }
17 $oPluginAdmin = new PluginAdmin('TrackBack');
19 if (!($member->isLoggedIn() && $member->isAdmin()))
21 $oPluginAdmin->start();
22 echo '<p>' . _ERROR_DISALLOWED . '</p>';
28 $action = requestVar('action');
29 $aActionsNotToCheck = array(
32 if (!in_array($action, $aActionsNotToCheck)) {
33 if (!$manager->checkTicket()) doError(_ERROR_BADTICKET);
35 $oPluginAdmin->start();
37 //modify start+++++++++
38 $plug =& $oPluginAdmin->plugin;
39 $tableVersion = $plug->checkTableVersion();
41 // include language file for this plugin
42 $language = ereg_replace( '[\\|/]', '', getLanguageName());
43 if (file_exists($plug->getDirectory().'language/'.$language.'.php'))
44 include_once($plug->getDirectory().'language/'.$language.'.php');
46 include_once($plug->getDirectory().'language/'.'english.php');
49 $mTemplate = new Trackback_Template();
50 $mTemplate->set ('CONF', $CONF);
51 $mTemplate->set ('plugid', $plug->getID());
52 $mTemplate->template('templates/menu.html');
53 echo $mTemplate->fetch();
55 $oTemplate = new Trackback_Template();
56 $oTemplate->set ('CONF', $CONF);
60 //modify start+++++++++
63 CREATE TABLE IF NOT EXISTS
64 ".sql_table('plugin_tb_lookup')."
70 PRIMARY KEY (`link` (100))
73 echo $q = "ALTER TABLE ".sql_table('plugin_tb')."
74 ADD `block` TINYINT( 4 ) NOT NULL AFTER `url` ,
75 ADD `spam` TINYINT( 4 ) NOT NULL AFTER `block` ,
76 ADD `link` TINYINT( 4 ) NOT NULL AFTER `spam` ,
77 CHANGE `url` `url` TEXT NOT NULL,
78 CHANGE `title` `title` TEXT NOT NULL,
79 CHANGE `excerpt` `excerpt` TEXT NOT NULL,
80 CHANGE `blog_name` `blog_name` TEXT NOT NULL,
82 ADD `id` INT( 11 ) NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST ;";
83 $res = @mysql_query($q);
85 echo 'Could not alter table: ' . mysql_error();
88 $oTemplate->template('templates/updatetablefinished.html');
90 @mysql_query('ALTER TABLE `' . sql_table('plugin_tb') . '` ADD INDEX `tb_id_block_timestamp_idx` ( `tb_id`, `block`, `timestamp` DESC )');
95 $tb = intRequestVar('tb');
99 ".sql_table('plugin_tb')."
106 $action = requestVar('next');
108 case 'blocked_clear':
109 $res = mysql_query ("DELETE FROM ".sql_table('plugin_tb')." WHERE block = 1");
110 $action = requestVar('next');
113 case 'blocked_spamclear':
114 $res = mysql_query ("DELETE FROM ".sql_table('plugin_tb')." WHERE block = 1 and spam = 1");
115 $action = requestVar('next');
119 $tb = intRequestVar('tb');
121 $res = mysql_query ("
123 ".sql_table('plugin_tb')."
130 $action = requestVar('next');
134 $tb = intRequestVar('tb');
136 $res = mysql_query ("
138 ".sql_table('plugin_tb')."
143 $action = requestVar('next');
147 $title = requestVar('title');
148 $url = requestVar('url');
149 $excerpt = requestVar('excerpt');
150 $blog_name = requestVar('blog_name');
151 $ping_url = requestVar('ping_url');
153 // No charset conversion needs to be done here, because
154 // the charset used to receive the info is used to send
158 $error = $oPluginAdmin->plugin->sendPing(0, $title, $url, $excerpt, $blog_name, $ping_url);
161 echo '<b>TrackBack Error:' . $error . '</b>';
165 $action = requestVar('next');
168 $id = intRequestVar('id');
170 $usePathInfo = ($CONF['URLMode'] == 'pathinfo');
172 @ include($strRel . 'fancyurls.config.php');
175 $itemData = $manager->getItem($id, 0, 0);
177 if(is_array($itemData)){
178 $blog =& $manager->getBlog($itemData['blogid']);
179 $CONF['ItemURL'] = ($usePathInfo)? preg_replace('/\/$/', '', $blog->getURL()): $blog->getURL();
180 $itemData['url'] = createItemLink($id);
181 $itemData['excerpt'] = shorten(strip_tags($itemData['body'].$itemData['more']), 250, '...');
182 $itemData['blogname'] = $blog->getName();
185 $itemData['url'] = $CONF['IndexURL'];
186 $itemData['blogname'] = $CONF['SiteName'];
188 $oTemplate->set('item', $itemData);
190 $oTemplate->template('templates/ping.html');
198 $oTemplate->template('help.html');
202 $oTemplate->template('templates/ping.html');
206 $start = intRequestVar('start') ? intRequestVar('start') : 0;
207 $amount = intRequestVar('amount') ? intRequestVar('amount') : 25;
209 $rres = mysql_query ("
213 ".sql_table('plugin_tb')." AS t,
214 ".sql_table('item')." AS i
216 t.tb_id = i.inumber AND
220 if ($row = mysql_fetch_array($rres))
221 $count = $row['count'];
225 $rres = mysql_query ("
228 i.inumber AS story_id,
231 t.blog_name AS blog_name,
232 t.excerpt AS excerpt,
234 -- UNIX_TIMESTAMP(t.timestamp) AS timestamp,
235 t.timestamp AS timestamp,
239 ".sql_table('plugin_tb')." AS t,
240 ".sql_table('item')." AS i
242 t.tb_id = i.inumber AND
247 ".$start.",".$amount."
252 while ($rrow = mysql_fetch_array($rres))
254 $rrow['title'] = $oPluginAdmin->plugin->_cut_string($rrow['title'], 50);
255 $rrow['title'] = $oPluginAdmin->plugin->_strip_controlchar($rrow['title']);
256 $rrow['title'] = htmlspecialchars($rrow['title']);
257 // $rrow['title'] = _CHARSET == 'UTF-8' ? $rrow['title'] : $oPluginAdmin->plugin->_utf8_to_entities($rrow['title']);
259 $rrow['blog_name'] = $oPluginAdmin->plugin->_cut_string($rrow['blog_name'], 50);
260 $rrow['blog_name'] = $oPluginAdmin->plugin->_strip_controlchar($rrow['blog_name']);
261 $rrow['blog_name'] = htmlspecialchars($rrow['blog_name']);
262 // $rrow['blog_name'] = _CHARSET == 'UTF-8' ? $rrow['blog_name'] : $oPluginAdmin->plugin->_utf8_to_entities($rrow['blog_name']);
264 $rrow['excerpt'] = $oPluginAdmin->plugin->_cut_string($rrow['excerpt'], 800);
265 $rrow['excerpt'] = $oPluginAdmin->plugin->_strip_controlchar($rrow['excerpt']);
266 $rrow['excerpt'] = htmlspecialchars($rrow['excerpt']);
267 // $rrow['excerpt'] = _CHARSET == 'UTF-8' ? $rrow['excerpt'] : $oPluginAdmin->plugin->_utf8_to_entities($rrow['excerpt']);
269 $rrow['url'] = htmlspecialchars($rrow['url'], ENT_QUOTES);
270 $rrow['timestamp'] = htmlspecialchars($rrow['timestamp'], ENT_QUOTES);
272 $blog = & $manager->getBlog(getBlogIDFromItemID($item['itemid']));
273 $rrow['story_url'] = $oPluginAdmin->plugin->_createItemLink($rrow['story_id'], $blog);
274 $rrow['story'] = htmlspecialchars(strip_tags($rrow['story']), ENT_QUOTES);
279 $oTemplate->set ('amount', $amount);
280 $oTemplate->set ('count', $count);
281 $oTemplate->set ('start', $start);
282 $oTemplate->set ('items', $items);
283 $oTemplate->template('templates/blocked.html');
287 $start = intRequestVar('start') ? intRequestVar('start') : 0;
288 $amount = intRequestVar('amount') ? intRequestVar('amount') : 25;
290 $rres = mysql_query ("
294 ".sql_table('plugin_tb')." AS t,
295 ".sql_table('item')." AS i
297 t.tb_id = i.inumber AND
301 if ($row = mysql_fetch_array($rres))
302 $count = $row['count'];
306 $rres = mysql_query ("
309 i.inumber AS story_id,
312 t.blog_name AS blog_name,
313 t.excerpt AS excerpt,
315 UNIX_TIMESTAMP(t.timestamp) AS timestamp
317 ".sql_table('plugin_tb')." AS t,
318 ".sql_table('item')." AS i
320 t.tb_id = i.inumber AND
325 ".$start.",".$amount."
330 while ($rrow = mysql_fetch_array($rres))
332 $rrow['title'] = $oPluginAdmin->plugin->_cut_string($rrow['title'], 50);
333 $rrow['title'] = $oPluginAdmin->plugin->_strip_controlchar($rrow['title']);
334 $rrow['title'] = htmlspecialchars($rrow['title']);
335 // $rrow['title'] = _CHARSET == 'UTF-8' ? $rrow['title'] : $oPluginAdmin->plugin->_utf8_to_entities($rrow['title']);
337 $rrow['blog_name'] = $oPluginAdmin->plugin->_cut_string($rrow['blog_name'], 50);
338 $rrow['blog_name'] = $oPluginAdmin->plugin->_strip_controlchar($rrow['blog_name']);
339 $rrow['blog_name'] = htmlspecialchars($rrow['blog_name']);
340 // $rrow['blog_name'] = _CHARSET == 'UTF-8' ? $rrow['blog_name'] : $oPluginAdmin->plugin->_utf8_to_entities($rrow['blog_name']);
342 $rrow['excerpt'] = $oPluginAdmin->plugin->_cut_string($rrow['excerpt'], 800);
343 $rrow['excerpt'] = $oPluginAdmin->plugin->_strip_controlchar($rrow['excerpt']);
344 $rrow['excerpt'] = htmlspecialchars($rrow['excerpt']);
345 // $rrow['excerpt'] = _CHARSET == 'UTF-8' ? $rrow['excerpt'] : $oPluginAdmin->plugin->_utf8_to_entities($rrow['excerpt']);
347 $rrow['url'] = htmlspecialchars($rrow['url'], ENT_QUOTES);
349 $blog = & $manager->getBlog(getBlogIDFromItemID($item['itemid']));
350 $rrow['story_url'] = $oPluginAdmin->plugin->_createItemLink($rrow['story_id'], $blog);
351 $rrow['story'] = htmlspecialchars(strip_tags($rrow['story']), ENT_QUOTES);
356 $oTemplate->set ('amount', $amount);
357 $oTemplate->set ('count', $count);
358 $oTemplate->set ('start', $start);
359 $oTemplate->set ('items', $items);
360 $oTemplate->template('templates/all.html');
364 $id = requestVar('id');
365 $start = intRequestVar('start') ? intRequestVar('start') : 0;
366 $amount = intRequestVar('amount') ? intRequestVar('amount') : 25;
368 $ires = mysql_query ("
373 ".sql_table('item')."
378 if ($irow = mysql_fetch_array($ires))
381 $story['title'] = $irow['ititle'];
383 $rres = mysql_query ("
387 ".sql_table('plugin_tb')." AS t
389 t.tb_id = '".$id."' AND
393 if ($row = mysql_fetch_array($rres))
394 $count = $row['count'];
398 $rres = mysql_query ("
402 t.blog_name AS blog_name,
403 t.excerpt AS excerpt,
405 UNIX_TIMESTAMP(t.timestamp) AS timestamp
407 ".sql_table('plugin_tb')." AS t
409 t.tb_id = '".$id."' AND
414 ".$start.",".$amount."
419 while ($rrow = mysql_fetch_array($rres))
421 $rrow['title'] = $oPluginAdmin->plugin->_cut_string($rrow['title'], 50);
422 $rrow['title'] = $oPluginAdmin->plugin->_strip_controlchar($rrow['title']);
423 $rrow['title'] = htmlspecialchars($rrow['title']);
424 // $rrow['title'] = _CHARSET == 'UTF-8' ? $rrow['title'] : $oPluginAdmin->plugin->_utf8_to_entities($rrow['title']);
426 $rrow['blog_name'] = $oPluginAdmin->plugin->_cut_string($rrow['blog_name'], 50);
427 $rrow['blog_name'] = $oPluginAdmin->plugin->_strip_controlchar($rrow['blog_name']);
428 $rrow['blog_name'] = htmlspecialchars($rrow['blog_name']);
429 // $rrow['blog_name'] = _CHARSET == 'UTF-8' ? $rrow['blog_name'] : $oPluginAdmin->plugin->_utf8_to_entities($rrow['blog_name']);
431 $rrow['excerpt'] = $oPluginAdmin->plugin->_cut_string($rrow['excerpt'], 800);
432 $rrow['excerpt'] = $oPluginAdmin->plugin->_strip_controlchar($rrow['excerpt']);
433 $rrow['excerpt'] = htmlspecialchars($rrow['excerpt']);
434 // $rrow['excerpt'] = _CHARSET == 'UTF-8' ? $rrow['excerpt'] : $oPluginAdmin->plugin->_utf8_to_entities($rrow['excerpt']);
436 $rrow['url'] = htmlspecialchars($rrow['url'], ENT_QUOTES);
437 $rrow['story'] = htmlspecialchars(strip_tags($rrow['story']), ENT_QUOTES);
441 $oTemplate->set ('amount', $amount);
442 $oTemplate->set ('count', $count);
443 $oTemplate->set ('start', $start);
444 $oTemplate->set ('items', $items);
445 $oTemplate->set ('story', $story);
446 $oTemplate->template('templates/list.html');
453 $bres = mysql_query ("
459 ".sql_table('blog')."
466 while ($brow = mysql_fetch_array($bres))
468 $ires = mysql_query ("
470 i.inumber AS inumber,
474 ".sql_table('item')." AS i,
475 ".sql_table('plugin_tb')." AS t
477 i.iblog = ".$brow['bnumber']." AND
478 t.tb_id = i.inumber AND
488 while ($irow = mysql_fetch_array($ires))
493 $brow['items'] = $items;
497 $oTemplate->set ('blogs', $blogs);
498 $oTemplate->template('templates/index.html');
502 //modify start+++++++++
504 $oTemplate->template('templates/updatetable.html');
506 //modify end+++++++++
510 // Create the admin area page
511 echo $oTemplate->fetch();
512 $oPluginAdmin->end();