Update of /cvsroot/php-blog/serendipity
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32202
Modified Files:
NEWS index.php serendipity_admin_upgrader.inc.php
serendipity_config.inc.php serendipity_functions.inc.php
Log Message:
* Allow moderation of trackbacks
- Requires changes to previous mod_rewrite rule
- Bump version to 0.6.10-CVS
Index: NEWS
===================================================================
RCS file: /cvsroot/php-blog/serendipity/NEWS,v
retrieving revision 1.183
retrieving revision 1.184
diff -u -d -r1.183 -r1.184
--- NEWS 22 Jul 2004 21:03:04 -0000 1.183
+++ NEWS 23 Jul 2004 00:22:51 -0000 1.184
@@ -37,8 +37,8 @@
* Better handling of unsubscriptions from entries, only show message
if the user was indeed unsubscribed (tomsommer)
- * Added ability to moderate comments:
- * Moderate from email
+ * Added ability to moderate comments and trackbacks:
+ * Moderate by email
* Moderate and view comments from within Authoring Suite
(tomsommer) [DB Layout change - > 0.6.7]
Index: serendipity_functions.inc.php
===================================================================
RCS file: /cvsroot/php-blog/serendipity/serendipity_functions.inc.php,v
retrieving revision 1.358
retrieving revision 1.359
diff -u -d -r1.358 -r1.359
--- serendipity_functions.inc.php 22 Jul 2004 21:03:04 -0000 1.358
+++ serendipity_functions.inc.php 23 Jul 2004 00:22:52 -0000 1.359
@@ -1268,12 +1268,37 @@
</rdf:RDF>
-->
<?php
+
$eventData = array_merge(array('display_dat' => ''), $entry);
serendipity_plugin_api::hook_event('frontend_display:html:per_entry', $eventData);
echo $eventData['display_dat'];
+
?>
<?php
if (isset($serendipity['GET']['id'])) {
+
+ /********** MESSAGES *********/
+ if (defined('DATA_UNSUBSCRIBED')) {
+ echo '<br /><div class="serendipity_center serendipity_msg_notice">'. sprintf(UNSUBSCRIBE_OK, DATA_UNSUBSCRIBED) .'</div><br />';
+ }
+
+ if (defined('DATA_TRACKBACK_DELETED')) {
+ echo '<br /><div class="serendipity_center serendipity_msg_notice">'. sprintf(TRACKBACK_DELETED, DATA_TRACKBACK_DELETED) .'</div><br />';
+ }
+
+ if (defined('DATA_TRACKBACK_APPROVED')) {
+ echo '<br /><div class="serendipity_center serendipity_msg_notice">'. sprintf(TRACKBACK_APPROVED, DATA_TRACKBACK_APPROVED) .'</div><br />';
+ }
+
+ if (defined('DATA_COMMENT_DELETED')) {
+ echo '<br /><div class="serendipity_center serendipity_msg_notice">'. sprintf(COMMENT_DELETED, DATA_COMMENT_DELETED) .'</div><br />';
+ }
+
+ if (defined('DATA_COMMENT_APPROVED')) {
+ echo '<br /><div class="serendipity_center serendipity_msg_notice">'. sprintf(COMMENT_APPROVED, DATA_COMMENT_APPROVED) .'</div><br />';
+ }
+
+
if (!$serendipity['enablePopup']) {
$tbu = $serendipity['baseURL'] . 'comment.php?type=trackback&entry_id=' . $entry['id'];
?>
@@ -1282,7 +1307,10 @@
<a id="trackbacks"></a>
<div class="serendipity_commentsTitle"><?php echo TRACKBACKS; ?>
(<a style="font-weight: normal" href="<?php echo $tbu; ?>" onClick="alert('<?php echo htmlentities(TRACKBACK_SPECIFIC_ON_CLICK) ?>'); return false;" title="<?php echo htmlentities(TRACKBACK_SPECIFIC_ON_CLICK) ?>"><?php echo TRACKBACK_SPECIFIC; ?></a>)</div>
- <?php serendipity_printTrackbacks(serendipity_fetchTrackbacks($entry['id'])); ?>
+<?php
+
+ serendipity_printTrackbacks(serendipity_fetchTrackbacks($entry['id']));
+?>
</div>
<?php } ?>
<div class="serendipity_comments">
@@ -1290,20 +1318,7 @@
<a id="comments"></a>
<div class="serendipity_commentsTitle"><?php echo COMMENTS; ?></div>
<?php
- if (defined('DATA_UNSUBSCRIBED')) {
- echo '<div class="serendipity_center serendipity_msg_notice">'. sprintf(UNSUBSCRIBE_OK, DATA_UNSUBSCRIBED) .'</div><br />';
- }
-
- if (defined('DATA_COMMENT_DELETED')) {
- echo '<div class="serendipity_center serendipity_msg_notice">'. sprintf(COMMENT_DELETED, DATA_COMMENT_DELETED) .'</div><br />';
- }
-
- if (defined('DATA_COMMENT_APPROVED')) {
- echo '<div class="serendipity_center serendipity_msg_notice">'. sprintf(COMMENT_APPROVED, DATA_COMMENT_APPROVED) .'</div><br />';
- }
-
-
- echo serendipity_printComments(serendipity_fetchComments($entry['id']), (isset($entry['allow_comments']) ? $entry['allow_comments'] : true));
+ serendipity_printComments(serendipity_fetchComments($entry['id']), (isset($entry['allow_comments']) ? $entry['allow_comments'] : true));
if (!empty($serendipity['POST']['preview'])) {
serendipity_printComments(
@@ -1478,11 +1493,15 @@
return $comments;
}
-function serendipity_fetchTrackbacks($id, $limit = null)
+function serendipity_fetchTrackbacks($id, $limit = null, $showAll = false)
{
global $serendipity;
- $query = "SELECT * FROM {$serendipity['dbPrefix']}comments WHERE entry_id=$id AND type = 'TRACKBACK' ORDER BY id";
+ if (!$showAll) {
+ $and = "AND status = 'approved'";
+ }
+
+ $query = "SELECT * FROM {$serendipity['dbPrefix']}comments WHERE entry_id=$id AND type = 'TRACKBACK' $and ORDER BY id";
if (isset($limit)) {
$query .= " LIMIT $limit";
}
@@ -1700,7 +1719,7 @@
$url = serendipity_db_escape_string($commentInfo['url']);
$email = serendipity_db_escape_string($commentInfo['email']);
$parentid = (isset($commentInfo['parent_id']) && is_numeric($commentInfo['parent_id'])) ? $commentInfo['parent_id'] : 0;
- $status = (serendipity_db_bool($ca['moderate_comments']) && $type == 'NORMAL') ? 'pending' : 'approved';
+ $status = (serendipity_db_bool($ca['moderate_comments'])) ? 'pending' : 'approved';
if (isset($commentInfo['subscribe'])) {
$subscribe = 'true';
@@ -1726,8 +1745,8 @@
serendipity_sendComment($cid, $row['email'], $name, $email, $url, $id, $row['title'], $comments, $type, serendipity_db_bool($row['moderate_comments']));
}
- // Approve with force, if moderation is disabled or it is a trackback
- if (empty($ca['moderate_comments']) || serendipity_db_bool($ca['moderate_comments']) == false || $type == 'TRACKBACK') {
+ // Approve with force, if moderation is disabled
+ if (empty($ca['moderate_comments']) || serendipity_db_bool($ca['moderate_comments']) == false) {
serendipity_approveComment($cid, $id, true);
}
serendipity_purgeEntry($id, $t);
@@ -1810,20 +1829,33 @@
}
$entryURI = serendipity_archiveURL($id, $title, 'baseURL', false);
- $deleteURI = $serendipity['baseURL'] . ($serendipity['rewrite'] == 'none' ? $serendipity['indexFile'] . '?/' : '') . PATH_DELETECOMMENT . '/' . $comment_id . '/'. $id .'_' . serendipity_makeFilename($title) . '.html';
- $approveURI = $serendipity['baseURL'] . ($serendipity['rewrite'] == 'none' ? $serendipity['indexFile'] . '?/' : '') . PATH_APPROVECOMMENT . '/' . $comment_id . '/'. $id .'_' . serendipity_makeFilename($title) . '.html';
+ $path = ($type == 'TRACKBACK') ? 'trackback' : 'comment';
+ $deleteURI = $serendipity['baseURL'] . ($serendipity['rewrite'] == 'none' ? $serendipity['indexFile'] . '?/' : '') . PATH_DELETE . '/'. $path .'/' . $comment_id . '/'. $id .'_' . serendipity_makeFilename($title) . '.html';
+ $approveURI = $serendipity['baseURL'] . ($serendipity['rewrite'] == 'none' ? $serendipity['indexFile'] . '?/' : '') . PATH_APPROVE . '/'. $path .'/' . $comment_id . '/'. $id .'_' . serendipity_makeFilename($title) . '.html';
if ($type == 'TRACKBACK') {
+
+ /******************* TRACKBACKS *******************/
$subject = '[' . $serendipity['blogTitle'] . '] ' . NEW_TRACKBACK_TO . ' ' . $title;
$text = sprintf(A_NEW_TRACKBACK_BLAHBLAH, $title)
. "\n"
- . "\n" . LINK_TO_ENTRY . ': ' . $entryURI
- . "\n" . 'Weblog ' . NAME . ': ' . stripslashes($fromName)
- . "\n" . LINK_TO_REMOTE_ENTRY . ': ' . $fromUrl
+ . "\n" . REQUIRES_REVIEW . ': ' . (($moderate_comment) ? YES : NO)
+ . "\n" . LINK_TO_ENTRY . ': ' . $entryURI
+ . "\n" . 'Weblog ' . NAME . ': ' . stripslashes($fromName)
+ . "\n" . LINK_TO_REMOTE_ENTRY . ': ' . $fromUrl
. "\n"
. "\n" . EXCERPT . ':'
- . "\n" . strip_tags($comment);
+ . "\n" . strip_tags($comment)
+ . "\n"
+ . "\n" . '----'
+ . "\n" . YOU_HAVE_THESE_OPTIONS
+ . (($moderate_comment) ? "\n" . str_repeat(' ', 2) . THIS_TRACKBACK_NEEDS_REVIEW : '')
+ . "\n" . str_repeat(' ', 3) . str_pad(DELETE_TRACKBACK, 15) . ' -- '. $deleteURI
+ . (($moderate_comment) ? "\n" . str_repeat(' ', 3) . str_pad(APPROVE_TRACKBACK, 15) . ' -- '. $approveURI : '');
+
} else {
+
+ /******************* COMMENTS *********************/
$subject = '[' . $serendipity['blogTitle'] . '] ' . NEW_COMMENT_TO . ' ' . $title;
$text = sprintf(A_NEW_COMMENT_BLAHBLAH, $serendipity['blogTitle'], $title)
. "\n" . LINK_TO_ENTRY . ': ' . $entryURI
Index: index.php
===================================================================
RCS file: /cvsroot/php-blog/serendipity/index.php,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -d -r1.43 -r1.44
--- index.php 16 Jul 2004 22:17:23 -0000 1.43
+++ index.php 23 Jul 2004 00:22:52 -0000 1.44
@@ -22,15 +22,19 @@
$uri = '/'.PATH_UNSUBSCRIBE.'/'. $res[2] .'_untitled.html';
}
-if (preg_match(PAT_DELETECOMMENT, $uri, $res) && $serendipity['serendipityAuthedUser'] === true) {
- if ( serendipity_deleteComment($res[1], $res[2]) ) {
- define('DATA_COMMENT_DELETED', $res[1]);
+if (preg_match(PAT_DELETE, $uri, $res) && $serendipity['serendipityAuthedUser'] === true) {
+ if ( $res[1] == 'comment' && serendipity_deleteComment($res[1], $res[2], 'comments') ) {
+ define('DATA_COMMENT_DELETED', $res[2]);
+ } elseif ( $res[1] == 'trackback' && serendipity_deleteComment($res[2], $res[3], 'trackbacks') ) {
+ define('DATA_TRACKBACK_DELETED', $res[2]);
}
}
-if (preg_match(PAT_APPROVECOMMENT, $uri, $res) && $serendipity['serendipityAuthedUser'] === true) {
- if ( serendipity_approveComment($res[1], $res[2]) ) {
- define('DATA_COMMENT_APPROVED', $res[1]);
+if (preg_match(PAT_APPROVE, $uri, $res) && $serendipity['serendipityAuthedUser'] === true) {
+ if ( $res[1] == 'comment' && serendipity_approveComment($res[2], $res[3]) ) {
+ define('DATA_COMMENT_APPROVED', $res[2]);
+ } elseif ( $res[1] == 'trackback' && serendipity_approveComment($res[2], $res[3]) ) {
+ define('DATA_TRACKBACK_APPROVED', $res[2]);
}
}
Index: serendipity_admin_upgrader.inc.php
===================================================================
RCS file: /cvsroot/php-blog/serendipity/serendipity_admin_upgrader.inc.php,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -d -r1.18 -r1.19
--- serendipity_admin_upgrader.inc.php 19 Jul 2004 08:50:54 -0000 1.18
+++ serendipity_admin_upgrader.inc.php 23 Jul 2004 00:22:52 -0000 1.19
@@ -13,7 +13,8 @@
/* Functions which needs to be run if installed version is equal or lower */
$tasks = array('0.5.1' => 'serendipity_syncThumbs',
'0.6.5' => 'serendipity_rebuildCategoryTree',
- '0.6.8' => 'serendipity_installFiles');
+ '0.6.8' => 'serendipity_installFiles',
+ '0.6.10' => 'serendipity_installFiles',);
/* Fetch SQL files which needs to be run */
@@ -171,6 +172,13 @@
$taskCount++;
}
+ if (version_compare(serendipity_version($serendipity['versionInstalled']), '0.6.10', '<')) {
+ echo '<br /><strong>0.6.10 - .htaccess</strong>';
+ echo '<br />[INFO] Your .htaccess file needs to be updated for this to occur. This will happen automatically, if you continue. If you made individual changes to your .htaccess file, backup that file now.<br />';
+ $taskCount++;
+ }
+
+
/*
Add more versions here using:
Index: serendipity_config.inc.php
===================================================================
RCS file: /cvsroot/php-blog/serendipity/serendipity_config.inc.php,v
retrieving revision 1.87
retrieving revision 1.88
diff -u -d -r1.87 -r1.88
--- serendipity_config.inc.php 19 Jul 2004 09:31:52 -0000 1.87
+++ serendipity_config.inc.php 23 Jul 2004 00:22:52 -0000 1.88
@@ -14,7 +14,7 @@
}
include_once(S9Y_INCLUDE_PATH . 'compat.php');
-$serendipity['version'] = '0.6.9-CVS';
+$serendipity['version'] = '0.6.10-CVS';
$serendipity['production'] = 1;
$serendipity['rewrite'] = 'none';
$serendipity['messagestack'] = array();
@@ -55,8 +55,8 @@
@define('PATH_ARCHIVES', 'archives');
@define('PATH_ARCHIVE', 'archive');
@define('PATH_UNSUBSCRIBE', 'unsubscribe');
-@define('PATH_DELETECOMMENT', 'deleteComment');
-@define('PATH_APPROVECOMMENT', 'approveComment');
+@define('PATH_DELETE', 'delete');
+@define('PATH_APPROVE', 'approve');
@define('PATH_FEEDS', 'feeds');
@define('PATH_ADMIN', 'admin');
@define('PATH_ENTRIES', 'entries');
@@ -68,8 +68,8 @@
*/
@define('PAT_FILENAME', '0-9a-z\.\_!%;,\+-');
@define('PAT_UNSUBSCRIBE', '@/'.PATH_UNSUBSCRIBE.'/(.*)/([0-9]+)@');
-@define('PAT_APPROVECOMMENT', '@/'.PATH_APPROVECOMMENT.'/(.*)/([0-9]+)@');
-@define('PAT_DELETECOMMENT', '@/'.PATH_DELETECOMMENT.'/(.*)/([0-9]+)@');
+@define('PAT_APPROVE', '@/'.PATH_APPROVE.'/(.*)/(.*)/([0-9]+)@');
+@define('PAT_DELETE', '@/'.PATH_DELETE.'/(.*)/(.*)/([0-9]+)@');
@define('PAT_ARCHIVES', '@/'.PATH_ARCHIVES.'/(\d+)\.html@');
@define('PAT_ARCHIVES_SHORT', '@/'.PATH_ARCHIVES.'/(\d+)_short\.html@');
@define('PAT_COMMENTSUB', '@/(\d+)_[' . PAT_FILENAME . ']*\.html@i');
|