dev-master
9999999-dev https://typo3.orgLibraries from third parties
GPL-2.0+
The Requires
typo3 hashids
Wallogit.com
2017 © Pedro Peláez
Libraries from third parties
This TYPO3 extension provides 3rd party libraries to be used in non-composer mode., (*2)
Currently the following libraries are available:, (*3)
| Library | Version |
|---|---|
| hashids/hashids | 4.1.0 |
| erusev/parsedown | 1.7.4 |
| rlanvin/php-rrule | 2.3.0 |
Hashids is small PHP library to generate YouTube-like ids from numbers. Use it when you don't want to expose your database ids to the user., (*4)
Example:, (*5)
$hashids = new \Hashids\Hashids; $handle = $hashids->encode(5, 5, 5);
Parsedown transforms text with markdown syntax to html., (*6)
Example:, (*7)
$parsedown = new \Parsedown; $htmlText = $parsedown->text($markdownText);
A ViewHelper is available and can be used as following:, (*8)
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"
xmlns:auxlibs="http://typo3.org/ns/Buepro/Auxlibs/ViewHelpers"
data-namespace-typo3-fluid="true">
{auxlibs:parsedown(text: textWithMarkedownSyntax)}
{task.description -> auxlibs:parsedown()}
<auxlibs:parsedown text="{task.description}" />
<auxlibs:parsedown>{task.description}</auxlibs:parsedown>
</html>
The ViewHelper has the following properties:, (*9)
| Property | Description | Type | Default |
|---|---|---|---|
| nl2br | If set maintains line breaks | bool | false |
RRule is a lightweight and fast implementation of recurrence rules for PHP (RRULE from RFC 5545), to easily calculate recurring/repeating dates and events (such as in a calendar)., (*10)
Example:, (*11)
$rrule = new RRule('RRULE:FREQ=DAILY;UNTIL=19971224T000000Z;WKST=SU;BYDAY=MO,WE,FR;BYMONTH=1');
foreach ($rrule as $occurrence) {
echo $occurrence->format('r'),"\n";
}
With RSet even more complex rules can be defined:, (*12)
$rset = new RSet(
"DTSTART;TZID=America/New_York:19970901T090000
RRULE:FREQ=DAILY;COUNT=3
EXRULE:FREQ=DAILY;INTERVAL=2;COUNT=1
EXDATE;TZID=America/New_York:19970903T090000
RDATE;TZID=America/New_York:19970904T090000"
);
The libraries are automatically loaded in a middleware. In case a library needs to be available at an earlier stage it
might be loaded with an include statement. The include statement for the library hashids would look as following:, (*13)
use TYPO3\CMS\Core\Utility\ExtensionManagementUtility;
@include 'phar://'
. ExtensionManagementUtility::extPath('auxlibs')
. 'Libraries/hashids-hashids.phar/vendor/autoload.php';
Libraries from third parties
GPL-2.0+
typo3 hashids