Support custom templates and map ids.

This commit is contained in:
David Molineus
2015-01-30 17:44:24 +01:00
parent 1bfd99746c
commit 31136afd42
8 changed files with 102 additions and 7 deletions

View File

@@ -66,7 +66,7 @@ trait HybridTrait
*/
public function generate()
{
$this->mapService->handleAjaxRequest('map_' . $this->getIdentifier());
$this->mapService->handleAjaxRequest($this->getIdentifier());
if (TL_MODE === 'BE') {
$model = MapModel::findByPK($this->leaflet_map);
@@ -101,8 +101,9 @@ trait HybridTrait
protected function compile()
{
try {
$mapId = 'map_' . $this->getIdentifier();
$map = $this->mapService->generate($this->leaflet_map, null, $mapId);
$template = $this->leaflet_template ?: 'leaflet_map_js';
$mapId = $this->getIdentifier();
$map = $this->mapService->generate($this->leaflet_map, null, $mapId, $template);
$GLOBALS['TL_BODY'][] = '<script>' . $map .'</script>';

View File

@@ -47,6 +47,14 @@ class MapElement extends \ContentElement
*/
protected function getIdentifier()
{
return 'ce_' . $this->id;
if ($this->leaflet_mapId) {
return $this->leaflet_mapId;
}
if ($this->cssID[0]) {
return 'map_' . $this->cssID[0];
}
return 'map_ce_' . $this->id;
}
}

View File

@@ -46,6 +46,14 @@ class MapModule extends \Module
*/
protected function getIdentifier()
{
return 'mod_' . $this->id;
if ($this->leaflet_mapId) {
return $this->leaflet_mapId;
}
if ($this->cssID[0]) {
return 'map_' . $this->cssID[0];
}
return 'map_mod_' . $this->id;
}
}