Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 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/>.
16
 
17
/**
18
 * Contains class mod_feedback\output\summary
19
 *
20
 * @package   mod_feedback
21
 * @copyright 2016 Marina Glancy
22
 * @license   http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
23
 */
24
 
25
namespace mod_feedback\output;
26
 
27
use renderable;
28
use templatable;
29
use renderer_base;
30
use stdClass;
31
use moodle_url;
32
use mod_feedback_structure;
33
 
34
/**
35
 * Class to help display feedback summary
36
 *
37
 * @package   mod_feedback
38
 * @copyright 2016 Marina Glancy
39
 * @license   http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
40
 */
41
class summary implements renderable, templatable {
42
 
43
    /** @var mod_feedback_structure */
44
    protected $feedbackstructure;
45
 
46
    /** @var int */
47
    protected $mygroupid;
48
 
49
    /**
50
     * Constructor.
51
     *
52
     * @param mod_feedback_structure $feedbackstructure
53
     * @param int $mygroupid currently selected group
54
     */
55
    public function __construct($feedbackstructure, $mygroupid = false) {
56
        $this->feedbackstructure = $feedbackstructure;
57
        $this->mygroupid = $mygroupid;
58
    }
59
 
60
    /**
61
     * Export this data so it can be used as the context for a mustache template.
62
     *
63
     * @param renderer_base $output
64
     * @return stdClass
65
     */
66
    public function export_for_template(renderer_base $output) {
67
        $r = new stdClass();
68
        $r->completedcount = $this->feedbackstructure->count_completed_responses($this->mygroupid);
69
        $r->itemscount = count($this->feedbackstructure->get_items(true));
70
 
71
        return $r;
72
    }
73
}