heimrichhannot/contao-haste_plus
最新稳定版本:1.16.4
Composer 安装命令:
composer require heimrichhannot/contao-haste_plus
包简介
An extension for the contao haste module.
README 文档
README
Please note:
This bundle is deprecated and not actively maintained anymore!
Haste Plus
Haste plus extends codefog/contao-haste as a collection of tools and classes to ease working with Contao.
Module Preview
Features
Cache
The PHP high-performance object caching system, phpfastcache is part of hast_plus. Currently only File-Caching is supported, but Pull-Request are welcome.
Example : FileCache
// MyClass.php
public function getSelectOptions(array $arrNewsArchives)
{
// select a unique key
$strCacheKey = 'my_select_options' . implode('_', $arrNewsArchives);
if(FileCache::getInstance()->isExisting($strCacheKey))
{
return FileCache::getInstance()->get($strCacheKey);
}
$arrItems = array();
// heavy sql queries or http-requests (just an example)
$objItems = \NewsModel::findPublishedByPids($arrNewsArchives);
if($objItems === null)
{
return $arrItems;
}
$arrItems = $objItems->fetchEach('headline');
FileCache::getInstance()->set($strCacheKey, $arrItems);
return $arrItems;
}
Security
Add security headers to http request (configurable in tl_settings)
- IFRAME Clickjacking Protection: X-Frame-Options: SAMEORIGIN
- Allow Origins Check: Access-Control-Allow-Origins & Access-Control-Allow-Headers
These options don't work anymore with Contao 4! Further Information
Input/Widget rgxp
The following regular expression can be used to validate widget input.
| Name | Example | Description |
|---|---|---|
| customDate | customDate::d.m | Validate custom date format against input. |
| price | price | Validate price input. |
| posfloat | posfloat | Validate float numbers in input. |
| maxlength | maxlength::120 | Validate the user input without html elements against the input given length. |
Utils
The following Classes and Methods are helpers that ease the working with Contao.
| Class | Description |
|---|---|
| Files | Contains helper function for working with files and filenames. |
| PaymentUtils | Contains helper functions for payment relevant use cases. |
| StringUtils | Contains helper function for working with strings. |
| Type | Name | Method | Description |
|---|---|---|---|
| Url | addScheme | \HeimrichHannot\Haste\Util\Url::addScheme($strUrl, $strScheme) | Add the given protocol/scheme (http://,https://,ftp://…) to the given url if not present. |
| Arrays | filterByPrefixes | \HeimrichHannot\Haste\Util\Arrays::filterByPrefixes($arrData, $arrayPrefixes) | Filter an array by given prefixes and return the filtered array. |
| Arrays | getListPositonCssClass | \HeimrichHannot\Haste\Util\Arrays::getListPositonCssClass($key, $arrList, $blnReturnAsArray) | Create the class names for an item within a array list |
Google Maps
If you want to add google maps with ease that are build from dynamic entities, and not withing dlh_googlemaps backend module, use the following code.
# news_full.html5
<?php $objMap = new \HeimrichHannot\Haste\Map\GoogleMap(); ?>
<?php foreach ($this->venues as $arrVenue): ?>
<?php $objMap->setCenter($arrVenue['venueSingleCoords']); // lat and lon seperated by comma ?>
<?php $objMarker = new \HeimrichHannot\Haste\Map\GoogleMapMarker(); ?>
<?php $objMarker->setPosition($arrVenue['venueSingleCoords']); // lat and lon seperated by comma ?>
<?php $objMarker->setTitle($arrVenue['venueName']); // for full list of marker options see \HeimrichHannot\Haste\Map\GoogleMapMarker::prepare()?>
<?php $objMap->addMarker($objMarker); ?>
<?php endforeach; ?>
<?= $objMap->generate(
array(
'mapSize' => array('100%', '400px', ''),
'zoom' => 13,
)
// for full list of map options see \HeimrichHannot\Haste\Map\GoogleMap::prepare()
); ?>
Inserttags
| Tag | Arguments | Example |
|---|---|---|
| trimsplit | 1st: the delimiter, 2nd: the value | {{trimsplit::,::2,1}} |
| encrypt | 1st: the value | {{encrypt::my secret value}} |
Developer notes
- provide a minimum of 3 unit test for each test case of a util method
Notification Tokens
- Added
##form_submission_html_all##, an equivalent to##formsubmission##but for html format
统计信息
- 总下载量: 32.13k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 40
- 推荐数: 0
其他信息
- 授权协议: LGPL-3.0-or-later
- 更新时间: 2015-08-26