<?php if (!defined('BASEPATH')) { exit('No direct script access allowed'); } /** * MaxSite CMS * (c) http://max-3000.com/ */ require_once getinfo('common_dir') . 'comments.php'; $comusers = mso_get_comusers_all(); // получим всех комюзеров if ($f = mso_page_foreach('users-all-head-meta')) { require $f; } else { mso_head_meta('title', tf('Комментаторы') . '. ' . getinfo('title')); // meta title страницы } if (!$comusers and mso_get_option('page_404_http_not_found', 'templates', 1)) { header('HTTP/1.0 404 Not Found'); } // теперь сам вывод # начальная часть шаблона require getinfo('template_dir') . 'main-start.php'; echo NR . '<div class="type type_users_all">' . NR; if ($comusers) { if ($f = mso_page_foreach('users-all-do')) { require $f; } else { echo '<h1>' . tf('Комментаторы') . '</h1><p>' . tf('Забыли кто вы?') . ' <a href="' . getinfo('siteurl') . 'password-recovery">' . tf('Можно восстановить пароль.') . '</a></p><ul class="users-all">'; }
function mso_email_message_new_comment_subscribe($data) { /* Array ( [comments_page_id] => 153 - id страницы [comments_content] => sdafsadfsdaf - текст комментария [comments_approved] => - если 0, то отправки нет [page_title] => тест - заголовок страницы [id] => 607 - id комментария -- [comments_comusers_id] => 1 - номер комюзера - пока не используется -- [comments_date] => 2009-12-10 20:45:39 - дата - пока не используется -- [comments_author_ip] => 127.0.0.1 - ip - пока не используется ) */ # Опция не рассылать подписку. if (!mso_get_option('allow_comments_subscribe', 'general', 1)) { return; } // комментарий не одобрен, не отсылаем if ($data['comments_approved'] == 0) { return; } // разослать нужно всем комюзерам у которых стоит получение уведомления о новом комментарии $CI =& get_instance(); $comusers_all = mso_get_comusers_all(); // все комюзеры $from = mso_get_option('admin_email_server', 'general', ''); $subject = '[' . getinfo('name_site') . '] ' . tf('Новый комментарий к') . ' "' . $data['page_title'] . '"'; $message = tf('Новый комментарий к') . ' "' . $data['page_title'] . '"' . NR . NR; $message .= tf('Текст:') . NR . mso_xss_clean($data['comments_content']); $message .= NR . NR . tf('Перейти к комментарию на сайте:') . NR . mso_get_permalink_page($data['comments_page_id']) . '#comment-' . $data['id'] . NR; foreach ($comusers_all as $comuser) { // отправлять на все комментарии сайта $subscribe_other_comments = (isset($comuser['meta']['subscribe_other_comments']) and $comuser['meta']['subscribe_other_comments']) ? true : false; // только на свой $subscribe_my_comments = (isset($comuser['meta']['subscribe_my_comments']) and $comuser['meta']['subscribe_my_comments']) ? true : false; if ($subscribe_other_comments or $subscribe_my_comments and isset($comuser['comments_pages_id'][$data['comments_page_id']])) { // можно отправлять if (mso_valid_email($comuser['comusers_email'])) { $data = array_merge($data, array('subscription' => true)); //А здесь для smtp_mail важно знать, чтобы запретить сохранять мыло в файл. $res = mso_mail($comuser['comusers_email'], $subject, $message, $from, $data); if (!$res) { break; } // ошибка отправки почты - рубим цикл } } } }