mirror of
https://github.com/netzmacht/contao-leaflet-maps.git
synced 2025-11-28 19:13:55 +01:00
Use latest Repository feature to replace static model calls.
This commit is contained in:
@@ -27,7 +27,7 @@
|
||||
"netzmacht/contao-leaflet-libraries": "^1.0",
|
||||
"netzmacht/php-javascript-builder": "^1.0",
|
||||
"netzmacht/php-leaflet": "^1.0.2",
|
||||
"netzmacht/contao-toolkit": "^3.0@dev",
|
||||
"netzmacht/contao-toolkit": "dev-hotfix/3.0.0-beta2",
|
||||
"contao-community-alliance/meta-palettes": "^1.5",
|
||||
"menatwork/contao-multicolumnwizard": "^3.2",
|
||||
"doctrine/cache": "^1.0"
|
||||
|
||||
@@ -15,6 +15,7 @@ declare(strict_types=1);
|
||||
namespace Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer;
|
||||
|
||||
use Contao\FilesModel;
|
||||
use Netzmacht\Contao\Toolkit\Data\Model\RepositoryManager;
|
||||
use Symfony\Component\Translation\TranslatorInterface as Translator;
|
||||
|
||||
/**
|
||||
@@ -24,6 +25,23 @@ use Symfony\Component\Translation\TranslatorInterface as Translator;
|
||||
*/
|
||||
class FileLabelRenderer extends AbstractLabelRenderer
|
||||
{
|
||||
/**
|
||||
* Repository manager.
|
||||
*
|
||||
* @var RepositoryManager
|
||||
*/
|
||||
private $repositoryManager;
|
||||
|
||||
/**
|
||||
* FileLabelRenderer constructor.
|
||||
*
|
||||
* @param RepositoryManager $repositoryManager Repository manager.
|
||||
*/
|
||||
public function __construct(RepositoryManager $repositoryManager)
|
||||
{
|
||||
$this->repositoryManager = $repositoryManager;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
@@ -37,7 +55,8 @@ class FileLabelRenderer extends AbstractLabelRenderer
|
||||
*/
|
||||
public function render(array $row, string $label, Translator $translator): string
|
||||
{
|
||||
$file = FilesModel::findByPk($row['file']);
|
||||
$repository = $this->repositoryManager->getRepository(FilesModel::class);
|
||||
$file = $repository->findByPk($row['file']);
|
||||
|
||||
if ($file) {
|
||||
$label .= ' <span class="tl_gray">(' . $file->path . ')</span>';
|
||||
|
||||
@@ -15,6 +15,7 @@ declare(strict_types=1);
|
||||
namespace Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer;
|
||||
|
||||
use Netzmacht\Contao\Leaflet\Model\MarkerModel;
|
||||
use Netzmacht\Contao\Toolkit\Data\Model\RepositoryManager;
|
||||
use Symfony\Component\Translation\TranslatorInterface as Translator;
|
||||
|
||||
/**
|
||||
@@ -24,6 +25,23 @@ use Symfony\Component\Translation\TranslatorInterface as Translator;
|
||||
*/
|
||||
final class MarkersLabelRenderer extends AbstractLabelRenderer
|
||||
{
|
||||
/**
|
||||
* Repository manager.
|
||||
*
|
||||
* @var RepositoryManager
|
||||
*/
|
||||
private $repositoryManager;
|
||||
|
||||
/**
|
||||
* FileLabelRenderer constructor.
|
||||
*
|
||||
* @param RepositoryManager $repositoryManager Repository manager.
|
||||
*/
|
||||
public function __construct(RepositoryManager $repositoryManager)
|
||||
{
|
||||
$this->repositoryManager = $repositoryManager;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
@@ -37,7 +55,8 @@ final class MarkersLabelRenderer extends AbstractLabelRenderer
|
||||
*/
|
||||
public function render(array $row, string $label, Translator $translator): string
|
||||
{
|
||||
$count = MarkerModel::countBy('pid', $row['id']);
|
||||
$repository = $this->repositoryManager->getRepository(MarkerModel::class);
|
||||
$count = $repository->countBy(['pid'], [$row['pid']]);
|
||||
$label .= sprintf(
|
||||
'<span class="tl_gray"> (%s %s)</span>',
|
||||
$count,
|
||||
|
||||
@@ -29,7 +29,7 @@ final class OverpassLabelRenderer extends AbstractLabelRenderer
|
||||
*/
|
||||
protected function getLayerType(): string
|
||||
{
|
||||
return 'vectors';
|
||||
return 'overpass';
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -15,6 +15,7 @@ declare(strict_types=1);
|
||||
namespace Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer;
|
||||
|
||||
use Netzmacht\Contao\Leaflet\Model\LayerModel;
|
||||
use Netzmacht\Contao\Toolkit\Data\Model\RepositoryManager;
|
||||
use Symfony\Component\Translation\TranslatorInterface as Translator;
|
||||
|
||||
/**
|
||||
@@ -24,12 +25,29 @@ use Symfony\Component\Translation\TranslatorInterface as Translator;
|
||||
*/
|
||||
final class ReferenceLabelRenderer extends AbstractLabelRenderer
|
||||
{
|
||||
/**
|
||||
* Repository manager.
|
||||
*
|
||||
* @var RepositoryManager
|
||||
*/
|
||||
private $repositoryManager;
|
||||
|
||||
/**
|
||||
* FileLabelRenderer constructor.
|
||||
*
|
||||
* @param RepositoryManager $repositoryManager Repository manager.
|
||||
*/
|
||||
public function __construct(RepositoryManager $repositoryManager)
|
||||
{
|
||||
$this->repositoryManager = $repositoryManager;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function getLayerType(): string
|
||||
{
|
||||
return 'vectors';
|
||||
return 'reference';
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -37,7 +55,8 @@ final class ReferenceLabelRenderer extends AbstractLabelRenderer
|
||||
*/
|
||||
public function render(array $row, string $label, Translator $translator): string
|
||||
{
|
||||
$reference = LayerModel::findByPk($row['reference']);
|
||||
$repository = $this->repositoryManager->getRepository(LayerModel::class);
|
||||
$reference = $repository->find((int) $row['reference']);
|
||||
|
||||
if ($reference) {
|
||||
$label .= '<span class="tl_gray"> (' . $reference->title . ')</span>';
|
||||
|
||||
@@ -15,6 +15,7 @@ declare(strict_types=1);
|
||||
namespace Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer;
|
||||
|
||||
use Netzmacht\Contao\Leaflet\Model\VectorModel;
|
||||
use Netzmacht\Contao\Toolkit\Data\Model\RepositoryManager;
|
||||
use Symfony\Component\Translation\TranslatorInterface as Translator;
|
||||
|
||||
/**
|
||||
@@ -24,6 +25,23 @@ use Symfony\Component\Translation\TranslatorInterface as Translator;
|
||||
*/
|
||||
final class VectorsLabelRenderer extends AbstractLabelRenderer
|
||||
{
|
||||
/**
|
||||
* Repository manager.
|
||||
*
|
||||
* @var RepositoryManager
|
||||
*/
|
||||
private $repositoryManager;
|
||||
|
||||
/**
|
||||
* FileLabelRenderer constructor.
|
||||
*
|
||||
* @param RepositoryManager $repositoryManager Repository manager.
|
||||
*/
|
||||
public function __construct(RepositoryManager $repositoryManager)
|
||||
{
|
||||
$this->repositoryManager = $repositoryManager;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
@@ -37,7 +55,8 @@ final class VectorsLabelRenderer extends AbstractLabelRenderer
|
||||
*/
|
||||
public function render(array $row, string $label, Translator $translator): string
|
||||
{
|
||||
$count = VectorModel::countBy('pid', $row['id']);
|
||||
$repository = $this->repositoryManager->getRepository(VectorModel::class);
|
||||
$count = $repository->countBy(['pid'], [$row['id']]);
|
||||
$label .= sprintf(
|
||||
'<span class="tl_gray"> (%s %s)</span>',
|
||||
$count,
|
||||
|
||||
@@ -62,6 +62,8 @@ services:
|
||||
|
||||
netzmacht.contao_leaflet.layer_label_renderer.markers:
|
||||
class: Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer\MarkersLabelRenderer
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: 'netzmacht.contao_leaflet.layer_label_renderer' }
|
||||
|
||||
@@ -77,15 +79,21 @@ services:
|
||||
|
||||
netzmacht.contao_leaflet.layer_label_renderer.reference:
|
||||
class: Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer\ReferenceLabelRenderer
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: 'netzmacht.contao_leaflet.layer_label_renderer' }
|
||||
|
||||
netzmacht.contao_leaflet.layer_label_renderer.vectors:
|
||||
class: Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer\VectorsLabelRenderer
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: 'netzmacht.contao_leaflet.layer_label_renderer' }
|
||||
|
||||
netzmacht.contao_leaflet.layer_label_renderer.file:
|
||||
class: Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer\FileLabelRenderer
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: 'netzmacht.contao_leaflet.layer_label_renderer' }
|
||||
|
||||
Reference in New Issue
Block a user