forked from Snck3rs/contao-leaflet-maps
Add hint that zoom level is probably required (Close #56).
This commit is contained in:
@@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
- Custom route to load map data.
|
- Custom route to load map data.
|
||||||
- Add distance filter support for the marker layer (Bounds Mode "fit" has to be enabled).
|
- Add distance filter support for the marker layer (Bounds Mode "fit" has to be enabled).
|
||||||
- Add support for relative css units for map size definition (#59).
|
- Add support for relative css units for map size definition (#59).
|
||||||
|
- Add hint that zoom level is probably required (#56).
|
||||||
|
|
||||||
### Deprecated
|
### Deprecated
|
||||||
|
|
||||||
@@ -23,6 +24,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
|
- Require PHP 7.1.
|
||||||
- Rewritten about page using own route (#48).
|
- Rewritten about page using own route (#48).
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ services:
|
|||||||
- '@netzmacht.contao_toolkit.dca.manager'
|
- '@netzmacht.contao_toolkit.dca.manager'
|
||||||
- '@database_connection'
|
- '@database_connection'
|
||||||
- '@netzmacht.contao_toolkit.repository_manager'
|
- '@netzmacht.contao_toolkit.repository_manager'
|
||||||
|
- '@translator'
|
||||||
|
- '@session'
|
||||||
|
|
||||||
netzmacht.contao_leaflet.listeners.dca.control:
|
netzmacht.contao_leaflet.listeners.dca.control:
|
||||||
class: Netzmacht\Contao\Leaflet\Listener\Dca\ControlDcaListener
|
class: Netzmacht\Contao\Leaflet\Listener\Dca\ControlDcaListener
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ $GLOBALS['TL_DCA']['tl_leaflet_map'] = [
|
|||||||
],
|
],
|
||||||
'onload_callback' => [
|
'onload_callback' => [
|
||||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'loadLanguageFile'],
|
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'loadLanguageFile'],
|
||||||
|
['netzmacht.contao_leaflet.listeners.dca.map', 'addIncompleteConfigurationWarning'],
|
||||||
],
|
],
|
||||||
'onsubmit_callback' => [
|
'onsubmit_callback' => [
|
||||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||||
|
|||||||
15
src/Bundle/Resources/contao/languages/en/default.php
Normal file
15
src/Bundle/Resources/contao/languages/en/default.php
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Leaflet maps for Contao CMS.
|
||||||
|
*
|
||||||
|
* @package contao-leaflet-maps
|
||||||
|
* @author David Molineus <david.molineus@netzmacht.de>
|
||||||
|
* @copyright 2014-2018 netzmacht David Molineus. All rights reserved.
|
||||||
|
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||||
|
* @filesource
|
||||||
|
*/
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
$GLOBALS['TL_LANG']['ERR']['leafletMissingZoomLevel'] = 'No zoom level defined. Only leave it empty on purpose (Zoom level might by initialized by bounds adjustments). Otherwise no map will be shown.';
|
||||||
@@ -15,14 +15,20 @@ declare(strict_types=1);
|
|||||||
namespace Netzmacht\Contao\Leaflet\Listener\Dca;
|
namespace Netzmacht\Contao\Leaflet\Listener\Dca;
|
||||||
|
|
||||||
use Contao\DataContainer;
|
use Contao\DataContainer;
|
||||||
|
use Contao\Input;
|
||||||
use Contao\StringUtil;
|
use Contao\StringUtil;
|
||||||
use Doctrine\DBAL\Connection;
|
use Doctrine\DBAL\Connection;
|
||||||
use Netzmacht\Contao\Leaflet\Model\LayerModel;
|
use Netzmacht\Contao\Leaflet\Model\LayerModel;
|
||||||
|
use Netzmacht\Contao\Leaflet\Model\MapModel;
|
||||||
use Netzmacht\Contao\Toolkit\Data\Model\RepositoryManager;
|
use Netzmacht\Contao\Toolkit\Data\Model\RepositoryManager;
|
||||||
use Netzmacht\Contao\Toolkit\Dca\Listener\AbstractListener;
|
use Netzmacht\Contao\Toolkit\Dca\Listener\AbstractListener;
|
||||||
use Netzmacht\Contao\Toolkit\Dca\Manager;
|
use Netzmacht\Contao\Toolkit\Dca\Manager;
|
||||||
use Netzmacht\Contao\Toolkit\Dca\Options\OptionsBuilder;
|
use Netzmacht\Contao\Toolkit\Dca\Options\OptionsBuilder;
|
||||||
use PDO;
|
use PDO;
|
||||||
|
use function strlen;
|
||||||
|
use Symfony\Component\HttpFoundation\Session\Session;
|
||||||
|
use Symfony\Component\Translation\TranslatorInterface as Translator;
|
||||||
|
use function var_dump;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class Map is the helper class for the tl_leaflet_map dca.
|
* Class Map is the helper class for the tl_leaflet_map dca.
|
||||||
@@ -52,19 +58,70 @@ class MapDcaListener extends AbstractListener
|
|||||||
*/
|
*/
|
||||||
private $repositoryManager;
|
private $repositoryManager;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Translator.
|
||||||
|
*
|
||||||
|
* @var Translator
|
||||||
|
*/
|
||||||
|
private $translator;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Session.
|
||||||
|
*
|
||||||
|
* @var Session
|
||||||
|
*/
|
||||||
|
private $session;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Construct.
|
* Construct.
|
||||||
*
|
*
|
||||||
* @param Manager $manager Data container manager.
|
* @param Manager $manager Data container manager.
|
||||||
* @param Connection $connection Database connection.
|
* @param Connection $connection Database connection.
|
||||||
* @param RepositoryManager $repositoryManager Repository manager.
|
* @param RepositoryManager $repositoryManager Repository manager.
|
||||||
|
* @param Translator $translator Translator.
|
||||||
|
* @param Session $session Session.
|
||||||
*/
|
*/
|
||||||
public function __construct(Manager $manager, Connection $connection, RepositoryManager $repositoryManager)
|
public function __construct(
|
||||||
{
|
Manager $manager,
|
||||||
|
Connection $connection,
|
||||||
|
RepositoryManager $repositoryManager,
|
||||||
|
Translator $translator,
|
||||||
|
Session $session
|
||||||
|
) {
|
||||||
parent::__construct($manager);
|
parent::__construct($manager);
|
||||||
|
|
||||||
$this->connection = $connection;
|
$this->connection = $connection;
|
||||||
$this->repositoryManager = $repositoryManager;
|
$this->repositoryManager = $repositoryManager;
|
||||||
|
$this->translator = $translator;
|
||||||
|
$this->session = $session;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Add warnings for incomplete configurations.
|
||||||
|
*
|
||||||
|
* @param DataContainer $dataContainer The data container driver.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function addIncompleteConfigurationWarning($dataContainer): void
|
||||||
|
{
|
||||||
|
if (Input::get('act') !== 'edit') {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$repository = $this->repositoryManager->getRepository(MapModel::class);
|
||||||
|
$map = $repository->find((int) $dataContainer->id);
|
||||||
|
|
||||||
|
if (!$map) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($map->zoom === null || $map->zoom === '') {
|
||||||
|
$this->session->getFlashBag()->add(
|
||||||
|
'contao.BE.info',
|
||||||
|
$this->translator->trans('ERR.leafletMissingZoomLevel', [], 'contao_default')
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user