Subversion Repositories oidplus

Rev

Rev 1086 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1086 Rev 1116
Line 23... Line 23...
23
\defined('INSIDE_OIDPLUS') or die;
23
\defined('INSIDE_OIDPLUS') or die;
24
// phpcs:enable PSR1.Files.SideEffects
24
// phpcs:enable PSR1.Files.SideEffects
25
 
25
 
26
abstract class OIDplusPlugin extends OIDplusBaseClass {
26
abstract class OIDplusPlugin extends OIDplusBaseClass {
27
 
27
 
-
 
28
        /**
-
 
29
         * @return string
-
 
30
         */
28
        public final function getPluginDirectory() {
31
        public final function getPluginDirectory(): string {
29
                $reflector = new \ReflectionClass(get_called_class());
32
                $reflector = new \ReflectionClass(get_called_class());
30
                $path = dirname($reflector->getFilename());
33
                $path = dirname($reflector->getFilename());
31
                return $path;
34
                return $path;
32
        }
35
        }
33
 
36
 
-
 
37
        /**
-
 
38
         * @return OIDplusPluginManifest|null
-
 
39
         */
34
        public function getManifest() {
40
        public function getManifest()/*: ?OIDplusPluginManifest*/ {
35
                $dir = $this->getPluginDirectory();
41
                $dir = $this->getPluginDirectory();
36
                $ini = $dir.DIRECTORY_SEPARATOR.'manifest.xml';
42
                $ini = $dir.DIRECTORY_SEPARATOR.'manifest.xml';
37
                $manifest = new OIDplusPluginManifest();
43
                $manifest = new OIDplusPluginManifest();
38
                return $manifest->loadManifest($ini) ? $manifest : null;
44
                return $manifest->loadManifest($ini) ? $manifest : null;
39
        }
45
        }
40
 
46
 
-
 
47
        /**
-
 
48
         * @param bool $html
-
 
49
         * @return void
-
 
50
         */
41
        public function init($html=true) {}
51
        public function init(bool $html=true) {}
-
 
52
 
-
 
53
        /**
-
 
54
         * @param string $actionID
-
 
55
         * @param array $params
-
 
56
         * @return array
-
 
57
         * @throws OIDplusException
-
 
58
         */
-
 
59
        public function action(string $actionID, array $params): array {
-
 
60
                throw new OIDplusException(_L('Invalid action ID'));
-
 
61
        }
-
 
62
 
-
 
63
        /**
-
 
64
         * override this method if you want that your plugin
-
 
65
         * can accept ajax.php requests from outside, without CSRF check
-
 
66
         * @param string $actionID
-
 
67
         * @return bool
-
 
68
         */
-
 
69
        public function csrfUnlock(string $actionID): bool {
-
 
70
                return false;
-
 
71
        }
-
 
72
 
-
 
73
        /**
-
 
74
         * @param string $request
-
 
75
         * @return bool Handled?
-
 
76
         */
-
 
77
        public function handle404(string $request): bool {
-
 
78
                return false;
-
 
79
        }
42
 
80
 
-
 
81
        /**
-
 
82
         * @param string $html
-
 
83
         * @return void
-
 
84
         */
-
 
85
        public function htmlPostprocess(string &$html) {}
-
 
86
 
-
 
87
        /**
-
 
88
         * @param array $head_elems
-
 
89
         * @return void
-
 
90
         */
-
 
91
        public function htmlHeaderUpdate(array &$head_elems) {}
-
 
92
 
-
 
93
        /**
-
 
94
         * @param string[] $http_headers
-
 
95
         * @return void
-
 
96
         */
43
        public function httpHeaderCheck(&$http_headers) {}
97
        public function httpHeaderCheck(array &$http_headers) {}
44
 
98
 
45
}
99
}