Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit a9232ec

Browse files
cleanup
1 parent 25d3bb4 commit a9232ec

18 files changed

+100
-195
lines changed

‎README.md

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -126,18 +126,17 @@ That's all!
126126
### Extend the parser
127127
#### Base module
128128
In order to create your own modules, you'll first need an empty base module which contains
129-
all basic settings and methods for each module. To do so, you'll need to extend `BaseModule` and
130-
implement `BaseModuleInterface` (both in `\chillerlan\bbcode\Modules`). There's really not much to do,
131-
the only and most important thing is to tell the parser which modules to use. Further, you need to specify
129+
all basic settings and methods for each module. To do so, you'll need to extend
130+
`\chillerlan\bbcode\Modules\BaseModuleAbstract`. There's really not much to do, the only and most
131+
important thing is to tell the parser which modules to use. Further, you need to specify
132132
a `sanitize()` method and maybe an EOL token - the rest is up to you and may vary between output types.
133133
```php
134134
namespace Example\MyModules;
135135

136-
use chillerlan\bbcode\Modules\BaseModule;
137-
use chillerlan\bbcode\Modules\BaseModuleInterface;
136+
use chillerlan\bbcode\Modules\BaseModuleAbstract;
138137
use Example\MyModules\MyAwesomeModule;
139138

140-
class MyAwesomeBaseModule extends BaseModule implements BaseModuleInterface{
139+
class MyAwesomeBaseModule extends BaseModuleAbstract{
141140

142141
protected $modules = [
143142
MyAwesomeModule::class,

‎examples/MyModules/MyAwesomeBaseModule.php

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,12 @@
1212

1313
namespace chillerlan\bbcodeExamples\MyModules;
1414

15-
use chillerlan\bbcode\Modules\BaseModule;
16-
use chillerlan\bbcode\Modules\BaseModuleInterface;
15+
use chillerlan\bbcode\Modules\BaseModuleAbstract;
1716

1817
/**
1918
* The base module implements the basic functionality for each module (custom HTML5)
2019
*/
21-
class MyAwesomeBaseModule extends BaseModule implements BaseModuleInterface{
20+
class MyAwesomeBaseModule extends BaseModuleAbstract{
2221

2322
/**
2423
* Holds an array of FQN strings to the current base module's children

‎examples/MyModules/MyAwesomeModule.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
namespace chillerlan\bbcodeExamples\MyModules;
1414

1515
use chillerlan\bbcode\Modules\ModuleInterface;
16-
use chillerlan\bbcodeExamples\MyModules\MyAwesomeBaseModule;
1716

1817
/**
1918
* Transforms several simple text tags into HTML5 (custom)

‎src/Language/Chinese.php

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,26 +13,9 @@
1313
namespace chillerlan\bbcode\Language;
1414

1515
/**
16-
* @method string parserExceptionCallback($override_language = null)
17-
* @method string parserExceptionMatchall($override_language = null)
1816
*
19-
* @method string codeDisplayCSS($override_language = null)
20-
* @method string codeDisplayPHP($override_language = null)
21-
* @method string codeDisplaySQL($override_language = null)
22-
* @method string codeDisplayXML($override_language = null)
23-
* @method string codeDisplayHTML($override_language = null)
24-
* @method string codeDisplayJS($override_language = null)
25-
* @method string codeDisplayJSON($override_language = null)
26-
* @method string codeDisplayPRE($override_language = null)
27-
* @method string codeDisplayCODE($override_language = null)
28-
* @method string codeDisplayNSIS($override_language = null)
29-
*
30-
* @method string expanderDisplayExpander($override_language = null)
31-
* @method string expanderDisplayQuote($override_language = null)
32-
* @method string expanderDisplaySpoiler($override_language = null)
33-
* @method string expanderDisplayTrigger($override_language = null)
3417
*/
35-
class Chinese extends LanguageBase implements LanguageInterface{
18+
class Chinese extends LanguageAbstract{
3619

3720
public $parserExceptionCallback = '';
3821
public $parserExceptionMatchall = '';

‎src/Language/DefaultStrings.php

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,26 +13,9 @@
1313
namespace chillerlan\bbcode\Language;
1414

1515
/**
16-
* @method string parserExceptionCallback($override_language = null)
17-
* @method string parserExceptionMatchall($override_language = null)
1816
*
19-
* @method string codeDisplayCSS($override_language = null)
20-
* @method string codeDisplayPHP($override_language = null)
21-
* @method string codeDisplaySQL($override_language = null)
22-
* @method string codeDisplayXML($override_language = null)
23-
* @method string codeDisplayHTML($override_language = null)
24-
* @method string codeDisplayJS($override_language = null)
25-
* @method string codeDisplayJSON($override_language = null)
26-
* @method string codeDisplayPRE($override_language = null)
27-
* @method string codeDisplayCODE($override_language = null)
28-
* @method string codeDisplayNSIS($override_language = null)
29-
*
30-
* @method string expanderDisplayExpander($override_language = null)
31-
* @method string expanderDisplayQuote($override_language = null)
32-
* @method string expanderDisplaySpoiler($override_language = null)
33-
* @method string expanderDisplayTrigger($override_language = null)
3417
*/
35-
class DefaultStrings extends LanguageBase implements LanguageInterface{
18+
class DefaultStrings extends LanguageAbstract{
3619

3720
public $parserExceptionCallback = 'parserExceptionCallback';
3821
public $parserExceptionMatchall = 'parserExceptionMatchall';

‎src/Language/English.php

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,26 +13,9 @@
1313
namespace chillerlan\bbcode\Language;
1414

1515
/**
16-
* @method string parserExceptionCallback($override_language = null)
17-
* @method string parserExceptionMatchall($override_language = null)
1816
*
19-
* @method string codeDisplayCSS($override_language = null)
20-
* @method string codeDisplayPHP($override_language = null)
21-
* @method string codeDisplaySQL($override_language = null)
22-
* @method string codeDisplayXML($override_language = null)
23-
* @method string codeDisplayHTML($override_language = null)
24-
* @method string codeDisplayJS($override_language = null)
25-
* @method string codeDisplayJSON($override_language = null)
26-
* @method string codeDisplayPRE($override_language = null)
27-
* @method string codeDisplayCODE($override_language = null)
28-
* @method string codeDisplayNSIS($override_language = null)
29-
*
30-
* @method string expanderDisplayExpander($override_language = null)
31-
* @method string expanderDisplayQuote($override_language = null)
32-
* @method string expanderDisplaySpoiler($override_language = null)
33-
* @method string expanderDisplayTrigger($override_language = null)
3417
*/
35-
class English extends LanguageBase implements LanguageInterface{
18+
class English extends LanguageAbstract{
3619

3720
public $parserExceptionCallback = 'preg_replace_callback() died on [%1$s] due to a %2$s (%3$s)';
3821
public $parserExceptionMatchall = 'preg_match_all() died due to a %1$s (%2$s)';

‎src/Language/French.php

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,26 +13,9 @@
1313
namespace chillerlan\bbcode\Language;
1414

1515
/**
16-
* @method string parserExceptionCallback($override_language = null)
17-
* @method string parserExceptionMatchall($override_language = null)
1816
*
19-
* @method string codeDisplayCSS($override_language = null)
20-
* @method string codeDisplayPHP($override_language = null)
21-
* @method string codeDisplaySQL($override_language = null)
22-
* @method string codeDisplayXML($override_language = null)
23-
* @method string codeDisplayHTML($override_language = null)
24-
* @method string codeDisplayJS($override_language = null)
25-
* @method string codeDisplayJSON($override_language = null)
26-
* @method string codeDisplayPRE($override_language = null)
27-
* @method string codeDisplayCODE($override_language = null)
28-
* @method string codeDisplayNSIS($override_language = null)
29-
*
30-
* @method string expanderDisplayExpander($override_language = null)
31-
* @method string expanderDisplayQuote($override_language = null)
32-
* @method string expanderDisplaySpoiler($override_language = null)
33-
* @method string expanderDisplayTrigger($override_language = null)
3417
*/
35-
class French extends LanguageBase implements LanguageInterface{
18+
class French extends LanguageAbstract{
3619

3720
public $parserExceptionCallback = '';
3821
public $parserExceptionMatchall = '';

‎src/Language/German.php

Lines changed: 2 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -13,26 +13,9 @@
1313
namespace chillerlan\bbcode\Language;
1414

1515
/**
16-
* @method string parserExceptionCallback($override_language = null)
17-
* @method string parserExceptionMatchall($override_language = null)
18-
*
19-
* @method string codeDisplayCSS($override_language = null)
20-
* @method string codeDisplayPHP($override_language = null)
21-
* @method string codeDisplaySQL($override_language = null)
22-
* @method string codeDisplayXML($override_language = null)
23-
* @method string codeDisplayHTML($override_language = null)
24-
* @method string codeDisplayJS($override_language = null)
25-
* @method string codeDisplayJSON($override_language = null)
26-
* @method string codeDisplayPRE($override_language = null)
27-
* @method string codeDisplayCODE($override_language = null)
28-
* @method string codeDisplayNSIS($override_language = null)
29-
*
30-
* @method string expanderDisplayExpander($override_language = null)
31-
* @method string expanderDisplayQuote($override_language = null)
32-
* @method string expanderDisplaySpoiler($override_language = null)
33-
* @method string expanderDisplayTrigger($override_language = null)
16+
*
3417
*/
35-
class German extends LanguageBase implements LanguageInterface{
18+
class German extends LanguageAbstract{
3619

3720
public $parserExceptionCallback = 'preg_replace_callback() verursachte einen %2$s (%3$s) am tag [%1$s]';
3821
public $parserExceptionMatchall = 'preg_match_all() verursachte einen %1$s (%2$s)';

‎src/Language/LanguageAbstract.php

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
<?php
2+
/**
3+
* Class LanguageAbstract
4+
*
5+
* @filesource LanguageAbstract.php
6+
* @created 11.02.2016
7+
* @package chillerlan\BBCode\Language
8+
* @author Smiley <smiley@chillerlan.net>
9+
* @copyright 2015 Smiley
10+
* @license MIT
11+
*/
12+
13+
namespace chillerlan\bbcode\Language;
14+
15+
use chillerlan\bbcode\Traits\ClassLoaderTrait;
16+
17+
/**
18+
* @method string parserExceptionCallback($override_language = null)
19+
* @method string parserExceptionMatchall($override_language = null)
20+
*
21+
* @method string codeDisplayCSS($override_language = null)
22+
* @method string codeDisplayPHP($override_language = null)
23+
* @method string codeDisplaySQL($override_language = null)
24+
* @method string codeDisplayXML($override_language = null)
25+
* @method string codeDisplayHTML($override_language = null)
26+
* @method string codeDisplayJS($override_language = null)
27+
* @method string codeDisplayJSON($override_language = null)
28+
* @method string codeDisplayPRE($override_language = null)
29+
* @method string codeDisplayCODE($override_language = null)
30+
* @method string codeDisplayNSIS($override_language = null)
31+
*
32+
* @method string expanderDisplayExpander($override_language = null)
33+
* @method string expanderDisplayQuote($override_language = null)
34+
* @method string expanderDisplaySpoiler($override_language = null)
35+
* @method string expanderDisplayTrigger($override_language = null)
36+
*/
37+
abstract class LanguageAbstract implements LanguageInterface{
38+
use ClassLoaderTrait;
39+
40+
/**
41+
* It's magic.
42+
*
43+
* @param string $name
44+
* @param array $arguments
45+
*
46+
* @return mixed
47+
*/
48+
public function __call(string $name, array $arguments){
49+
return $this->string($name, ...$arguments);
50+
}
51+
52+
/**
53+
* Returns a language string for a given key and overrides the current language if desired.
54+
*
55+
* @param string $key
56+
* @param string $override_language (a LanguageInterface FQCN)
57+
*
58+
* @return mixed
59+
* @throws \chillerlan\bbcode\BBCodeException
60+
*/
61+
public function string(string $key, string $override_language = null){
62+
63+
if($override_language){
64+
return $this->__loadClass($override_language, LanguageInterface::class)->{$key}();
65+
}
66+
67+
return $this->{$key};
68+
}
69+
70+
}

‎src/Language/LanguageBase.php

Lines changed: 0 additions & 53 deletions
This file was deleted.

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /