MDL-49682 mod_forum: Build forum email templates
[moodle.git] / mod / forum / classes / output / email / renderer.php
1 <?php
2 // This file is part of Moodle - http://moodle.org/
3 //
4 // Moodle is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU General Public License as published by
6 // the Free Software Foundation, either version 3 of the License, or
7 // (at your option) any later version.
8 //
9 // Moodle is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 // GNU General Public License for more details.
13 //
14 // You should have received a copy of the GNU General Public License
15 // along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
17 /**
18  * Forum post renderable.
19  *
20  * @package    mod_forum
21  * @copyright  2015 Andrew Nicols <andrew@nicols.co.uk>
22  * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
23  */
25 namespace mod_forum\output\email;
27 defined('MOODLE_INTERNAL') || die();
29 /**
30  * Forum post renderable.
31  *
32  * @since      Moodle 3.0
33  * @package    mod_forum
34  * @copyright  2015 Andrew Nicols <andrew@nicols.co.uk>
35  * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
36  */
37 class renderer extends \mod_forum_renderer {
39     /**
40      * The template name for this renderer.
41      *
42      * @return string
43      */
44     public function forum_post_template() {
45         return 'forum_post_email_htmlemail';
46     }
48     /**
49      * The HTML version of the e-mail message.
50      *
51      * @param \stdClass $forum
52      * @param \stdClass $post
53      * @return string
54      */
55     public function format_message_text($forum, $post) {
56         $options = new \stdClass();
57         $options->para = true;
58         return format_text($post->message, $post->messageformat, $options);
59     }
61     /**
62      * The HTML version of the attachments list.
63      *
64      * @param \stdClass $cm
65      * @param \stdClass $post
66      * @return string
67      */
68     public function format_message_attachments($cm, $post) {
69         return forum_print_attachments($post, $cm, "html");
70     }
71 }