Files
contao-leaflet-maps/src/Netzmacht/Contao/Leaflet/ContaoAssets.php

102 lines
2.1 KiB
PHP
Raw Normal View History

2014-12-29 12:17:40 +01:00
<?php
/**
* @package dev
* @author David Molineus <david.molineus@netzmacht.de>
* @copyright 2014 netzmacht creative David Molineus
* @license LGPL 3.0
* @filesource
*
*/
namespace Netzmacht\Contao\Leaflet;
2016-10-05 16:11:59 +02:00
use Netzmacht\Contao\Toolkit\View\Assets\AssetsManager;
2014-12-29 12:17:40 +01:00
use Netzmacht\LeafletPHP\Assets;
/**
2015-01-12 19:03:29 +01:00
* Class ContaoAssets handles leaflet assets and integrate them into the Contao assets registry (Superglobals).
*
2014-12-29 12:17:40 +01:00
* @package Netzmacht\Contao\Leaflet
*/
class ContaoAssets implements Assets
{
/**
2015-01-12 19:03:29 +01:00
* The map javascript.
*
* @var string
2014-12-29 12:17:40 +01:00
*/
private $map;
2016-10-05 16:11:59 +02:00
/**
* Assets manager.
*
* @var AssetsManager
*/
private $assetsManager;
/**
* ContaoAssets constructor.
*
* @param AssetsManager $assetsManager Contao assets manager.
*/
public function __construct(AssetsManager $assetsManager)
{
$this->assetsManager = $assetsManager;
}
2014-12-29 12:17:40 +01:00
/**
* {@inheritdoc}
2015-01-12 19:03:29 +01:00
*
* @SuppressWarnings(PHPMD.Superglobals)
2014-12-29 12:17:40 +01:00
*/
public function addJavascript($script, $type = self::TYPE_SOURCE)
{
switch ($type) {
case static::TYPE_SOURCE:
$GLOBALS['TL_HEAD'][] = sprintf('<script>%s</script>', $script);
break;
case static::TYPE_FILE:
default:
2016-10-05 16:11:59 +02:00
$this->assetsManager->addJavascript($script);
2014-12-29 12:17:40 +01:00
}
}
/**
* {@inheritdoc}
2015-01-12 19:03:29 +01:00
*
* @SuppressWarnings(PHPMD.Superglobals)
2014-12-29 12:17:40 +01:00
*/
public function addStylesheet($stylesheet, $type = self::TYPE_FILE)
{
switch ($type) {
case static::TYPE_SOURCE:
$GLOBALS['TL_HEAD'][] = sprintf('<style>%s</style>', $stylesheet);
break;
case static::TYPE_FILE:
default:
2016-10-05 16:11:59 +02:00
$this->assetsManager->addStylesheet($stylesheet);
2014-12-29 12:17:40 +01:00
}
}
/**
* {@inheritdoc}
*/
public function getMap()
{
return $this->map;
}
/**
* {@inheritdoc}
*/
public function setMap($map)
{
$this->map = $map;
return $this;
}
}