74 lines
2.5 KiB
PHP
74 lines
2.5 KiB
PHP
|
<?php
|
||
|
declare(strict_types = 1);
|
||
|
|
||
|
/*
|
||
|
* This file is part of the package t3g/blog.
|
||
|
*
|
||
|
* For the full copyright and license information, please read the
|
||
|
* LICENSE file that was distributed with this source code.
|
||
|
*/
|
||
|
|
||
|
namespace A2G\A2gTravelBlog\ViewHelpers;
|
||
|
|
||
|
use TYPO3Fluid\Fluid\Core\ViewHelper\AbstractTagBasedViewHelper;
|
||
|
use A2G\A2gMaps\Utility\MapConfigUtility;
|
||
|
|
||
|
class MapViewHelper extends AbstractTagBasedViewHelper
|
||
|
{
|
||
|
public function __construct()
|
||
|
{
|
||
|
$this->tagName = 'div';
|
||
|
parent::__construct();
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Arguments Initialization.
|
||
|
*
|
||
|
* @throws \TYPO3\CMS\Fluid\Core\ViewHelper\Exception
|
||
|
* @throws \TYPO3Fluid\Fluid\Core\ViewHelper\Exception
|
||
|
*/
|
||
|
public function initializeArguments(): void
|
||
|
{
|
||
|
parent::initializeArguments();
|
||
|
$this->registerUniversalTagAttributes();
|
||
|
$this->registerArgument('category', 'int', 'categoryUid', true);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* @return string the HTML <img>-Tag of the gravatar
|
||
|
*/
|
||
|
public function render(): string
|
||
|
{
|
||
|
|
||
|
// <div class="a2g-map"
|
||
|
// data-map-config='{"zoom":2,"maxZoom":18,
|
||
|
// "centerLon":0,"centerLat":0,
|
||
|
// "style": {
|
||
|
// "featureOverlay":{
|
||
|
// "stroke":{
|
||
|
// "color": "rgba(240,145,48,0.7)",
|
||
|
// "width": 4
|
||
|
// }
|
||
|
// }
|
||
|
// },
|
||
|
// "mapLayers":[{
|
||
|
// "layer": "country",
|
||
|
// "config": {
|
||
|
// "layer": "country",
|
||
|
// "countryGeoSource": "<f:uri.action action="activeCountriesGeojson" pluginName="MapConfig" controller="Map" extensionName="A2gTravelBlog" pageType="1652369512"></f:uri.action>"
|
||
|
// },
|
||
|
// "label": "country (free)",
|
||
|
// "active": true
|
||
|
// },{"layer":"osm","config":[],"label":"osm_map_layer","active":true}],
|
||
|
// "zoomSlider":true,
|
||
|
// "fullScreen":true}'></div>
|
||
|
//
|
||
|
|
||
|
/** @var GravatarProvider $gravatarProvider */
|
||
|
// $gravatarProvider = GeneralUtility::makeInstance(GravatarProvider::class);
|
||
|
// $src = $gravatarProvider->getAvatarUrl((new Author())->setEmail($this->arguments['email']));
|
||
|
$this->tag->addAttribute('data-map-config', '{}');
|
||
|
return $this->tag->render();
|
||
|
}
|
||
|
}
|