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 | } |