예제 #1
0
 /**
  * Отправляет уведомления о новых комментариях к действиям модераторов.
  * 
  * @param  string|array $message_ids идентификаторы комментариев
  * @param  resource $connect соединение к БД (необходимо в PgQ) или NULL -- создать новое
  * @return integer количество отправленных уведомлений
  */
 function AdminLogCommentsMail($message_ids, $connect = NULL)
 {
     require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/admin_log.php';
     $admin_log = new admin_log();
     $noSend = array();
     if (!($comments = $admin_log->GetComments4Sending($message_ids, $connect))) {
         return NULL;
     }
     $this->subject = 'Комментарии к действию модератора на сайте FL.ru';
     foreach ($comments as $comment) {
         $sObjEntity = admin_log::$aObj[$comment['obj_code']]['name'];
         $sObjName = $comment['object_name'] ? $comment['object_name'] : '<без названия>';
         setlocale(LC_ALL, 'ru_RU.CP1251');
         $sObjName = str_replace(array('<', '>'), array('&lt;', '&gt;'), $sObjName);
         setlocale(LC_ALL, "en_US.UTF-8");
         $sObjLink = $comment['object_link'] ? '<a href="' . $comment['object_link'] . $this->_addUrlParams('b') . '">' . $sObjName . '</a>' : $sObjName;
         // отправляем автору родительского коментария
         if ($comment['s_uid'] != $comment['uid'] && $comment['s_email'] && $comment['s_banned'] == '0') {
             $this->message = $this->GetHtml($comment['s_uname'], "\n<a href='{$GLOBALS['host']}/users/{$comment['login']}{$this->_addUrlParams('b')}'>{$comment['uname']} {$comment['usurname']}</a> [<a href='{$GLOBALS['host']}/users/{$comment['login']}{$this->_addUrlParams('b')}'>{$comment['login']}</a>]\nоставил(а) вам комментарии к действию модератора на сайте FL.ru.\n<br /> --------\n<br />" . ($comment['title'] ? $this->ToHtml(LenghtFormatEx(strip_tags($comment['title']), 300)) . "<br />---<br />" : "") . $this->ToHtml(LenghtFormatEx(strip_tags($comment['msgtext']), 300)) . "\n<br /> --------\n<br />\n{$sObjEntity}: {$sObjLink}<br />\n<br />\n<a href='{$GLOBALS['host']}/siteadmin/admin_log/?view={$comment['id']}{$this->_addUrlParams('b', '&')}#c_{$comment['comment_id']}'>{$GLOBALS['host']}/siteadmin/admin_log/?view={$comment['id']}#c_{$comment['comment_id']}</a>\n<br />\n<br />\n", array('header' => 'simple', 'footer' => 'simple'));
             $this->recipient = $comment['s_uname'] . " " . $comment['s_usurname'] . " [" . $comment['s_login'] . "] <" . $comment['s_email'] . ">";
             $this->SmtpMail('text/html');
             $noSend[$comment['s_uid']] = $comment['s_uid'];
         }
         // отправляем автору действия
         if ($comment['a_uid'] != $comment['uid'] && $comment['a_uid'] != $comment['s_uid'] && $comment['a_email'] && $comment['a_banned'] == '0') {
             $this->message = $this->GetHtml($comment['s_uname'], "\n<a href='{$GLOBALS['host']}/users/{$comment['login']}'>{$comment['uname']} {$comment['usurname']}</a> [<a href='{$GLOBALS['host']}/users/{$comment['login']}{$this->_addUrlParams('b')}'>{$comment['login']}</a>]\nоставил(а) вам комментарии к действию модератора на сайте FL.ru.\n<br /> --------\n<br />" . ($comment['title'] ? $this->ToHtml(LenghtFormatEx(strip_tags($comment['title']), 300)) . "<br />---<br />" : "") . $this->ToHtml(LenghtFormatEx(strip_tags($comment['msgtext']), 300)) . "\n<br /> --------\n<br />\n{$sObjEntity}: {$sObjLink}<br />\n<br />\n<a href='{$GLOBALS['host']}/siteadmin/admin_log/?view={$comment['id']}{$this->_addUrlParams('b', '&')}#c_{$comment['comment_id']}'>{$GLOBALS['host']}/siteadmin/admin_log/?view={$comment['id']}#c_{$comment['comment_id']}</a>\n<br />\n<br />\n", array('header' => 'simple', 'footer' => 'simple'));
             $this->recipient = $comment['a_uname'] . " " . $comment['a_usurname'] . " [" . $comment['a_login'] . "] <" . $comment['a_email'] . ">";
             $this->SmtpMail('text/html');
             $noSend[$comment['a_uid']] = $comment['a_uid'];
         }
         // подписка пока не реализована
     }
     return $this->sended;
 }