1<?php
2
3/* Copyright (c) 2019 Daniel Weise <daniel.weise@concepts-and-training.de> Extended GPL, see docs/LICENSE */
4
5declare(strict_types=1);
6
7class ilStudyProgrammeMailMemberSearchTableGUI extends ilTable2GUI
8{
9    /**
10     * @var ilCtrl
11     */
12    protected $ctrl;
13
14    /**
15     * @var ilLanguage
16     */
17    protected $lng;
18
19    /**
20     * @inheritdoc
21     */
22    public function __construct($a_parent_obj, $a_parent_cmd = "")
23    {
24        global $DIC;
25
26        $this->ctrl = $DIC['ilCtrl'];
27        $this->lng = $DIC['lng'];
28
29        $obj_id = ilObject::_lookupObjectId($a_parent_obj->ref_id);
30        $this->setId('mmsearch_' . $obj_id);
31        parent::__construct($a_parent_obj, $a_parent_cmd);
32        $this->lng->loadLanguageModule('prg');
33        $this->setTitle($this->lng->txt('members'));
34
35        $this->setFormAction($this->ctrl->getFormAction($a_parent_obj));
36        $this->ctrl->clearParameters($a_parent_obj);
37
38        $this->setRowTemplate('tpl.mail_member_search_row.html', 'Modules/StudyProgramme');
39
40        // setup columns
41        $this->addColumn('', '', '1%', true);
42        $this->addColumn($this->lng->txt('login'), 'login', '22%');
43        $this->addColumn($this->lng->txt('name'), 'name', '22%');
44
45        $this->setSelectAllCheckbox('user_ids[]');
46        $this->setShowRowsSelector(true);
47
48        $this->addMultiCommand('sendMailToSelectedUsers', $this->lng->txt('mail_members'));
49        $this->addCommandButton('cancel', $this->lng->txt('cancel'));
50    }
51
52    /**
53     * @param array $a_set
54     */
55    public function fillRow($a_set)
56    {
57        foreach ($a_set as $key => $value) {
58            $this->tpl->setVariable(strtoupper($key), $value);
59        }
60    }
61}
62