diff options
author | Laria Carolin Chabowski <laria@laria.me> | 2020-09-25 21:18:18 +0200 |
---|---|---|
committer | Laria Carolin Chabowski <laria@laria.me> | 2020-09-25 21:28:55 +0200 |
commit | 378881378aab5454c84cb1fecbbcc675f64dc27f (patch) | |
tree | f8bbe239c2a87cc61bec05b987099e4401dd2693 /ratatoeskr/sys/textprocessors/LegacyTextprocessor.php | |
parent | 78c0350b3b7fc025ba565e19bfa195b68e95bb88 (diff) | |
download | ratatoeskr-cms-378881378aab5454c84cb1fecbbcc675f64dc27f.tar.gz ratatoeskr-cms-378881378aab5454c84cb1fecbbcc675f64dc27f.tar.bz2 ratatoeskr-cms-378881378aab5454c84cb1fecbbcc675f64dc27f.zip |
Refactor textprocessors
They are now managed by TextprocessorRepository and are instances of
Textprocessor. This replaces the global $textprocessors variable.
Diffstat (limited to 'ratatoeskr/sys/textprocessors/LegacyTextprocessor.php')
-rw-r--r-- | ratatoeskr/sys/textprocessors/LegacyTextprocessor.php | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/ratatoeskr/sys/textprocessors/LegacyTextprocessor.php b/ratatoeskr/sys/textprocessors/LegacyTextprocessor.php new file mode 100644 index 0000000..e7e5cc2 --- /dev/null +++ b/ratatoeskr/sys/textprocessors/LegacyTextprocessor.php @@ -0,0 +1,32 @@ +<?php + + +namespace r7r\cms\sys\textprocessors; + +/** + * LegacyTextprocessor is used to wrap an old-style textprocessor into an Textprocessor object. + */ +class LegacyTextprocessor implements Textprocessor +{ + /** @var callable */ + private $fx; + + /** @var bool */ + private $visible_in_backend; + + public function __construct(callable $fx, $visible_in_backend) + { + $this->fx = $fx; + $this->visible_in_backend = (bool)$visible_in_backend; + } + + public function apply(string $input): string + { + return (string)call_user_func($this->fx, $input); + } + + public function showInBackend(): bool + { + return $this->visible_in_backend; + } +} |