This plugin automatically turns legal norms into links to their respectivedejure.org
.
Use one of the following methods to install & use kirby3-dejure
:
If you know your way around Git, you can download this plugin as a submodule:
git submodule add https://github.com/S1SYPHOS/kirby3-dejure.git site/plugins/kirby3-dejure
composer require s1syphos/kirby3-dejure
You may change certain options from your config.php
globally ('kirby3-dejure.optionName'
):
Option | Type | Default | Description |
---|---|---|---|
'enabled' |
bool | false |
Enables kirbytext:after hook |
'allowList' |
array | [] |
Allowed template names |
'blockList' |
array | [] |
Blocked template names |
'ignore' |
string | '' |
Global file number ignore |
'email' |
string | '' |
Contact mail |
'buzer' |
bool | false |
Fallback linking to 'buzer.de' |
'class' |
string | '' |
Controls class attribute |
'lineBreak' |
string | 'auto' |
Controls links across line breaks. Possible values: 'ohne' , 'mit' , 'auto' |
'linkStyle' |
string | 'weit' |
Controls link range. Possible values: 'weit' , 'schmal' |
'target' |
string | '_blank' |
Controls target attribute |
'tooltip' |
string | 'beschreibend' |
Controls title attribute. Possible values: 'ohne' , 'neutral' , 'beschreibend' , 'Gesetze' , 'halb' |
'driver ' |
string | 'file' |
For all cache drivers, see here |
'caching ' |
array | [] |
For all config options, see here |
'cacheDuration' |
int | 2 |
Cache duration (days) |
'streamTimeout' |
int | 10 |
Response stream timeout (seconds) |
'timeout' |
int | 3 |
Request timeout (seconds) |
'userAgent' |
string | null |
Controls User-Agent header |
When enabling the plugin via kirby3-dejure.enabled
, auto-linking is applied to all kirbytext()
/ kt()
calls, with two exceptions:
- If a page's
intendedTemplate()
name is allow(list)ed, this overrideskirby3-dejure.enabled
beingfalse
- If a page's
intendedTemplate()
name is block(list)ed, this overrideskirby3-dejure.enabled
beingtrue
Besides that, there are additional methods you can use:
There are several ways to do this, you can either use a standalone function, a page method or a field method:
Processes linkable citations & caches text (if uncached or expired)
Clears DJO cache
Same as dejurify
Same as dejurify
, but supports applying kirbytext()
out-of-the-box via its third parameter $useKirbytext
.
- Add tests
- Cache entries per-site (?)
kirby3-dejure
is based on php-dejure
library (an OOP port of vernetzungsfunction.inc.php
, which can be downloaded here. It is licensed under the MIT License, but using Kirby in production requires you to buy a license.
I'd like to thank everybody that's making great software - you people are awesome. Also I'm always thankful for feedback and bug reports :)