xref: /plugin/bez/meta/Tpl.php (revision de02284c1e90f3c0d8df29c1c019b3ef912eafd9)
1*de02284cSSzymon Olewniczak<?php
2*de02284cSSzymon Olewniczak
3*de02284cSSzymon Olewniczaknamespace dokuwiki\plugin\bez\meta;
4*de02284cSSzymon Olewniczak
5*de02284cSSzymon Olewniczakclass Tpl {
6*de02284cSSzymon Olewniczak
7*de02284cSSzymon Olewniczak    /** @var \action_plugin_bez */
8*de02284cSSzymon Olewniczak    private $action;
9*de02284cSSzymon Olewniczak
10*de02284cSSzymon Olewniczak    private $conf;
11*de02284cSSzymon Olewniczak
12*de02284cSSzymon Olewniczak    private $variables = array();
13*de02284cSSzymon Olewniczak
14*de02284cSSzymon Olewniczak    //form values from $_POST or from database
15*de02284cSSzymon Olewniczak    private $values = array();
16*de02284cSSzymon Olewniczak
17*de02284cSSzymon Olewniczak    public function __construct(\action_plugin_bez $action, $conf) {
18*de02284cSSzymon Olewniczak
19*de02284cSSzymon Olewniczak        $this->action = $action;
20*de02284cSSzymon Olewniczak        $this->conf = $conf;
21*de02284cSSzymon Olewniczak
22*de02284cSSzymon Olewniczak        //constas
23*de02284cSSzymon Olewniczak        $this->set('client', $this->model->user_nick);
24*de02284cSSzymon Olewniczak
25*de02284cSSzymon Olewniczak        $info = $action->getInfo();
26*de02284cSSzymon Olewniczak        $this->set('version', $info['date']);
27*de02284cSSzymon Olewniczak
28*de02284cSSzymon Olewniczak        //common one
29*de02284cSSzymon Olewniczak        $this->set('users', $this->action->model_factory('user')->get_all());
30*de02284cSSzymon Olewniczak        $this->set('groups', $this->action->model_factory('user')->get_groups());
31*de02284cSSzymon Olewniczak    }
32*de02284cSSzymon Olewniczak
33*de02284cSSzymon Olewniczak    public function action($default=null) {
34*de02284cSSzymon Olewniczak        $action = $this->action->get_action();
35*de02284cSSzymon Olewniczak        if ($action == '' && !is_null($default)) {
36*de02284cSSzymon Olewniczak            return $default;
37*de02284cSSzymon Olewniczak        }
38*de02284cSSzymon Olewniczak        return $action;
39*de02284cSSzymon Olewniczak    }
40*de02284cSSzymon Olewniczak
41*de02284cSSzymon Olewniczak    public function param($id) {
42*de02284cSSzymon Olewniczak        return $this->action->get_param($id);
43*de02284cSSzymon Olewniczak    }
44*de02284cSSzymon Olewniczak
45*de02284cSSzymon Olewniczak    public function url() {
46*de02284cSSzymon Olewniczak        return call_user_func_array(array($this->action, 'url'), func_get_args());
47*de02284cSSzymon Olewniczak    }
48*de02284cSSzymon Olewniczak
49*de02284cSSzymon Olewniczak//    public function get_dummy_of($name) {
50*de02284cSSzymon Olewniczak//        return $this->action->get_model_of($name)->get_dummy_object();
51*de02284cSSzymon Olewniczak//    }
52*de02284cSSzymon Olewniczak
53*de02284cSSzymon Olewniczak    public function static_acl($table, $field) {
54*de02284cSSzymon Olewniczak        return $this->action->getModel()->acl->check_static_field($table, $field);
55*de02284cSSzymon Olewniczak    }
56*de02284cSSzymon Olewniczak
57*de02284cSSzymon Olewniczak    /*users info function for shorten the code*/
58*de02284cSSzymon Olewniczak    public function user_name($login=NULL) {
59*de02284cSSzymon Olewniczak        $name = $this->action->getModel()->userFactory->get_user_full_name($login);
60*de02284cSSzymon Olewniczak        if ($name === '') {
61*de02284cSSzymon Olewniczak            return $login;
62*de02284cSSzymon Olewniczak        }
63*de02284cSSzymon Olewniczak        return $name;
64*de02284cSSzymon Olewniczak    }
65*de02284cSSzymon Olewniczak
66*de02284cSSzymon Olewniczak    public function user_email($login=NULL) {
67*de02284cSSzymon Olewniczak        return $this->action->getModel()->get_user_email($login);
68*de02284cSSzymon Olewniczak    }
69*de02284cSSzymon Olewniczak    /*end users info functions*/
70*de02284cSSzymon Olewniczak
71*de02284cSSzymon Olewniczak    public function prevent_rendering() {
72*de02284cSSzymon Olewniczak
73*de02284cSSzymon Olewniczak    }
74*de02284cSSzymon Olewniczak
75*de02284cSSzymon Olewniczak    public function set($id, $value) {
76*de02284cSSzymon Olewniczak        $this->variables[$id] = $value;
77*de02284cSSzymon Olewniczak    }
78*de02284cSSzymon Olewniczak
79*de02284cSSzymon Olewniczak    public function get($id) {
80*de02284cSSzymon Olewniczak        return $this->variables[$id];
81*de02284cSSzymon Olewniczak    }
82*de02284cSSzymon Olewniczak
83*de02284cSSzymon Olewniczak    public function set_values($values) {
84*de02284cSSzymon Olewniczak        foreach ($values as $name => $value) {
85*de02284cSSzymon Olewniczak            $this->values[$name] = $value;
86*de02284cSSzymon Olewniczak        }
87*de02284cSSzymon Olewniczak    }
88*de02284cSSzymon Olewniczak
89*de02284cSSzymon Olewniczak    public function value($name) {
90*de02284cSSzymon Olewniczak        return (isset($this->values[$name]) ? $this->values[$name] : '');
91*de02284cSSzymon Olewniczak    }
92*de02284cSSzymon Olewniczak
93*de02284cSSzymon Olewniczak    public function getLang($id) {
94*de02284cSSzymon Olewniczak        return $this->action->getLang($id);
95*de02284cSSzymon Olewniczak    }
96*de02284cSSzymon Olewniczak}
97