summaryrefslogtreecommitdiff
path: root/includes/boards_comments_inc.php
diff options
context:
space:
mode:
Diffstat (limited to 'includes/boards_comments_inc.php')
-rw-r--r--includes/boards_comments_inc.php57
1 files changed, 57 insertions, 0 deletions
diff --git a/includes/boards_comments_inc.php b/includes/boards_comments_inc.php
new file mode 100644
index 0000000..99dae43
--- /dev/null
+++ b/includes/boards_comments_inc.php
@@ -0,0 +1,57 @@
+<?php
+/**
+ * $Header$
+ * $Id$
+ *
+ * intermediate include file to provide centralized place to pre/post handle comments_inc include
+ *
+ * @author spider <spider@steelsun.com>
+ * @version $Revision$
+ * @package boards
+ */
+
+/**
+ * Initialization
+ */
+require_once (LIBERTY_PKG_INCLUDE_PATH.'comments_inc.php');
+
+if (!function_exists("send_board_email")) {
+ function send_board_email($storeComment) {
+ global $gBitSystem, $gContent, $gBitUser;
+
+ /*
+ If sync goes both ways we always send and let moderation
+ of the list or the board do its thing. If not we send
+ if the content status says we can.
+ */
+ $boardSync = $gContent->getPreference('board_sync_list_address');
+ if ( !empty( $boardSync ) ||
+ $storeComment->getContentStatus() > 0 ) {
+
+ require_once( KERNEL_PKG_PATH.'BitMailer.php' );
+ $bitMailer = new BitMailer();
+ $email = $gContent->getPreference('boards_mailing_list').'@'.$gBitSystem->getConfig( 'boards_email_host', $gBitSystem->getConfig( 'kernel_server_name' ) );
+ if( $storeComment->getField( 'user_id' ) == ANONYMOUS_USER_ID ) {
+ $headerHash['from_name'] = $storeComment->getField( 'anon_name' );
+ $headerHash['from'] = 'anonymous@'.$gBitSystem->getConfig('boards_sync_mail_server');
+ } else {
+ $userInfo = $gBitUser->getUserInfo( array( 'user_id' => $storeComment->getField( 'user_id', $gBitUser->mUserId ) ) );
+ $headerHash['from_name'] = !empty( $userInfo['real_name'] ) ? $userInfo['real_name'] : $userInfo['login'];
+ $headerHash['from'] = $userInfo['email'];
+ $headerHash['sender'] = $userInfo['email'];
+ }
+ $headerHash['x_headers']['X-BitBoards-Comment'] = $storeComment->mCommentId;
+ $messageId = $bitMailer->sendEmail( $storeComment->getTitle(), $storeComment->getParsedData(), $email, $headerHash );
+ $storeComment->storeMessageId( $messageId );
+ }
+ }
+}
+
+if( !empty( $storeComment ) && $gContent->getPreference('boards_mailing_list') ) {
+ if( empty( $storeComment->mErrors ) ) {
+ $storeComment->loadComment();
+ send_board_email($storeComment);
+ }
+}
+
+?>