X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FLegacyModule.php;h=38c3e9a8fb4d0b8ff68309f25aa95418a37322b4;hb=c95d47b0b4d01552804ebcf26e5ae42fc576fc60;hp=9c22ec5d78a38ac1c53653c3ec23b3e6cc3973f3;hpb=3c76826793feeb933dab7a07dab7cc7eb2efc451;p=friendica.git diff --git a/src/LegacyModule.php b/src/LegacyModule.php index 9c22ec5d78..38c3e9a8fb 100644 --- a/src/LegacyModule.php +++ b/src/LegacyModule.php @@ -1,4 +1,23 @@ . + * + */ namespace Friendica; @@ -16,7 +35,14 @@ class LegacyModule extends BaseModule * * @var string */ - private static $moduleName = ''; + private $moduleName = ''; + + public function __construct(string $file_path = '', array $parameters = []) + { + parent::__construct($parameters); + + $this->setModuleFile($file_path); + } /** * The only method that needs to be called, with the module/addon file name. @@ -24,35 +50,30 @@ class LegacyModule extends BaseModule * @param string $file_path * @throws \Exception */ - public static function setModuleFile($file_path) + private function setModuleFile($file_path) { if (!is_readable($file_path)) { - throw new \Exception(Core\L10n::t('Legacy module file not found: %s', $file_path)); + throw new \Exception(DI::l10n()->t('Legacy module file not found: %s', $file_path)); } - self::$moduleName = basename($file_path, '.php'); + $this->moduleName = basename($file_path, '.php'); require_once $file_path; } - public static function init(array $parameters = []) - { - self::runModuleFunction('init', $parameters); - } - - public static function content(array $parameters = []) + public function init() { - return self::runModuleFunction('content', $parameters); + $this->runModuleFunction('init'); } - public static function post(array $parameters = []) + public function content(): string { - self::runModuleFunction('post', $parameters); + return $this->runModuleFunction('content'); } - public static function afterpost(array $parameters = []) + public function post() { - self::runModuleFunction('afterpost', $parameters); + $this->runModuleFunction('post'); } /** @@ -62,15 +83,15 @@ class LegacyModule extends BaseModule * @return string * @throws \Exception */ - private static function runModuleFunction($function_suffix, array $parameters = []) + private function runModuleFunction(string $function_suffix) { - $function_name = static::$moduleName . '_' . $function_suffix; + $function_name = $this->moduleName . '_' . $function_suffix; if (\function_exists($function_name)) { $a = DI::app(); return $function_name($a); } else { - return parent::{$function_suffix}($parameters); + return parent::{$function_suffix}($this->parameters); } } }