zoukankan      html  css  js  c++  java
  • 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'] . "
    ";
            $body .= "您的主题:" . $thread['subject'] . "有回复了!
    ";
            $body .= "复制链接查看:" . $_G['siteurl'] . "forum.php?mod=viewthread&tid=" . $tid . "
    ";
            
            //判断后台是否开启了添加回贴内容
            if($_G['cache']['plugin']['post_notice']['add_postcont']) {
                //回复内容
                $mForumPost = C::t('forum_post');
                $pid = $params['values']['pid'];
                $post = $mForumPost->fetch($thread['posttableid'],$pid);
                $body .= "回复内容:
    " . $post['message'];
            }
            
            //发送邮箱
            
        } else {
            return;
        }
    }
    
  • 相关阅读:
    [汇编] 基础知识
    最长回文子串(1)
    整数分解为2的幂
    位数阶乘
    change log
    SEO简介
    http请求过程
    ES6新增特性——Promise
    rem在移动端的应用
    js截取字符串操作slice、substring 、substr
  • 原文地址:https://www.cnblogs.com/jkko123/p/6294647.html
Copyright © 2011-2022 走看看