/** * @desc Notifica al grupo de administradores la creación de un nuevo tema no aprobado * @param {@link } Objetos de Foro, Tema y mensaje * @param int edit indica si es la edición de un mensaje o un nuevo tema no aprobado **/ public function notifyAdmin($moderators, BBForum &$forum, BBTopic &$topic, BBPost &$post, $edit = 0) { global $db, $xoopsModule, $rmc_config; $bxf = bXFunctions::get(); $mhand = new XoopsMemberHandler($db); $configCat = new XoopsConfigCategory('mailer', 'mailer'); $config =& $configCat->getConfigs(3); $users = $moderators; if (!$edit) { if (file_exists(XOOPS_ROOT_PATH . '/modules/bxpress/lang/' . RMCLANG . '/admin_notify.tpl')) { $tpldir = XOOPS_ROOT_PATH . '/modules/bxpress/lang/' . RMCLANG; } else { $tpldir = XOOPS_ROOT_PATH . '/modules/bxpress/lang/en'; } } else { if (file_exists(XOOPS_ROOT_PATH . '/modules/bxpress/lang/' . RMCLANG . '/admin_notify_post.tpl')) { $tpldir = XOOPS_ROOT_PATH . '/modules/bxpress/lang/' . RMCLANG; } else { $tpldir = XOOPS_ROOT_PATH . '/modules/bxpress/lang/en'; } } foreach ($users as $k) { $xoopsMailer =& getMailer(); $xoopsMailer->setFromEmail($config['from']); $xoopsMailer->setFromName($config['fromname']); $xoopsMailer->setTemplateDir($tpldir); if (!$edit) { $xoopsMailer->setSubject(sprintf(__('New topic created', 'bxpress'), $forum->name())); $xoopsMailer->setTemplate('admin_notify.tpl'); } else { $xoopsMailer->setSubject(sprintf(__('A unapproved message has been edited', 'dtransport'), $topic->title())); $xoopsMailer->setTemplate('admin_notify_post.tpl'); } $xoopsMailer->assign('FORUM_NAME', $forum->name()); $xoopsMailer->assign('FORUM_MODNAME', $xoopsModule->name()); $xoopsMailer->assign('TOPIC_UNAME', $topic->posterName()); $xoopsMailer->assign('TOPIC_NAME', $topic->title()); $xoopsMailer->assign('TOPIC_APPROVED', $topic->approved() ? _YES : _NO); $xoopsMailer->assign('TOPIC_LINK', $bxf->url() . '/moderate.php?id=' . $forum->id()); $xoopsMailer->assign('POST_UNAME', $post->uname()); $xoopsMailer->assign('POST_LINK', $post->permalink()); $user = new XoopsUser($k); $xoopsMailer->setToUsers($user); $xoopsMailer->isMail = $user->getVar('notify_method') == 2; $xoopsMailer->isPM = $user->getVar('notify_method') == 1; $xoopsMailer->send(true); $xoopsMailer->clearAddresses(); } echo $xoopsMailer->getErrors(); }