微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

discuz回贴通知插件实现-获取邮件内容

//自定义钩子函数,命名:模块_函数名_output()或模块_函数名()
//一个是模块执行完,模板输出前执行。一个是模块执行前
//post_reply_output函数会在所有post操作中都会执行,通过$params['message']来区别
public function post_reply_output($params) {
    global $_G;

    //判断是否为主题回复成功时
    if($params['message'] != 'post_reply_succeed') {
        return;
    }

    //如果操作的是系统表,先获得系统表的模型,
    //在discuz目录的source/class/table下
    $mForumThread = C::t('forum_thread');
    $tid = $params['values']['tid'];
    $thread = $mForumThread->fetch($tid);
    //主题作者ID
    $authorId = $thread['authorid'];
    //判断作者是否开启回贴通知
    $mForumPostNotice = C::t('#post_notice#forum_post_notice');
    $isNotice = $mForumPostNotice->getNoticeState($authorId);
    if($isNotice) {
        $mCommonMember = C::t('common_member');
        $author = $mCommonMember->fetch($authorId);
        $email = $author['email'];
        $subject = '您的贴子有回复了!';
        $body = $author['username'] . "\n";
        $body .= "您的主题:" . $thread['subject'] . "有回复了!\n";
        $body .= "复制链接查看:" . $_G['siteurl'] . "forum.PHP?mod=viewthread&tid=" . $tid . "\n";
        
        //判断后台是否开启了添加回贴内容
        if($_G['cache']['plugin']['post_notice']['add_postcont']) {
            //回复内容
            $mForumPost = C::t('forum_post');
            $pid = $params['values']['pid'];
            $post = $mForumPost->fetch($thread['posttableid'],$pid);
            $body .= "回复内容:\n" . $post['message'];
        }
        
        //发送邮箱
        
    } else {
        return;
    }
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐