forked from Snck3rs/contao-leaflet-maps
Compare commits
166 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
873de89d7c | ||
|
|
88927a3de8 | ||
|
|
8fdc7dab29 | ||
|
|
9a1b6dee01 | ||
|
|
9e0f11ec18 | ||
|
|
f60ed1b7be | ||
|
|
3d45f6b2eb | ||
|
|
e73a4d4bdf | ||
|
|
0322a87e94 | ||
|
|
f5e8701312 | ||
|
|
2d0221a90a | ||
|
|
9f0b34a53b | ||
|
|
e5d336037f | ||
|
|
19614d305f | ||
|
|
295d5385a0 | ||
|
|
bde761911f | ||
|
|
b4947c1404 | ||
|
|
16e58f7f40 | ||
|
|
27cef9b45b | ||
|
|
ef30de9698 | ||
|
|
db352a2df3 | ||
|
|
7db007bdab | ||
|
|
a77c1b4039 | ||
|
|
46e0661986 | ||
|
|
ded5427afb | ||
|
|
8b193a391a | ||
|
|
00da9f7b25 | ||
|
|
099cd6ca9d | ||
|
|
86fb4f4e12 | ||
|
|
ae4d9cec13 | ||
|
|
08dea6e1da | ||
|
|
ef7b493b2d | ||
|
|
ce9de6ded3 | ||
|
|
7498aef141 | ||
|
|
28adc54d36 | ||
|
|
451d13fe98 | ||
|
|
a4192b4b1a | ||
|
|
7741f44428 | ||
|
|
0716354952 | ||
|
|
dd23d386eb | ||
|
|
edb4ac9eeb | ||
|
|
5501887231 | ||
|
|
60306459d2 | ||
|
|
c465b724f4 | ||
|
|
6ded7441d9 | ||
|
|
ae5fe11d20 | ||
|
|
8dbe464ca8 | ||
|
|
d261e8b4ba | ||
|
|
57fe57b8ea | ||
|
|
46e6dcc2fa | ||
|
|
01b3962b78 | ||
|
|
734aecf738 | ||
|
|
50465e4026 | ||
|
|
0abc4676f1 | ||
|
|
d1f26056e9 | ||
|
|
31a5cc40a5 | ||
|
|
59df74c3f9 | ||
|
|
c2fd00e6a0 | ||
|
|
e6689d4d45 | ||
|
|
cda48b9567 | ||
|
|
03896940ac | ||
|
|
d952e6fc48 | ||
|
|
505dc45dd6 | ||
|
|
35227cef82 | ||
|
|
a8491bdc4b | ||
|
|
56a68175fe | ||
|
|
6bfaf63d4f | ||
|
|
c374a2ce5d | ||
|
|
df541fe433 | ||
|
|
da8613ca0b | ||
|
|
f09929fae7 | ||
|
|
8c6f4c4291 | ||
|
|
5ce9d517bc | ||
|
|
e1685f65c5 | ||
|
|
bf0fb35b21 | ||
|
|
abaf24821f | ||
|
|
58a7ccc815 | ||
|
|
13eec4ba2e | ||
|
|
86bcae2f71 | ||
|
|
1dce4bc1c6 | ||
|
|
1df16407ef | ||
|
|
d36d613e37 | ||
|
|
3c660b5bbd | ||
|
|
f5b984407e | ||
|
|
572d2e74a0 | ||
|
|
5a1ea75623 | ||
|
|
6408796b56 | ||
|
|
8f45bf925a | ||
|
|
5167318c43 | ||
|
|
6004138e4e | ||
|
|
6b646243e1 | ||
|
|
95046b65e0 | ||
|
|
cd88c2992b | ||
|
|
a2a6d31259 | ||
|
|
b898aafe51 | ||
|
|
249b12cb61 | ||
|
|
fab9b5a0ba | ||
|
|
51fc784800 | ||
|
|
edf212b850 | ||
|
|
e6ed2c456d | ||
|
|
1e315d9bc5 | ||
|
|
3c9a54c7e1 | ||
|
|
6af1b3fa22 | ||
|
|
7cee2fe631 | ||
|
|
d1c6424699 | ||
|
|
06fc40295c | ||
|
|
5289518d6a | ||
|
|
a5fbba740b | ||
|
|
756c28cdc6 | ||
|
|
ac87bcf947 | ||
|
|
96c78d4306 | ||
|
|
1932937648 | ||
|
|
8eb9a22ae0 | ||
|
|
b5ae094320 | ||
|
|
524678f56e | ||
|
|
31cd1c3ae4 | ||
|
|
e8edeb8021 | ||
|
|
a43b740ba0 | ||
|
|
1b035901c1 | ||
|
|
25b90f4c13 | ||
|
|
8a240ab0ff | ||
|
|
0a76a5450f | ||
|
|
e513edcd3b | ||
|
|
aa524478e6 | ||
|
|
25e3e0d5fb | ||
|
|
2c88d7aec5 | ||
|
|
bc425ea772 | ||
|
|
b82b010937 | ||
|
|
47713e8a38 | ||
|
|
3828c9ce13 | ||
|
|
594b10b0cf | ||
|
|
ad6a4e9384 | ||
|
|
ad5e30fd09 | ||
|
|
f03ed713f3 | ||
|
|
6c7b136c0e | ||
|
|
5a4fd9b434 | ||
|
|
ad6482c28c | ||
|
|
6111fc3594 | ||
|
|
32d47531f7 | ||
|
|
598adb54b1 | ||
|
|
e67b152225 | ||
|
|
1fc47f705d | ||
|
|
fde6c2b4c7 | ||
|
|
307381ddb6 | ||
|
|
f172c42426 | ||
|
|
b96e955504 | ||
|
|
7727263f29 | ||
|
|
25f89f91b6 | ||
|
|
f5badd14c5 | ||
|
|
320359d2f0 | ||
|
|
8300531de3 | ||
|
|
ceb05bb08f | ||
|
|
909288d4fc | ||
|
|
6ad637d4fa | ||
|
|
04c693ac7f | ||
|
|
bce7e31cb3 | ||
|
|
a3ac7262f0 | ||
|
|
20b9144b89 | ||
|
|
84294686a5 | ||
|
|
dfc1fa49d9 | ||
|
|
f8aac5747c | ||
|
|
540680f7f6 | ||
|
|
3e40da22ba | ||
|
|
eea70e3a51 | ||
|
|
827c746b0d | ||
|
|
e3344ffd4f |
11
.composer-require-checker.json
Normal file
11
.composer-require-checker.json
Normal file
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"symbol-whitelist": [
|
||||
"null", "true", "false",
|
||||
"static", "self", "parent",
|
||||
"array", "string", "int", "float", "bool", "iterable", "callable", "void", "object",
|
||||
"array_insert",
|
||||
"Contao\\ManagerPlugin\\Bundle\\BundlePluginInterface",
|
||||
"Contao\\ManagerPlugin\\Bundle\\Config\\BundleConfig",
|
||||
"Contao\\ManagerPlugin\\Bundle\\Parser\\ParserInterface"
|
||||
]
|
||||
}
|
||||
11
.gitattributes
vendored
Normal file
11
.gitattributes
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
.check-author.yml export-ignore
|
||||
.gitattributes export-ignore
|
||||
.github export-ignore
|
||||
.gitignore export-ignore
|
||||
.travis.yml export-ignore
|
||||
build.default.properties export-ignore
|
||||
build.xml export-ignore
|
||||
phpunit.xml.dist export-ignore
|
||||
/tests export-ignore
|
||||
/specs export-ignore
|
||||
/js export-ignore
|
||||
35
.gitignore
vendored
35
.gitignore
vendored
@@ -1,11 +1,28 @@
|
||||
/vendor/
|
||||
/bin/
|
||||
/demo/
|
||||
/assets/js/*.js
|
||||
/node_modules/
|
||||
/.tx/
|
||||
/.idea/
|
||||
# OS
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
.directory
|
||||
|
||||
coverage.xml
|
||||
# IDEs
|
||||
.buildpath
|
||||
.project
|
||||
.settings/
|
||||
.build/
|
||||
.external*/
|
||||
.idea/
|
||||
nbproject/
|
||||
|
||||
# composer related
|
||||
vendor/
|
||||
composer.lock
|
||||
npm-debug.log
|
||||
|
||||
# build
|
||||
build/
|
||||
build.properties
|
||||
|
||||
# Translations
|
||||
.tx
|
||||
|
||||
# NPM
|
||||
node_modules
|
||||
package-lock.json
|
||||
|
||||
23
.travis.yml
23
.travis.yml
@@ -1,29 +1,28 @@
|
||||
language: php
|
||||
|
||||
php:
|
||||
- "5.4"
|
||||
- "5.5"
|
||||
- "5.6"
|
||||
- "7.0"
|
||||
- "nightly"
|
||||
- "7.1"
|
||||
- "7.2"
|
||||
|
||||
env:
|
||||
- CONTAO_VERSION=~3.5.1
|
||||
- CONTAO_VERSION=contao/core-bundle ~4.4.0
|
||||
|
||||
matrix:
|
||||
exclude:
|
||||
|
||||
sudo: false
|
||||
|
||||
install:
|
||||
- travis_retry composer self-update && composer --version
|
||||
- travis_retry composer require contao/core $CONTAO_VERSION --no-update
|
||||
- travis_retry composer require $CONTAO_VERSION --no-update
|
||||
- travis_retry composer update --prefer-dist --no-interaction
|
||||
|
||||
script: ant -keep-going
|
||||
|
||||
matrix:
|
||||
allow_failures:
|
||||
- php: "7.0"
|
||||
- php: "nightly"
|
||||
|
||||
# Hack to make things work again - we can not use a shallow repository.
|
||||
git:
|
||||
depth: 2147483647
|
||||
|
||||
cache:
|
||||
directories:
|
||||
- vendor
|
||||
|
||||
66
CHANGELOG.md
Normal file
66
CHANGELOG.md
Normal file
@@ -0,0 +1,66 @@
|
||||
|
||||
# Changelog
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## 3.0.4 - 2018-10-08
|
||||
|
||||
[Full Changelog](https://github.com/netzmacht/contao-leaflet-maps/compare/3.0.3...3.0.4)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fix broken content element attributes (Missing class and custom id).
|
||||
|
||||
## 3.0.3 - 2018-09-18
|
||||
|
||||
[Full Changelog](https://github.com/netzmacht/contao-leaflet-maps/compare/3.0.2...3.0.3)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Make alias generator services public for Contao 4.6/Symfony 4.0 compatibility.
|
||||
|
||||
## 3.0.2 - 2018-08-23
|
||||
|
||||
[Full Changelog](https://github.com/netzmacht/contao-leaflet-maps/compare/3.0.1...3.0.2)
|
||||
|
||||
- Run composer require checker and solve issues.
|
||||
|
||||
## 3.0.1 - 2018-06-20
|
||||
|
||||
[Full Changelog](https://github.com/netzmacht/contao-leaflet-maps/compare/3.0.0...3.0.1)
|
||||
|
||||
- Fix broken dynamic bbox related data loading (#57)
|
||||
|
||||
## 3.0.0 - 2018-01-05
|
||||
|
||||
[Full Changelog](https://github.com/netzmacht/contao-leaflet-maps/compare/3.0.0-beta1...3.0.0)
|
||||
|
||||
- Make hook/dca listener services public
|
||||
|
||||
## 3.0.0-beta1 - 2017-11-15
|
||||
|
||||
[Full Changelog](https://github.com/netzmacht/contao-leaflet-maps/compare/3.0.0-alpha2...3.0.0-beta1)
|
||||
|
||||
Enhancements
|
||||
|
||||
- Updated translations
|
||||
|
||||
Bugfixes
|
||||
|
||||
- Broken service definitions
|
||||
- Broken file layer id
|
||||
|
||||
## 3.0.0-alpha1 - 2017-10-19
|
||||
|
||||
[Full Changelog](https://github.com/netzmacht/contao-leaflet-maps/compare/3.0.0-alpha1...3.0.0-alpha2)
|
||||
|
||||
Implemented enhancements
|
||||
|
||||
- Refactor to a more service oriented architecture
|
||||
- Use a proper template for the map templates (Customize templates has to be adjusted!)
|
||||
- New file layer for gpx,kml,wkt,topojson,geojson files added
|
||||
- Bypass filesystem cache in debug mode
|
||||
- Changelog added
|
||||
27
README.md
27
README.md
@@ -17,17 +17,19 @@ Features
|
||||
|
||||
- Define Leaflet maps with multiple layers.
|
||||
- Manage map controls
|
||||
- [Layers control](http://leafletjs.com/reference-1.0.0.html#control-layers)
|
||||
- [Zoom control](http://leafletjs.com/reference-1.0.0.html#control-zoom)
|
||||
- [Scale control]((http://leafletjs.com/reference-1.0.0.html#control-scale))
|
||||
- [Attribution control](http://leafletjs.com/reference-1.0.0.html#control-attribution)
|
||||
- [Layers control](http://leafletjs.com/reference-1.2.0.html#control-layers)
|
||||
- [Zoom control](http://leafletjs.com/reference-1.2.0.html#control-zoom)
|
||||
- [Scale control]((http://leafletjs.com/reference-1.2.0.html#control-scale))
|
||||
- [Attribution control](http://leafletjs.com/reference-1.2.0.html#control-attribution)
|
||||
- [Loading control](https://github.com/ebrelsford/Leaflet.loading)
|
||||
- Manage layers
|
||||
- [Tile provider](https://github.com/leaflet-extras/leaflet-providers)
|
||||
- Markers - A set of [markers](http://leafletjs.com/reference-1.0.0.html#marker)
|
||||
- Vectors - A set of [vectors](http://leafletjs.com/reference-1.0.0.html)
|
||||
- Markers - A set of [markers](http://leafletjs.com/reference-1.2.0.html#marker)
|
||||
- Vectors - A set of [vectors](http://leafletjs.com/reference-1.2.0.html)
|
||||
- Groups - A group of layers
|
||||
- Reference - A link to another layer
|
||||
- [Markercluster](https://github.com/Leaflet/Leaflet.markercluster)
|
||||
- External geo data files (gpx,kml,wkt,geojson,topojson)
|
||||
- Manage marker icons
|
||||
- Manage vector styles
|
||||
- Optional deferred ajax loading of layer data
|
||||
@@ -36,11 +38,22 @@ Features
|
||||
- Autoloading of required assets.
|
||||
- [Layer for MetaModels](https://github.com/netzmacht/contao-leaflet-metamodels)
|
||||
|
||||
Changelog
|
||||
---------
|
||||
|
||||
View the [CHANGELOG.md](CHANGELOG.md) for the latest changes.
|
||||
|
||||
Requirements
|
||||
------------
|
||||
|
||||
- Contao 4.4
|
||||
- PHP >= 7.0
|
||||
|
||||
Install
|
||||
-------
|
||||
|
||||
```
|
||||
$ php composer.phar require netzmacht/contao-leaflet-maps:~2.0
|
||||
$ php composer.phar require netzmacht/contao-leaflet-maps:~3.0
|
||||
```
|
||||
|
||||
Credits
|
||||
|
||||
File diff suppressed because one or more lines are too long
4
build.default.properties
Normal file
4
build.default.properties
Normal file
@@ -0,0 +1,4 @@
|
||||
phpcs.standard = ${basedir}/vendor/phpcq/coding-standard/phpcs/PhpCodeQuality/ruleset.xml
|
||||
phpmd.ruleset = ${basedir}/vendor/phpcq/coding-standard/phpmd/ruleset.xml
|
||||
phpcs.excluded = src/Bundle/Resources/contao/languages,src/Bundle/Resources/public/js
|
||||
phpcpd.excluded = contao
|
||||
@@ -1,2 +0,0 @@
|
||||
|
||||
phpcq.bin.dir = ${basedir}/bin
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project name="netzmacht/contao-leaflet-maps" default="build">
|
||||
<!-- import the main build system -->
|
||||
<import file="vendor/netzmacht/contao-build-tools/netzmacht.main.xml" />
|
||||
<import file="vendor/phpcq/phpcq/phpcq.main.xml" />
|
||||
</project>
|
||||
|
||||
137
composer.json
137
composer.json
@@ -1,66 +1,77 @@
|
||||
{
|
||||
"name":"netzmacht/contao-leaflet-maps",
|
||||
"description":"Contao Leaflet maps integration",
|
||||
"keywords":["contao", "maps", "leaflet"],
|
||||
"type":"contao-module",
|
||||
"license":"LGPL-3.0+",
|
||||
"authors":[
|
||||
{
|
||||
"name":"David Molineus",
|
||||
"email":"mail@netzmacht.de",
|
||||
"homepage":"http://www.netzmacht.de",
|
||||
"role":"Project leader"
|
||||
}
|
||||
],
|
||||
"support":{
|
||||
"email":"mail@netzmacht.de",
|
||||
"issues":"https://github.com/netzmacht/contao-leaflet-maps/issues",
|
||||
"source":"https://github.com/netzmacht/contao-leaflet-maps"
|
||||
},
|
||||
"require":{
|
||||
"php":">=5.4",
|
||||
"contao/core":"^3.5",
|
||||
"contao-community-alliance/dependency-container":"^1.0",
|
||||
"contao-community-alliance/event-dispatcher":"^1.0",
|
||||
"netzmacht/contao-leaflet-libraries": "^1.0",
|
||||
"netzmacht/php-javascript-builder": "^1.0",
|
||||
"netzmacht/php-leaflet": "^1.0",
|
||||
"netzmacht/contao-toolkit":"^2.0",
|
||||
"contao-community-alliance/meta-palettes": "^1.5",
|
||||
"menatwork/contao-multicolumnwizard": "^3.2",
|
||||
"doctrine/cache": "^1.0"
|
||||
},
|
||||
"require-dev":{
|
||||
"netzmacht/contao-build-tools": "^1.1"
|
||||
},
|
||||
"autoload": {
|
||||
"psr-0": {
|
||||
"Netzmacht\\Contao\\Leaflet\\": "src/"
|
||||
}
|
||||
},
|
||||
"config": {
|
||||
"bin-dir": "bin"
|
||||
},
|
||||
"prefer-stable": true,
|
||||
"minimum-stability": "dev",
|
||||
"extra":{
|
||||
"branch-alias": {
|
||||
"dev-master": "2.0.x-dev",
|
||||
"dev-develop": "2.1.x-dev",
|
||||
"dev-support/0.7.x": "0.7.x-dev"
|
||||
},
|
||||
"contao": {
|
||||
"sources":{
|
||||
"module": "system/modules/leaflet",
|
||||
"assets/maps": "assets/leaflet/maps",
|
||||
"assets/js": "assets/leaflet/js"
|
||||
},
|
||||
"transifex": {
|
||||
"project": "contao-leaflet-maps",
|
||||
"prefix": "core-",
|
||||
"languages_cto": "module/languages",
|
||||
"languages_tx": ".tx"
|
||||
}
|
||||
}
|
||||
"name": "netzmacht/contao-leaflet-maps",
|
||||
"description": "Contao Leaflet maps integration",
|
||||
"keywords": [
|
||||
"contao",
|
||||
"maps",
|
||||
"leaflet"
|
||||
],
|
||||
"type": "contao-bundle",
|
||||
"license": "LGPL-3.0-or-later",
|
||||
"authors": [
|
||||
{
|
||||
"name": "David Molineus",
|
||||
"email": "mail@netzmacht.de",
|
||||
"homepage": "https://netzmacht.de",
|
||||
"role": "Developer"
|
||||
}
|
||||
],
|
||||
"support": {
|
||||
"email": "mail@netzmacht.de",
|
||||
"issues": "https://github.com/netzmacht/contao-leaflet-maps/issues",
|
||||
"source": "https://github.com/netzmacht/contao-leaflet-maps"
|
||||
},
|
||||
"require": {
|
||||
"php": ">=7.0",
|
||||
"ext-json": "*",
|
||||
"ext-pdo": "*",
|
||||
"contao/core-bundle": "~4.4",
|
||||
"doctrine/dbal": "^2.5",
|
||||
"symfony/config": "~3.3 || ~4.0",
|
||||
"symfony/event-dispatcher": "~3.3 || ~4.0",
|
||||
"symfony/dependency-injection": "~3.3 || ~4.0",
|
||||
"symfony/filesystem": "~3.3 || ~4.0",
|
||||
"symfony/http-kernel": "~3.3 || ~4.0",
|
||||
"symfony/translation": "~3.3 || ~4.0",
|
||||
"symfony/templating": "~3.3 || ~4.0",
|
||||
"netzmacht/contao-leaflet-libraries": "^1.0",
|
||||
"netzmacht/contao-leaflet-geocode-widget": "^1.2",
|
||||
"netzmacht/php-javascript-builder": "^1.0",
|
||||
"netzmacht/php-leaflet": "^1.0.2",
|
||||
"netzmacht/contao-toolkit": "~3.0",
|
||||
"contao-community-alliance/meta-palettes": "^2.0 || ^1.5",
|
||||
"menatwork/contao-multicolumnwizard": "^3.2",
|
||||
"doctrine/cache": "^1.0"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpcq/all-tasks": "^1.2",
|
||||
"contao/manager-plugin": "^2.1",
|
||||
"phpstan/phpstan": "^0.10.3"
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
"Netzmacht\\Contao\\Leaflet\\": "src/"
|
||||
}
|
||||
},
|
||||
"autoload-dev": {
|
||||
"files": [
|
||||
"vendor/phpcq/autoload-validation/hacks/contao-hack.php"
|
||||
]
|
||||
},
|
||||
"extra": {
|
||||
"branch-alias": {
|
||||
"dev-master": "3.0.x-dev",
|
||||
"dev-develop": "3.1.x-dev",
|
||||
"dev-support/2.x": "2.0.x-dev"
|
||||
},
|
||||
"contao-manager-plugin": "Netzmacht\\Contao\\Leaflet\\Bundle\\ContaoManager\\Plugin",
|
||||
"contao": {
|
||||
"transifex": {
|
||||
"project": "contao-leaflet-maps",
|
||||
"prefix": "core-",
|
||||
"languages_cto": "src/Bundle/Resources/contao/languages",
|
||||
"languages_tx": ".tx"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,8 +5,8 @@ var concat = require('gulp-concat');
|
||||
|
||||
var paths = {
|
||||
minified: 'contao-leaflet.js',
|
||||
scripts: ['assets/maps/src/*.js'],
|
||||
dest: 'assets/maps'
|
||||
scripts: ['js/*.js'],
|
||||
dest: 'src/Bundle/Resources/public/js'
|
||||
};
|
||||
|
||||
gulp.task('clear', function() {
|
||||
|
||||
@@ -3,9 +3,7 @@
|
||||
*
|
||||
* This class provides some helpers for loading layer data manages maps and map objects.
|
||||
*/
|
||||
L.Contao = L.Class.extend({
|
||||
includes: L.Mixin.Events,
|
||||
|
||||
L.Contao = L.Evented.extend({
|
||||
statics: {
|
||||
/**
|
||||
* Contao extension attribution.
|
||||
@@ -126,8 +124,22 @@ L.Contao = L.Class.extend({
|
||||
* @param map Pass a map object so that the data loading events are passed to the map.
|
||||
*/
|
||||
load: function (hash, type, options, customLayer, map) {
|
||||
var url = this.createRequestUrl(hash, map),
|
||||
layer = omnivore[type](url, options, customLayer);
|
||||
var url = this.createRequestUrl(hash, map);
|
||||
|
||||
return this.loadFile(url, type, options, customLayer, map);
|
||||
},
|
||||
|
||||
/**
|
||||
* Load data from an url into a layer using omnivore.
|
||||
*
|
||||
* @param url A file url.
|
||||
* @param type The response content format.
|
||||
* @param options Parser options
|
||||
* @param customLayer optional custom layer.
|
||||
* @param map Pass a map object so that the data loading events are passed to the map.
|
||||
*/
|
||||
loadFile: function (url, type, options, customLayer, map) {
|
||||
var layer = omnivore[type](url, options, customLayer);
|
||||
|
||||
if (map) {
|
||||
// Required because Control.Loading tries to get _leafet_id which is created here.
|
||||
@@ -1,28 +0,0 @@
|
||||
|
||||
.tl_listing_container.tree_view ul > li.tl_file {
|
||||
background: url('./../img/fol-placeholder.gif') no-repeat 6px 1px;
|
||||
}
|
||||
|
||||
.tl_listing_container.tree_view ul > li.tl_file > div {
|
||||
line-height: 18px;
|
||||
}
|
||||
|
||||
.tl_listing_container.tree_view > ul > li.tl_file {
|
||||
padding-left: 26px;
|
||||
}
|
||||
|
||||
.tl_listing_container.tree_view ul > li.parent > ul {
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
.tl_listing_container.tree_view ul > li > .tl_left > a {
|
||||
margin-left: -20px;
|
||||
}
|
||||
|
||||
.tl_listing_container.tree_view ul[class="level_1"] li.tl_file > .tl_left {
|
||||
padding-left: 20px !important;
|
||||
}
|
||||
|
||||
.long .tl_text_2 {
|
||||
width: 325px;
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
requires[] = 'toolkit'
|
||||
@@ -1,21 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
TemplateLoader::addFiles(
|
||||
array(
|
||||
'ce_leaflet_map' => 'system/modules/leaflet/templates',
|
||||
'leaflet_map_js' => 'system/modules/leaflet/templates',
|
||||
'leaflet_map_html' => 'system/modules/leaflet/templates',
|
||||
'mod_leaflet_map' => 'system/modules/leaflet/templates',
|
||||
'be_leaflet_geocode' => 'system/modules/leaflet/templates',
|
||||
'be_leaflet_about' => 'system/modules/leaflet/templates',
|
||||
)
|
||||
);
|
||||
@@ -1,382 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Backend module.
|
||||
*/
|
||||
array_insert(
|
||||
$GLOBALS['BE_MOD'],
|
||||
1,
|
||||
array(
|
||||
'leaflet' => array
|
||||
(
|
||||
'leaflet_map' => array
|
||||
(
|
||||
'tables' => array
|
||||
(
|
||||
'tl_leaflet_map',
|
||||
'tl_leaflet_control',
|
||||
),
|
||||
'icon' => 'system/modules/leaflet/assets/img/map.png',
|
||||
'stylesheet' => 'system/modules/leaflet/assets/css/backend.css',
|
||||
),
|
||||
'leaflet_layer' => array
|
||||
(
|
||||
'tables' => array
|
||||
(
|
||||
'tl_leaflet_layer',
|
||||
'tl_leaflet_marker',
|
||||
'tl_leaflet_vector',
|
||||
'tl_leaflet_icon',
|
||||
'tl_leaflet_style',
|
||||
'tl_leaflet_popup',
|
||||
),
|
||||
'icon' => 'system/modules/leaflet/assets/img/layers.png',
|
||||
'stylesheet' => 'system/modules/leaflet/assets/css/backend.css',
|
||||
),
|
||||
'leaflet_about' => array
|
||||
(
|
||||
'callback' => 'Netzmacht\Contao\Leaflet\Backend\About',
|
||||
'icon' => 'system/modules/leaflet/assets/img/about.png',
|
||||
'stylesheet' => 'system/modules/leaflet/assets/css/about.css',
|
||||
)
|
||||
)
|
||||
)
|
||||
);
|
||||
|
||||
|
||||
/*
|
||||
* Content elements.
|
||||
*/
|
||||
$GLOBALS['TL_CTE']['includes']['leaflet'] = 'Netzmacht\Contao\Toolkit\Component\ContentElement\ContentElementDecorator';
|
||||
|
||||
|
||||
/*
|
||||
* Frontend modules
|
||||
*/
|
||||
$GLOBALS['FE_MOD']['includes']['leaflet'] = 'Netzmacht\Contao\Toolkit\Component\Module\ModuleDecorator';
|
||||
|
||||
|
||||
/*
|
||||
* Models.
|
||||
*/
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_control'] = 'Netzmacht\Contao\Leaflet\Model\ControlModel';
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_icon'] = 'Netzmacht\Contao\Leaflet\Model\IconModel';
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_layer'] = 'Netzmacht\Contao\Leaflet\Model\LayerModel';
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_map'] = 'Netzmacht\Contao\Leaflet\Model\MapModel';
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_marker'] = 'Netzmacht\Contao\Leaflet\Model\MarkerModel';
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_popup'] = 'Netzmacht\Contao\Leaflet\Model\PopupModel';
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_style'] = 'Netzmacht\Contao\Leaflet\Model\StyleModel';
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_vector'] = 'Netzmacht\Contao\Leaflet\Model\VectorModel';
|
||||
|
||||
|
||||
/*
|
||||
* Leaflet mappers.
|
||||
*
|
||||
* Mappers do the translations between the database models and the leaflet definition.
|
||||
*/
|
||||
$GLOBALS['LEAFLET_MAPPERS'] = array();
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\MapMapper';
|
||||
|
||||
// Layer mappers.
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Layer\TileLayerMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = function () {
|
||||
return new \Netzmacht\Contao\Leaflet\Mapper\Layer\ProviderLayerMapper(
|
||||
$GLOBALS['LEAFLET_TILE_PROVIDERS']
|
||||
);
|
||||
};
|
||||
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Layer\MarkersLayerMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Layer\GroupLayerMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Layer\VectorsLayerMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Layer\ReferenceLayerMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Layer\OverpassLayerMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = function () {
|
||||
return new \Netzmacht\Contao\Leaflet\Mapper\Layer\MarkerClusterLayerMapper(
|
||||
$GLOBALS['container'][\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::MAP_ASSETS]
|
||||
);
|
||||
};
|
||||
|
||||
// Control mappers.
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Control\ZoomControlMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Control\ScaleControlMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Control\LayersControlMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Control\AttributionControlMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Control\LoadingControlMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Control\FullscreenControlMapper';
|
||||
|
||||
// Vector mappers.
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = function () {
|
||||
return new Netzmacht\Contao\Leaflet\Mapper\Vector\PolylineMapper(
|
||||
$GLOBALS['container'][\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::FRONTEND_VALUE_FILTER]
|
||||
);
|
||||
};
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = function () {
|
||||
return new Netzmacht\Contao\Leaflet\Mapper\Vector\MultiPolylineMapper(
|
||||
$GLOBALS['container'][\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::FRONTEND_VALUE_FILTER]
|
||||
);
|
||||
};
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = function () {
|
||||
return new Netzmacht\Contao\Leaflet\Mapper\Vector\PolygonMapper(
|
||||
$GLOBALS['container'][\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::FRONTEND_VALUE_FILTER]
|
||||
);
|
||||
};
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = function () {
|
||||
return new Netzmacht\Contao\Leaflet\Mapper\Vector\MultiPolygonMapper(
|
||||
$GLOBALS['container'][\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::FRONTEND_VALUE_FILTER]
|
||||
);
|
||||
};
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = function () {
|
||||
return new Netzmacht\Contao\Leaflet\Mapper\Vector\CircleMapper(
|
||||
$GLOBALS['container'][\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::FRONTEND_VALUE_FILTER]
|
||||
);
|
||||
};
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = function () {
|
||||
return new Netzmacht\Contao\Leaflet\Mapper\Vector\CircleMarkerMapper(
|
||||
$GLOBALS['container'][\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::FRONTEND_VALUE_FILTER]
|
||||
);
|
||||
};
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = function () {
|
||||
return new Netzmacht\Contao\Leaflet\Mapper\Vector\RectangleMapper(
|
||||
$GLOBALS['container'][\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::FRONTEND_VALUE_FILTER]
|
||||
);
|
||||
};
|
||||
|
||||
// Miscellaneous mappers.
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\UI\PopupMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Type\ImageIconMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Type\DivIconMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Type\ExtraMarkersIconMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = 'Netzmacht\Contao\Leaflet\Mapper\Style\FixedStyleMapper';
|
||||
$GLOBALS['LEAFLET_MAPPERS'][] = function () {
|
||||
return new \Netzmacht\Contao\Leaflet\Mapper\UI\MarkerMapper(
|
||||
$GLOBALS['container'][\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::FRONTEND_VALUE_FILTER]
|
||||
);
|
||||
};
|
||||
|
||||
/*
|
||||
* Leaflet encoders.
|
||||
*
|
||||
* The encoders transforms the definitions into javascript. The encoders has to be an implementation of the
|
||||
* EventDispatcherInterface of the event dispatcher.
|
||||
*
|
||||
* You can define the encoders using the syntax of the cca event dispatcher implementation.
|
||||
*
|
||||
* @see https://github.com/contao-community-alliance/event-dispatcher#event-subscriber-per-configuration
|
||||
*/
|
||||
$GLOBALS['LEAFLET_ENCODERS'] = array();
|
||||
$GLOBALS['LEAFLET_ENCODERS'][] = 'Netzmacht\LeafletPHP\Encoder\MapEncoder';
|
||||
$GLOBALS['LEAFLET_ENCODERS'][] = 'Netzmacht\LeafletPHP\Encoder\ControlEncoder';
|
||||
$GLOBALS['LEAFLET_ENCODERS'][] = 'Netzmacht\LeafletPHP\Encoder\GroupEncoder';
|
||||
$GLOBALS['LEAFLET_ENCODERS'][] = 'Netzmacht\LeafletPHP\Encoder\RasterEncoder';
|
||||
$GLOBALS['LEAFLET_ENCODERS'][] = 'Netzmacht\LeafletPHP\Encoder\VectorEncoder';
|
||||
$GLOBALS['LEAFLET_ENCODERS'][] = 'Netzmacht\LeafletPHP\Encoder\UIEncoder';
|
||||
$GLOBALS['LEAFLET_ENCODERS'][] = 'Netzmacht\LeafletPHP\Encoder\TypeEncoder';
|
||||
$GLOBALS['LEAFLET_ENCODERS'][] = 'Netzmacht\Contao\Leaflet\Subscriber\EncoderSubscriber';
|
||||
|
||||
/*
|
||||
* Leaflet layer types.
|
||||
*
|
||||
* The type is used for the database driven definitions.
|
||||
*/
|
||||
$GLOBALS['LEAFLET_LAYERS'] = array
|
||||
(
|
||||
'provider' => array
|
||||
(
|
||||
'children' => false,
|
||||
'icon' => 'system/modules/leaflet/assets/img/provider.png',
|
||||
'label' => function ($row, $label) {
|
||||
if (!empty($GLOBALS['TL_LANG']['leaflet_provider'][$row['tile_provider']][0])) {
|
||||
$provider = $GLOBALS['TL_LANG']['leaflet_provider'][$row['tile_provider']][0];
|
||||
} else {
|
||||
$provider = $row['tile_provider'];
|
||||
}
|
||||
|
||||
$label .= sprintf('<span class="tl_gray"> (%s)</span>', $provider);
|
||||
|
||||
return $label;
|
||||
}
|
||||
),
|
||||
'group' => array
|
||||
(
|
||||
'children' => true,
|
||||
'icon' => 'system/modules/leaflet/assets/img/group.png',
|
||||
),
|
||||
'markers' => array
|
||||
(
|
||||
'children' => false,
|
||||
'icon' => 'system/modules/leaflet/assets/img/markers.png',
|
||||
'markers' => true,
|
||||
'boundsMode' => array(
|
||||
'extend' => true,
|
||||
'fit' => 'deferred'
|
||||
),
|
||||
'label' => function ($row, $label) {
|
||||
$count = \Netzmacht\Contao\Leaflet\Model\MarkerModel::countBy('pid', $row['id']);
|
||||
$label .= sprintf(
|
||||
'<span class="tl_gray"> (%s %s)</span>',
|
||||
$count,
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_layer']['countEntries']
|
||||
);
|
||||
|
||||
return $label;
|
||||
}
|
||||
),
|
||||
'vectors' => array
|
||||
(
|
||||
'children' => false,
|
||||
'icon' => 'system/modules/leaflet/assets/img/vectors.png',
|
||||
'vectors' => true,
|
||||
'boundsMode' => array(
|
||||
'extend' => true,
|
||||
),
|
||||
'label' => function ($row, $label) {
|
||||
$count = \Netzmacht\Contao\Leaflet\Model\VectorModel::countBy('pid', $row['id']);
|
||||
$label .= sprintf(
|
||||
'<span class="tl_gray"> (%s %s)</span>',
|
||||
$count,
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_layer']['countEntries']
|
||||
);
|
||||
|
||||
return $label;
|
||||
}
|
||||
),
|
||||
'reference' => array
|
||||
(
|
||||
'children' => false,
|
||||
'icon' => 'system/modules/leaflet/assets/img/reference.png',
|
||||
'label' => function ($row, $label) {
|
||||
$reference = \Netzmacht\Contao\Leaflet\Model\LayerModel::findByPk($row['reference']);
|
||||
|
||||
if ($reference) {
|
||||
$label .= '<span class="tl_gray"> (' . $reference->title . ')</span>';
|
||||
}
|
||||
|
||||
return $label;
|
||||
}
|
||||
),
|
||||
'markercluster' => array
|
||||
(
|
||||
'children' => true,
|
||||
'icon' => 'system/modules/leaflet/assets/img/cluster.png',
|
||||
),
|
||||
'tile' => array(
|
||||
'children' => false,
|
||||
'icon' => 'system/modules/leaflet/assets/img/tile.png',
|
||||
),
|
||||
'overpass' => array(
|
||||
'children' => false,
|
||||
'icon' => 'system/modules/leaflet/assets/img/overpass.png',
|
||||
'label' => function ($row, $label) {
|
||||
if ($row['overpassQuery']) {
|
||||
$label .= '<span class="tl_gray"> ' . \StringUtil::substr($row['overpassQuery'], 50) . '</span>';
|
||||
}
|
||||
|
||||
return $label;
|
||||
},
|
||||
'boundsMode' => array(
|
||||
'extend' => true,
|
||||
'fit' => true,
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
/*
|
||||
* leaflet controls.
|
||||
*
|
||||
* Supported leaflet control types. Register your type for the database driven definition here.
|
||||
*/
|
||||
$GLOBALS['LEAFLET_CONTROLS'] = array('zoom', 'layers', 'scale', 'attribution', 'loading', 'fullscreen');
|
||||
|
||||
|
||||
/*
|
||||
* Leaflet icons.
|
||||
*
|
||||
* Supported leaflet icon types. Register you type for the database driven definition here.
|
||||
*/
|
||||
$GLOBALS['LEAFLET_ICONS'] = array('image', 'div', 'extra');
|
||||
|
||||
|
||||
/*
|
||||
* The style concept is not part of the LeafletJS library. Styles are extracted from the Path options. Instead
|
||||
* of defining the style for every vector again, manage them at one place.
|
||||
*
|
||||
* The goal is to provide different style strategies. For instance a random style chooser, one which uses a color
|
||||
* range and so one.
|
||||
*/
|
||||
$GLOBALS['LEAFLET_STYLES'] = array('fixed');
|
||||
|
||||
/*
|
||||
* Leaflet vectors.
|
||||
*
|
||||
* Supported leaflet vector types. Register you type for the database driven definition here.
|
||||
*/
|
||||
$GLOBALS['LEAFLET_VECTORS'] = array
|
||||
(
|
||||
'polyline',
|
||||
'polygon',
|
||||
'multiPolyline',
|
||||
'multiPolygon',
|
||||
'rectangle',
|
||||
'circle',
|
||||
'circleMarker'
|
||||
);
|
||||
|
||||
|
||||
/*
|
||||
* Leaflet tile layer providers.
|
||||
*/
|
||||
require_once TL_ROOT . '/system/modules/leaflet/config/leaflet_providers.php';
|
||||
|
||||
/*
|
||||
* Leaflet assets.
|
||||
*
|
||||
* The leaflet definition are aware of the required javascript libraries. Register the assets so that they are
|
||||
* loaded automatically.
|
||||
*
|
||||
* Each entry is an array of 2 values. The first is the resource. The second is a type. Supported types are:
|
||||
* - url: An valid url.
|
||||
* - file: An file path relative to the Contao Root.
|
||||
* - source: Inline css/javascript.
|
||||
*
|
||||
* You don't have to define it as array if you simply add a file. Do not add |static and or media type flag to it.
|
||||
* It's getting added by default if not being in debug mode.
|
||||
*/
|
||||
if (!isset($GLOBALS['LEAFLET_LIBRARIES'])) {
|
||||
$GLOBALS['LEAFLET_LIBRARIES'] = array();
|
||||
}
|
||||
|
||||
/*
|
||||
* When creating a GeoJSON feature of a map object a feature.properties.model object is passed.
|
||||
* Define the properties you always want to set.
|
||||
*
|
||||
* For more control you can subscribe the ConvertToGeoJsonEvent.
|
||||
*
|
||||
* The entry can be a string or an array. If an array is passed, the 2nd value is the type. Following types
|
||||
* are supported.
|
||||
* - array: Use deserialize before adding the value
|
||||
* - file: Thread value a uuid and find the path.
|
||||
* - files: Thread values as a list of file uuids and get an array of paths.
|
||||
*/
|
||||
$GLOBALS['LEAFLET_FEATURE_MODEL_PROPERTIES']['tl_leaflet_marker'][] = 'id';
|
||||
$GLOBALS['LEAFLET_FEATURE_MODEL_PROPERTIES']['tl_leaflet_marker'][] = 'title';
|
||||
$GLOBALS['LEAFLET_FEATURE_MODEL_PROPERTIES']['tl_leaflet_marker'][] = 'alias';
|
||||
|
||||
$GLOBALS['LEAFLET_FEATURE_MODEL_PROPERTIES']['tl_leaflet_vector'][] = 'id';
|
||||
$GLOBALS['LEAFLET_FEATURE_MODEL_PROPERTIES']['tl_leaflet_vector'][] = 'title';
|
||||
$GLOBALS['LEAFLET_FEATURE_MODEL_PROPERTIES']['tl_leaflet_vector'][] = 'alias';
|
||||
|
||||
|
||||
/*
|
||||
* Filters can be passed to a data request to get only specific data from a layer.
|
||||
*/
|
||||
$GLOBALS['LEAFLET_FILTERS']['bbox'] = 'Netzmacht\Contao\Leaflet\Filter\BboxFilter';
|
||||
$GLOBALS['LEAFLET_FILTERS']['distance'] = 'Netzmacht\Contao\Leaflet\Filter\DistanceFilter';
|
||||
@@ -1,15 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
return array(
|
||||
$GLOBALS['container']['leaflet.boot.subscriber'],
|
||||
'Netzmacht\Contao\Leaflet\Subscriber\HashSubscriber',
|
||||
$GLOBALS['container']['leaflet.subscriber.geo-json'],
|
||||
);
|
||||
@@ -1,213 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
return [
|
||||
'administration',
|
||||
'advertising',
|
||||
'alm',
|
||||
'animal_boarding',
|
||||
'animal_breeding',
|
||||
'animal_shelter',
|
||||
'architect_office',
|
||||
'arts_centre',
|
||||
'artwork',
|
||||
'atm',
|
||||
'audiologist',
|
||||
'baby_hatch',
|
||||
'bank',
|
||||
'bar',
|
||||
'bbq',
|
||||
'bench',
|
||||
'bicycle_parking',
|
||||
'bicycle_rental',
|
||||
'bicycle_repair_station',
|
||||
'bicycle_trailer_sharing',
|
||||
'biergarten',
|
||||
'bikeshed',
|
||||
'boat_rental',
|
||||
'boat_sharing',
|
||||
'boat_storage',
|
||||
'brothel',
|
||||
'bts',
|
||||
'bureau_de_change',
|
||||
'bus_station',
|
||||
'cafe',
|
||||
'canoe_hire',
|
||||
'car_rental',
|
||||
'car_repair',
|
||||
'car_sharing',
|
||||
'car_wash',
|
||||
'casino',
|
||||
'charging_station',
|
||||
'childcare',
|
||||
'cinema',
|
||||
'citymap_post',
|
||||
'clinic',
|
||||
'clock',
|
||||
'club',
|
||||
'coast_guard',
|
||||
'coast_radar_station',
|
||||
'college',
|
||||
'community_center',
|
||||
'community_centre',
|
||||
'compressed_air',
|
||||
'concert_hall',
|
||||
'conference_centre',
|
||||
'courthouse',
|
||||
'coworking_space',
|
||||
'crematorium',
|
||||
'crucifix',
|
||||
'crypt',
|
||||
'customs',
|
||||
'dancing_school',
|
||||
'dead_pub',
|
||||
'dentist',
|
||||
'disused',
|
||||
'dive_centre',
|
||||
'doctors',
|
||||
'dog_bin',
|
||||
'dog_waste_bin',
|
||||
'dojo',
|
||||
'drinking_water',
|
||||
'_driving_school',
|
||||
'education',
|
||||
'embassy',
|
||||
'emergency_phone',
|
||||
'emergency_service',
|
||||
'events_venue',
|
||||
'ev_charging',
|
||||
'exhibition_centre',
|
||||
'fast_food',
|
||||
'ferry_terminal',
|
||||
'festival_grounds',
|
||||
'financial_advice',
|
||||
'fire_hydrant',
|
||||
'fire_station',
|
||||
'first_aid',
|
||||
'fish_spa',
|
||||
'food_court',
|
||||
'fountain',
|
||||
'fuel',
|
||||
'gambling',
|
||||
'game_feeding',
|
||||
'garages',
|
||||
'grave_yard',
|
||||
'grit_bin',
|
||||
'harbourmaster',
|
||||
'hospice',
|
||||
'hospital',
|
||||
'hotel',
|
||||
'hunting_stand',
|
||||
'ice_cream',
|
||||
'internet_cafe',
|
||||
'jobcentre',
|
||||
'kindergarten',
|
||||
'kiosk',
|
||||
'kitchen',
|
||||
'Kneippbecken',
|
||||
'kneipp_water_cure',
|
||||
'language_school',
|
||||
'lavoir',
|
||||
'library',
|
||||
'lifeboat_station',
|
||||
'life_ring',
|
||||
'loading_dock',
|
||||
'love_hotel',
|
||||
'marae',
|
||||
'marketplace',
|
||||
'milk_dispenser',
|
||||
'mobile_library',
|
||||
'monastery',
|
||||
'money_transfer',
|
||||
'mortuary',
|
||||
'motorcycle_parking',
|
||||
'motorcycle_rental',
|
||||
'music_school',
|
||||
'music_venue',
|
||||
'nameplate',
|
||||
'nightclub',
|
||||
'nursery',
|
||||
'nursing_home',
|
||||
'park',
|
||||
'parking',
|
||||
'parking_entrance',
|
||||
'parking_space',
|
||||
'pharmacy',
|
||||
'photo_booth',
|
||||
'place_of_worship',
|
||||
'planetarium',
|
||||
'police',
|
||||
'post_box',
|
||||
'post_office',
|
||||
'preschool',
|
||||
'printer',
|
||||
'prison',
|
||||
'prison_camp',
|
||||
'proposed',
|
||||
'pub',
|
||||
'public_bath',
|
||||
'public_bookcase',
|
||||
'public_building',
|
||||
'public_hall',
|
||||
'ranger_station',
|
||||
'recycling',
|
||||
'refugee_housing',
|
||||
'register_office',
|
||||
'rescue_box',
|
||||
'rescue_station',
|
||||
'research_institute',
|
||||
'restaurant',
|
||||
'retirement_home',
|
||||
'sanatorium',
|
||||
'sanitary_dump_station',
|
||||
'sauna',
|
||||
'school',
|
||||
'scout_hut',
|
||||
'shelter',
|
||||
'shop',
|
||||
'shower',
|
||||
'ski_school',
|
||||
'smoking_area',
|
||||
'social_centre',
|
||||
'social_facility',
|
||||
'spa',
|
||||
'stables',
|
||||
'stripclub',
|
||||
'studio',
|
||||
'swimming_pool',
|
||||
'swingerclub',
|
||||
'table',
|
||||
'taxi',
|
||||
'telephone',
|
||||
'theatre',
|
||||
'ticket_booth',
|
||||
'ticket_validator',
|
||||
'toilets',
|
||||
'townhall',
|
||||
'trolley_bay',
|
||||
'university',
|
||||
'vacuum_cleaner',
|
||||
'vehicle_inspection',
|
||||
'vending_machine',
|
||||
'veterinary',
|
||||
'vivarium',
|
||||
'wash_center',
|
||||
'waste_basket',
|
||||
'waste_disposal',
|
||||
'waste_transfer_station',
|
||||
'water',
|
||||
'watering_place',
|
||||
'water_point',
|
||||
'weighbridge',
|
||||
'winery',
|
||||
'yacht_club',
|
||||
'youth_centre',
|
||||
];
|
||||
@@ -1,181 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
* Support all providers and variants which are supported by leaflet-providers.
|
||||
* See https://github.com/leaflet-extras/leaflet-providers/blob/master/leaflet-providers.js
|
||||
*/
|
||||
|
||||
$GLOBALS['LEAFLET_TILE_PROVIDERS'] = array
|
||||
(
|
||||
'OpenStreetMap' => array
|
||||
(
|
||||
'variants' => array('Mapnik', 'BlackAndWhite', 'DE', 'France', 'HOT', 'BZH'),
|
||||
),
|
||||
'OpenSeaMap' => array(),
|
||||
'OpenTopoMap' => array(),
|
||||
'Thunderforest' => array
|
||||
(
|
||||
'variants' => array(
|
||||
'OpenCycleMap',
|
||||
'Transport',
|
||||
'TransportDark',
|
||||
'SpinalMap',
|
||||
'Landscape',
|
||||
'Outdoors',
|
||||
'Pioneer'
|
||||
)
|
||||
),
|
||||
'OpenMapSurfer' => array
|
||||
(
|
||||
'variants' => array('Roads', 'AdminBounds', 'Grayscale')
|
||||
),
|
||||
'Hydda' => array(
|
||||
'variants' => array('Full', 'Base', 'RoadsAndLabels')
|
||||
),
|
||||
'MapBox' => array(
|
||||
'class' => 'Netzmacht\LeafletPHP\Plugins\LeafletProviders\MapBoxProvider',
|
||||
'options' => array(
|
||||
'key' => 'tile_provider_key'
|
||||
),
|
||||
),
|
||||
'Stamen' => array(
|
||||
'variants' => array(
|
||||
'Toner',
|
||||
'TonerBackground',
|
||||
'TonerHybrid',
|
||||
'TonerLines',
|
||||
'TonerLabels',
|
||||
'TonerLite',
|
||||
'Terrain',
|
||||
'TerrainBackground',
|
||||
'TopOSMRelief',
|
||||
'TopOSMFeatures',
|
||||
'Watercolor'
|
||||
)
|
||||
),
|
||||
'Esri' => array(
|
||||
'variants' => array(
|
||||
'WorldStreetMap',
|
||||
'DeLorme',
|
||||
'WorldTopoMap',
|
||||
'WorldImagery',
|
||||
'WorldTerrain',
|
||||
'WorldShadedRelief',
|
||||
'WorldPhysical',
|
||||
'OceanBasemap',
|
||||
'NatGeoWorldMap',
|
||||
'WorldGrayCanvas'
|
||||
)
|
||||
),
|
||||
'OpenWeatherMap' => array(
|
||||
'variants' => array(
|
||||
'Clouds',
|
||||
'CloudsClassic',
|
||||
'Precipitation',
|
||||
'PrecipitationClassic',
|
||||
'Rain',
|
||||
'RainClassic',
|
||||
'Pressure',
|
||||
'PressureContour',
|
||||
'Wind',
|
||||
'Temperature',
|
||||
'Snow'
|
||||
)
|
||||
),
|
||||
'HERE' => array(
|
||||
'variants' => array(
|
||||
'normalDay',
|
||||
'normalDayCustom',
|
||||
'normalDayGrey',
|
||||
'normalDayMobile',
|
||||
'normalDayGreyMobile',
|
||||
'normalDayTransit',
|
||||
'normalDayTransitMobile',
|
||||
'normalNight',
|
||||
'normalNightMobile',
|
||||
'normalNightGrey',
|
||||
'normalNightGreyMobile',
|
||||
'basicMap',
|
||||
'mapLabels',
|
||||
'trafficFlow',
|
||||
'carnavDayGrey',
|
||||
'hybridDay',
|
||||
'hybridDayMobile',
|
||||
'pedestrianDay',
|
||||
'pedestrianNight',
|
||||
'satelliteDay',
|
||||
'terrainDay',
|
||||
'terrainDayMobile',
|
||||
),
|
||||
'options' => array(
|
||||
'appId' => 'tile_provider_key',
|
||||
'appCode' => 'tile_provider_code',
|
||||
),
|
||||
'fields' => array('tile_provider_key', 'tile_provider_code'),
|
||||
'class' => 'Netzmacht\LeafletPHP\Plugins\LeafletProviders\HereProvider',
|
||||
),
|
||||
'JusticeMap' => array(
|
||||
'variants' => array(
|
||||
'income',
|
||||
'americanIndian',
|
||||
'asian',
|
||||
'black',
|
||||
'hispanic',
|
||||
'multi',
|
||||
'nonWhite',
|
||||
'white',
|
||||
'plurality'
|
||||
)
|
||||
),
|
||||
'FreeMapSK' => array(),
|
||||
'MtbMap' => array(),
|
||||
'CartoDB' => array(
|
||||
'variants' => array(
|
||||
'Positron',
|
||||
'PositronNoLabels',
|
||||
'PositronOnlyLabels',
|
||||
'DarkMatter',
|
||||
'DarkMatterNoLabels',
|
||||
'DarkMatterOnlyLabels',
|
||||
)
|
||||
),
|
||||
'HikeBike' => array(
|
||||
'variants' => array(
|
||||
'HikeBike',
|
||||
'HillShading',
|
||||
)
|
||||
),
|
||||
'BasemapAT' => array(
|
||||
'variants' => array(
|
||||
'basemap',
|
||||
'grau',
|
||||
'overlay',
|
||||
'highdpi',
|
||||
'orthofoto',
|
||||
)
|
||||
),
|
||||
'nlmaps' => array(
|
||||
'variants' => array('standaard', 'pastel', 'grijs', 'luchtfoto')
|
||||
),
|
||||
'NASAGIBS' => array(
|
||||
'variants' => array(
|
||||
'ModisTerraTrueColorCR',
|
||||
'ModisTerraBands367CR',
|
||||
'ViirsEarthAtNight2012',
|
||||
'ModisTerraLSTDay',
|
||||
'ModisTerraSnowCover',
|
||||
'ModisTerraAOD',
|
||||
'ModisTerraChlorophyll',
|
||||
)
|
||||
),
|
||||
'NLS' => array()
|
||||
);
|
||||
@@ -1,361 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
use Doctrine\Common\Cache\ArrayCache;
|
||||
use Doctrine\Common\Cache\FilesystemCache;
|
||||
use Interop\Container\ContainerInterface;
|
||||
use Netzmacht\Contao\Leaflet\Alias\DefaultAliasFilter;
|
||||
use Netzmacht\Contao\Leaflet\Boot;
|
||||
use Netzmacht\Contao\Leaflet\ContaoAssets;
|
||||
use Netzmacht\Contao\Leaflet\Dca\ControlCallbacks;
|
||||
use Netzmacht\Contao\Leaflet\Dca\FrontendIntegration;
|
||||
use Netzmacht\Contao\Leaflet\Dca\LayerCallbacks;
|
||||
use Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks;
|
||||
use Netzmacht\Contao\Leaflet\Dca\MapCallbacks;
|
||||
use Netzmacht\Contao\Leaflet\Dca\Validator;
|
||||
use Netzmacht\Contao\Leaflet\Dca\VectorCallbacks;
|
||||
use Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices;
|
||||
use Netzmacht\Contao\Leaflet\Frontend\MapElement;
|
||||
use Netzmacht\Contao\Leaflet\Frontend\MapModule;
|
||||
use Netzmacht\Contao\Leaflet\Frontend\ValueFilter;
|
||||
use Netzmacht\Contao\Leaflet\Mapper\DefinitionMapper;
|
||||
use Netzmacht\Contao\Leaflet\MapProvider;
|
||||
use Netzmacht\Contao\Leaflet\Subscriber\BootSubscriber;
|
||||
use Netzmacht\Contao\Leaflet\Subscriber\GeoJsonSubscriber;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Filter\ExistingAliasFilter;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Filter\SlugifyFilter;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Filter\SuffixFilter;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\FilterBasedAliasGenerator;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Validator\UniqueDatabaseValueValidator;
|
||||
use Netzmacht\Contao\Toolkit\DependencyInjection\Services;
|
||||
use Netzmacht\JavascriptBuilder\Builder;
|
||||
use Netzmacht\JavascriptBuilder\Encoder\ChainEncoder;
|
||||
use Netzmacht\JavascriptBuilder\Encoder\JavascriptEncoder;
|
||||
use Netzmacht\JavascriptBuilder\Encoder\MultipleObjectsEncoder;
|
||||
use Netzmacht\JavascriptBuilder\Flags;
|
||||
use Netzmacht\JavascriptBuilder\Output;
|
||||
use Netzmacht\JavascriptBuilder\Symfony\EventDispatchingEncoder;
|
||||
use Netzmacht\LeafletPHP\Leaflet;
|
||||
use Symfony\Component\EventDispatcher\EventDispatcher;
|
||||
|
||||
/** @var \Pimple $container */
|
||||
global $container;
|
||||
|
||||
/*
|
||||
* Leaflet map provider is a simply api entry to to get the leaflet map from the database.
|
||||
*/
|
||||
$container[LeafletServices::MAP_PROVIDER] = $container->share(function ($container) {
|
||||
return new MapProvider(
|
||||
$container[LeafletServices::DEFINITION_MAPPER],
|
||||
$container[LeafletServices::DEFINITION_BUILDER],
|
||||
$container[Services::EVENT_DISPATCHER],
|
||||
$container[Services::INPUT],
|
||||
$container[LeafletServices::MAP_ASSETS],
|
||||
$container[LeafletServices::CACHE],
|
||||
$GLOBALS['LEAFLET_FILTERS'],
|
||||
\Config::get('debugMode') || \Config::get('displayErrors')
|
||||
);
|
||||
});
|
||||
|
||||
/*
|
||||
* Contao assets handler. Loads Leaflet assets as contao (static) assets.
|
||||
*/
|
||||
$container[LeafletServices::MAP_ASSETS] = $container->share(function ($container) {
|
||||
return new ContaoAssets($container[Services::ASSETS_MANAGER]);
|
||||
});
|
||||
|
||||
/*
|
||||
* The leaflet boot.
|
||||
*/
|
||||
$container[LeafletServices::BOOT] = $container->share(function ($container) {
|
||||
return new Boot($container[Services::EVENT_DISPATCHER]);
|
||||
});
|
||||
|
||||
$container['leaflet.boot.subscriber'] = $container->share(function ($container) {
|
||||
return new BootSubscriber(
|
||||
$container[LeafletServices::MAP_ASSETS],
|
||||
$GLOBALS['LEAFLET_MAPPERS'],
|
||||
$GLOBALS['LEAFLET_ENCODERS'],
|
||||
$GLOBALS['LEAFLET_LIBRARIES']
|
||||
);
|
||||
});
|
||||
|
||||
|
||||
/*
|
||||
* The definition mapper.
|
||||
*/
|
||||
$container[LeafletServices::DEFINITION_MAPPER] = $container->share(function ($container) {
|
||||
/** @var Boot $boot */
|
||||
$boot = $container[LeafletServices::BOOT];
|
||||
$mapper = new DefinitionMapper($container[Services::EVENT_DISPATCHER]);
|
||||
|
||||
return $boot->initializeDefinitionMapper($mapper);
|
||||
});
|
||||
|
||||
|
||||
/*
|
||||
* The local event dispatcher is used for the leaflet javascript encoding system.
|
||||
*/
|
||||
$container[LeafletServices::DEFINITION_BUILDER_EVENT_DISPATCHER] = $container->share(function ($container) {
|
||||
/** @var Boot $boot */
|
||||
$boot = $container[LeafletServices::BOOT];
|
||||
$dispatcher = new EventDispatcher();
|
||||
|
||||
return $boot->initializeEventDispatcher($dispatcher);
|
||||
});
|
||||
|
||||
/*
|
||||
* The javascript encoder factory being used for building the map javascript.
|
||||
*/
|
||||
$container[LeafletServices::DEFINITION_ENCODER_FACTORY] = function ($container) {
|
||||
$dispatcher = $container[LeafletServices::DEFINITION_BUILDER_EVENT_DISPATCHER];
|
||||
|
||||
return function (Output $output) use ($dispatcher) {
|
||||
$encoder = new ChainEncoder();
|
||||
$encoder
|
||||
->register(new MultipleObjectsEncoder())
|
||||
->register(new EventDispatchingEncoder($dispatcher))
|
||||
->register(new JavascriptEncoder($output, JSON_UNESCAPED_SLASHES));
|
||||
|
||||
return $encoder;
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
* The leaflet builder transforms the definition to javascript.
|
||||
*/
|
||||
$container[LeafletServices::DEFINITION_BUILDER] = $container->share(function($container) {
|
||||
/** @var Boot $boot */
|
||||
$boot = $container[LeafletServices::BOOT];
|
||||
$dispatcher = $container[LeafletServices::DEFINITION_BUILDER_EVENT_DISPATCHER];
|
||||
$factory = $container[LeafletServices::DEFINITION_ENCODER_FACTORY];
|
||||
|
||||
$builder = new Builder($factory);
|
||||
$leaflet = new Leaflet($builder, $dispatcher, array(), JSON_UNESCAPED_SLASHES ^ Flags::BUILD_STACK);
|
||||
|
||||
return $boot->initializeLeafletBuilder($leaflet);
|
||||
});
|
||||
|
||||
$container[LeafletServices::FRONTEND_VALUE_FILTER] = $container->share(function($container) {
|
||||
return new ValueFilter($container[Services::INSERT_TAG_REPLACER]);
|
||||
});
|
||||
|
||||
/**
|
||||
* Internal used leaflet cache.
|
||||
*
|
||||
* @var Cache
|
||||
*/
|
||||
$container[LeafletServices::CACHE] = $container->share(
|
||||
function ($container) {
|
||||
if ($container[Services::PRODUCTION_MODE]) {
|
||||
return new FilesystemCache(TL_ROOT . '/system/cache/leaflet');
|
||||
} else {
|
||||
return new ArrayCache();
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
/**
|
||||
* Leaflet alias generator.
|
||||
*
|
||||
* @return \Netzmacht\Contao\Toolkit\Data\Alias\AliasGenerator
|
||||
*/
|
||||
$container[LeafletServices::ALIAS_GENERATOR] = $container->share(
|
||||
function ($container) {
|
||||
return function ($dataContainerName, $aliasField, $fields) use ($container) {
|
||||
$filters = [
|
||||
new ExistingAliasFilter(),
|
||||
new SlugifyFilter($fields),
|
||||
new DefaultAliasFilter($dataContainerName),
|
||||
new SuffixFilter(),
|
||||
];
|
||||
|
||||
$validator = new UniqueDatabaseValueValidator(
|
||||
$container[Services::DATABASE_CONNECTION],
|
||||
$dataContainerName,
|
||||
$aliasField
|
||||
);
|
||||
|
||||
return new FilterBasedAliasGenerator($filters, $validator, $dataContainerName, $aliasField, '_');
|
||||
};
|
||||
}
|
||||
);
|
||||
|
||||
/**
|
||||
* Leaflet alias generator.
|
||||
*
|
||||
* @return \Netzmacht\Contao\Toolkit\Data\Alias\AliasGenerator
|
||||
*/
|
||||
$container[LeafletServices::PARENT_ALIAS_GENERATOR] = $container->share(
|
||||
function ($container) {
|
||||
return function ($dataContainerName, $aliasField, $fields) use ($container) {
|
||||
$filters = [
|
||||
new ExistingAliasFilter(),
|
||||
new SlugifyFilter($fields),
|
||||
new DefaultAliasFilter($dataContainerName),
|
||||
new SuffixFilter(),
|
||||
];
|
||||
|
||||
$validator = new UniqueDatabaseValueValidator(
|
||||
$container[Services::DATABASE_CONNECTION],
|
||||
$dataContainerName,
|
||||
$aliasField,
|
||||
['pid']
|
||||
);
|
||||
|
||||
return new FilterBasedAliasGenerator($filters, $validator, $dataContainerName, $aliasField, '_');
|
||||
};
|
||||
}
|
||||
);
|
||||
|
||||
/**
|
||||
* Callback helper class for tl_leaflet_map.
|
||||
*
|
||||
* @return MapCallbacks
|
||||
*/
|
||||
$container['leaflet.dca.map-callbacks'] = $container->share(
|
||||
function ($container) {
|
||||
return new MapCallbacks(
|
||||
$container[Services::DCA_MANAGER],
|
||||
$container[Services::DATABASE_CONNECTION]
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
/**
|
||||
* Callback helper class for tl_leaflet_layer.
|
||||
*
|
||||
* @return LayerCallbacks
|
||||
*/
|
||||
$container['leaflet.dca.layer-callbacks'] = $container->share(
|
||||
function ($container) {
|
||||
return new LayerCallbacks(
|
||||
$container[Services::DCA_MANAGER],
|
||||
$container[Services::DATABASE_CONNECTION],
|
||||
$container[Services::TRANSLATOR],
|
||||
$GLOBALS['LEAFLET_LAYERS'],
|
||||
$GLOBALS['LEAFLET_TILE_PROVIDERS'],
|
||||
require TL_ROOT . '/system/modules/leaflet/config/leaflet_amenities.php'
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
/**
|
||||
* Callback helper class for tl_leaflet_control.
|
||||
*
|
||||
* @return ControlCallbacks
|
||||
*/
|
||||
$container['leaflet.dca.control-callbacks'] = $container->share(
|
||||
function ($container) {
|
||||
return new ControlCallbacks(
|
||||
$container[Services::DCA_MANAGER],
|
||||
$container[Services::DATABASE_CONNECTION]
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
/**
|
||||
* Callback helper class for tl_leaflet_control.
|
||||
*
|
||||
* @return ControlCallbacks
|
||||
*/
|
||||
$container['leaflet.dca.vector-callbacks'] = $container->share(
|
||||
function ($container) {
|
||||
return new VectorCallbacks($container[Services::DCA_MANAGER]);
|
||||
}
|
||||
);
|
||||
|
||||
/**
|
||||
* Callback helper class for frontend integration.
|
||||
*
|
||||
* @return FrontendIntegration
|
||||
*/
|
||||
$container['leaflet.dca.frontend-integration'] = $container->share(
|
||||
function ($container) {
|
||||
return new FrontendIntegration(
|
||||
$container[Services::TRANSLATOR]
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
/**
|
||||
* Common callback helpers.
|
||||
*
|
||||
* @return LeafletCallbacks
|
||||
*/
|
||||
$container['leaflet.dca.common'] = $container->share(
|
||||
function ($container) {
|
||||
return new LeafletCallbacks(
|
||||
$container[Services::FILE_SYSTEM]
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
/**
|
||||
* Validator helper class.
|
||||
*
|
||||
* @return Validator
|
||||
*/
|
||||
$container['leaflet.dca.validator'] = $container->share(
|
||||
function ($container) {
|
||||
return new Validator(
|
||||
$container[Services::TRANSLATOR]
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
/**
|
||||
* Component factory for content element.
|
||||
*
|
||||
* @param ContentModel $model Content model.
|
||||
* @param string $column Template section.
|
||||
* @param ContainerInterface $container Container.
|
||||
*
|
||||
* @return MapElement
|
||||
*/
|
||||
$container[Services::CONTENT_ELEMENTS_MAP]['leaflet'] = function ($model, $column, ContainerInterface $container) {
|
||||
return new MapElement(
|
||||
$model,
|
||||
$container->get(Services::TEMPLATE_FACTORY),
|
||||
$container->get(Services::TRANSLATOR),
|
||||
$container->get(LeafletServices::MAP_PROVIDER),
|
||||
$container->get(Services::INPUT),
|
||||
$container->get(Services::CONFIG),
|
||||
$column
|
||||
);
|
||||
};
|
||||
|
||||
/**
|
||||
* Component factory for frontend module.
|
||||
*
|
||||
* @param ModuleModel $model Module model.
|
||||
* @param string $column Template section.
|
||||
* @param ContainerInterface $container Container.
|
||||
*
|
||||
* @return MapModule
|
||||
*/
|
||||
$container[Services::MODULES_MAP]['leaflet'] = function ($model, $column, ContainerInterface $container) {
|
||||
return new MapModule(
|
||||
$model,
|
||||
$container->get(Services::TEMPLATE_FACTORY),
|
||||
$container->get(Services::TRANSLATOR),
|
||||
$container->get(LeafletServices::MAP_PROVIDER),
|
||||
$container->get(Services::INPUT),
|
||||
$container->get(Services::CONFIG),
|
||||
$column
|
||||
);
|
||||
};
|
||||
|
||||
$container['leaflet.subscriber.geo-json'] = $container->share(function () {
|
||||
return new GeoJsonSubscriber(
|
||||
$GLOBALS['LEAFLET_FEATURE_MODEL_PROPERTIES']
|
||||
);
|
||||
});
|
||||
@@ -1,79 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_content']['metapalettes']['leaflet'] = array(
|
||||
'type' => array('type', 'headline'),
|
||||
'leaflet' => array('leaflet_map', 'leaflet_mapId', 'leaflet_width', 'leaflet_height', 'leaflet_template'),
|
||||
'templates' => array(':hide', 'customTpl'),
|
||||
'protected' => array(':hide', 'protected'),
|
||||
'expert' => array(':hide', 'guests', 'cssID', 'space'),
|
||||
'invisible' => array(':hide', 'invisible', 'start', 'start')
|
||||
);
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_content']['fields']['leaflet_map'] = array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_content']['leaflet_map'],
|
||||
'inputType' => 'select',
|
||||
'exclude' => true,
|
||||
'options_callback' => \Netzmacht\Contao\Leaflet\Dca\FrontendIntegration::callback('getMaps'),
|
||||
'wizard' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\FrontendIntegration::callback('getEditMapLink'),
|
||||
),
|
||||
'eval' => array(
|
||||
'tl_class' => 'w50 wizard',
|
||||
'chosen' => true,
|
||||
),
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
);
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_content']['fields']['leaflet_mapId'] = array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_content']['leaflet_mapId'],
|
||||
'inputType' => 'text',
|
||||
'exclude' => true,
|
||||
'eval' => array(
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'maxlength' => 16,
|
||||
),
|
||||
'sql' => "varchar(16) NOT NULL default ''"
|
||||
);
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_content']['fields']['leaflet_width'] = array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_content']['leaflet_width'],
|
||||
'inputType' => 'inputUnit',
|
||||
'options' => array('px', '%', 'em', 'pt', 'pc', 'in', 'cm', 'mm'),
|
||||
'search' => false,
|
||||
'exclude' => true,
|
||||
'eval' => array('rgxp' => 'digit', 'tl_class' => 'clr w50'),
|
||||
'sql' => "varchar(64) NOT NULL default ''"
|
||||
);
|
||||
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_content']['fields']['leaflet_height'] = array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_content']['leaflet_height'],
|
||||
'inputType' => 'inputUnit',
|
||||
'options' => array('px', '%', 'em', 'pt', 'pc', 'in', 'cm', 'mm'),
|
||||
'search' => false,
|
||||
'exclude' => true,
|
||||
'eval' => array('rgxp' => 'digit', 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(64) NOT NULL default ''"
|
||||
);
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_content']['fields']['leaflet_template'] = array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_content']['leaflet_template'],
|
||||
'inputType' => 'select',
|
||||
'exclude' => true,
|
||||
'options_callback' => \Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::getTemplates('leaflet_map_js'),
|
||||
'eval' => array(
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
),
|
||||
'sql' => "varchar(64) NOT NULL default ''"
|
||||
);
|
||||
@@ -1,439 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
\Controller::loadLanguageFile('leaflet');
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_control'] = array
|
||||
(
|
||||
'config' => array(
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'ptable' => 'tl_leaflet_map',
|
||||
'sql' => array
|
||||
(
|
||||
'keys' => array
|
||||
(
|
||||
'id' => 'primary',
|
||||
'pid' => 'index',
|
||||
)
|
||||
),
|
||||
'onsubmit_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
|
||||
// List
|
||||
'list' => array
|
||||
(
|
||||
'sorting' => array
|
||||
(
|
||||
'mode' => 4,
|
||||
'fields' => array('sorting'),
|
||||
'headerFields' => array('title'),
|
||||
'flag' => 1,
|
||||
'sorting' => 2,
|
||||
'panelLayout' => 'filter,sort;search,limit',
|
||||
'child_record_callback' => \Netzmacht\Contao\Leaflet\Dca\ControlCallbacks::callback('generateRow'),
|
||||
),
|
||||
'label' => array
|
||||
(
|
||||
'fields' => array('title'),
|
||||
'format' => '%s',
|
||||
),
|
||||
'global_operations' => array
|
||||
(
|
||||
'all' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"'
|
||||
)
|
||||
),
|
||||
'operations' => array
|
||||
(
|
||||
'edit' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'header.gif'
|
||||
),
|
||||
'copy' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif'
|
||||
),
|
||||
'delete' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm'] . '\'))return false;Backend.getScrollOffset()"'
|
||||
),
|
||||
'toggle' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();return AjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => \Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::stateButton('tl_leaflet_control', 'active')
|
||||
),
|
||||
'show' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif'
|
||||
)
|
||||
)
|
||||
),
|
||||
|
||||
'palettes' => array(
|
||||
'__selector__' => array('type')
|
||||
),
|
||||
|
||||
'metapalettes' => array(
|
||||
'default' => array(
|
||||
'name' => array('title', 'alias', 'type', 'position'),
|
||||
'config' => array(),
|
||||
'active' => array('active'),
|
||||
),
|
||||
'zoom extends default' => array(
|
||||
'config' => array('zoomInText', 'zoomOutText', 'zoomInTitle', 'zoomOutTitle'),
|
||||
),
|
||||
'layers extends default' => array(
|
||||
'config' => array('layers', 'collapsed', 'autoZIndex')
|
||||
),
|
||||
'scale extends default' => array(
|
||||
'config' => array('maxWidth', 'metric', 'imperial', 'updateWhenIdle')
|
||||
),
|
||||
'attribution extends default' => array(
|
||||
'config' => array('attributions', 'prefix', 'disableDefault')
|
||||
),
|
||||
'loading extends default' => array(
|
||||
'config' => array('separate', 'zoomControl', 'spinjs')
|
||||
),
|
||||
'fullscreen extends default' => array(
|
||||
'config' => array('buttonTitle', 'separate', 'simulateFullScreen')
|
||||
),
|
||||
),
|
||||
|
||||
'metasubpalettes' => array(
|
||||
'spinjs' => array('spin')
|
||||
),
|
||||
|
||||
'fields' => array
|
||||
(
|
||||
'id' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL auto_increment"
|
||||
),
|
||||
'pid' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'tstamp' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'sorting' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
'sorting' => true,
|
||||
),
|
||||
'title' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'sorting' => true,
|
||||
'search' => true,
|
||||
'flag' => 1,
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'alias' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::aliasGenerator(
|
||||
'tl_leaflet_control',
|
||||
'alias',
|
||||
['title'],
|
||||
\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::PARENT_ALIAS_GENERATOR
|
||||
),
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateAlias'),
|
||||
),
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'nullIfEmpty' => true),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'type' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['type'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'eval' => array(
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'submitOnChange' => true,
|
||||
'chosen' => true,
|
||||
'helpwizard' => true,
|
||||
),
|
||||
'options' => $GLOBALS['LEAFLET_CONTROLS'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['leaflet_control'],
|
||||
'sql' => "varchar(32) NOT NULL default ''"
|
||||
),
|
||||
'position' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['position'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'options' => array('topleft', 'topright', 'bottomleft', 'bottomright'),
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_control'],
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50', 'helpwizard' => true),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'active' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['active'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
'zoomInText' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['zoomInText'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'zoomOutText' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['zoomInText'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'zoomInTitle' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['zoomInTitle'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'zoomOutTitle' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['zoomOutTitle'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'collapsed' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['collapsed'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => '1',
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'autoZIndex' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['autoZIndex'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => '1',
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'layers' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['layers'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'multiColumnWizard',
|
||||
'load_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\ControlCallbacks::callback('loadLayerRelations'),
|
||||
),
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\ControlCallbacks::callback('saveLayerRelations'),
|
||||
),
|
||||
'eval' => array
|
||||
(
|
||||
'tl_class' => 'clr',
|
||||
'columnFields' => array
|
||||
(
|
||||
'layer' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['layer'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => \Netzmacht\Contao\Leaflet\Dca\ControlCallbacks::callback('getLayers'),
|
||||
'eval' => array(
|
||||
'style' => 'width: 300px',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true
|
||||
),
|
||||
),
|
||||
'mode' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['layerMode'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options' => array('base', 'overlay'),
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_control'],
|
||||
'eval' => array(
|
||||
'style' => 'width: 200px',
|
||||
'helpwizard' => true,
|
||||
),
|
||||
),
|
||||
)
|
||||
),
|
||||
'sql' => "mediumblob NULL"
|
||||
),
|
||||
'maxWidth' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['maxWidth'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 100,
|
||||
'eval' => array('tl_class' => 'w50', 'rgxp' => 'digit'),
|
||||
'sql' => "int(5) NOT NULL default '100'"
|
||||
),
|
||||
'metric' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['metric'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => '1',
|
||||
'eval' => array('tl_class' => 'w50 clr'),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'imperial' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['imperial'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => '1',
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'updateWhenIdle' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['updateWhenIdle'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'prefix' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['prefix'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'attributions' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['attributions'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'listWizard',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'clr', 'allowHtml' => true),
|
||||
'sql' => "mediumblob NULL"
|
||||
),
|
||||
'separate' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['separate'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => array('tl_class' => 'w50 m12'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'zoomControl' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['zoomControl'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => \Netzmacht\Contao\Leaflet\Dca\ControlCallbacks::callback('getZoomControls'),
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_control'],
|
||||
'eval' => array(
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true
|
||||
),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'spinjs' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['spinjs'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'spin' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['spin'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => array(
|
||||
'style' => 'height:60px',
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|json',
|
||||
'tl_class' => 'clr'
|
||||
),
|
||||
'sql' => "mediumtext NULL"
|
||||
),
|
||||
'simulateFullScreen' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['simulateFullScreen'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => array('tl_class' => 'w50 m12'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'buttonTitle' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['buttonTitle'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'disableDefault' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['disableDefault'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50 m12'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
),
|
||||
);
|
||||
@@ -1,52 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_control_layer'] = array
|
||||
(
|
||||
'config' => array(
|
||||
'dataContainer' => 'Table',
|
||||
'sql' => array
|
||||
(
|
||||
'keys' => array
|
||||
(
|
||||
'id' => 'primary',
|
||||
'cid,lid' => 'unique',
|
||||
)
|
||||
)
|
||||
),
|
||||
|
||||
'fields' => array
|
||||
(
|
||||
'id' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL auto_increment"
|
||||
),
|
||||
'tstamp' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'sorting' => array(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'cid' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'lid' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'mode' => array
|
||||
(
|
||||
'sql' => "varchar(16) NOT NULL default ''"
|
||||
)
|
||||
)
|
||||
);
|
||||
@@ -1,449 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_icon'] = array
|
||||
(
|
||||
'config' => array(
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'sql' => array
|
||||
(
|
||||
'keys' => array
|
||||
(
|
||||
'id' => 'primary',
|
||||
'alias' => 'unique',
|
||||
)
|
||||
),
|
||||
'onsubmit_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
|
||||
'list' => array
|
||||
(
|
||||
'sorting' => array
|
||||
(
|
||||
'mode' => 1,
|
||||
'fields' => array('title'),
|
||||
'flag' => 1,
|
||||
'panelLayout' => 'limit',
|
||||
'headerFields' => array('title', 'type'),
|
||||
),
|
||||
'label' => array
|
||||
(
|
||||
'fields' => array('title', 'type'),
|
||||
'format' => '%s <span class="tl_gray">[%s]</span>',
|
||||
),
|
||||
'global_operations' => array
|
||||
(
|
||||
'layers' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['layersBtn'],
|
||||
'href' => 'table=tl_leaflet_layer',
|
||||
'icon' => 'system/modules/leaflet/assets/img/layers.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"'
|
||||
),
|
||||
'styles' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['styles'],
|
||||
'href' => 'table=tl_leaflet_style',
|
||||
'icon' => 'system/modules/leaflet/assets/img/style.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"'
|
||||
),
|
||||
'popups' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['popups'],
|
||||
'href' => 'table=tl_leaflet_popup',
|
||||
'icon' => 'system/modules/leaflet/assets/img/popup.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"'
|
||||
),
|
||||
'all' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"'
|
||||
),
|
||||
),
|
||||
'operations' => array
|
||||
(
|
||||
'edit' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'edit.gif'
|
||||
),
|
||||
'copy' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif'
|
||||
),
|
||||
'delete' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm'] . '\'))return false;Backend.getScrollOffset()"'
|
||||
),
|
||||
'toggle' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();return AjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => \Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::stateButton(
|
||||
'tl_leaflet_icon',
|
||||
'active'
|
||||
)
|
||||
),
|
||||
'show' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif'
|
||||
)
|
||||
)
|
||||
),
|
||||
|
||||
'palettes' => array(
|
||||
'__selector__' => array('type')
|
||||
),
|
||||
|
||||
'metapalettes' => array(
|
||||
'default' => array(
|
||||
'title' => array('title', 'alias', 'type'),
|
||||
),
|
||||
'image extends default' => array(
|
||||
'config' => array(
|
||||
'iconImage',
|
||||
'iconRetinaImage',
|
||||
'iconAnchor',
|
||||
'popupAnchor',
|
||||
'className',
|
||||
),
|
||||
'shadow' => array(
|
||||
'shadowImage',
|
||||
'shadowRetinaImage',
|
||||
'shadowAnchor',
|
||||
),
|
||||
'active' => array(
|
||||
'active'
|
||||
)
|
||||
),
|
||||
|
||||
'div extends default' => array(
|
||||
'config' => array(
|
||||
'html',
|
||||
'iconSize',
|
||||
'iconAnchor',
|
||||
'popupAnchor',
|
||||
'className',
|
||||
),
|
||||
'active' => array(
|
||||
'active'
|
||||
)
|
||||
),
|
||||
|
||||
'extra extends default' => array(
|
||||
'config' => array(
|
||||
'icon',
|
||||
'prefix',
|
||||
'shape',
|
||||
'markerColor',
|
||||
'number',
|
||||
'iconColor',
|
||||
),
|
||||
'active' => array(
|
||||
'active'
|
||||
)
|
||||
),
|
||||
),
|
||||
|
||||
'fields' => array
|
||||
(
|
||||
'id' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL auto_increment"
|
||||
),
|
||||
'tstamp' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'title' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'alias' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::aliasGenerator(
|
||||
'tl_leaflet_icon',
|
||||
'alias',
|
||||
['title'],
|
||||
\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::ALIAS_GENERATOR
|
||||
),
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateAlias'),
|
||||
),
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'type' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['type'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'eval' => array(
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'submitOnChange' => true,
|
||||
'chosen' => true,
|
||||
),
|
||||
'options' => &$GLOBALS['LEAFLET_ICONS'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['leaflet_icon'],
|
||||
'sql' => "varchar(32) NOT NULL default ''"
|
||||
),
|
||||
'active' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['active'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
'iconImage' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconImage'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'fileTree',
|
||||
'eval' => array(
|
||||
'filesOnly' => true,
|
||||
'fieldType' => 'radio',
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'clr',
|
||||
'extensions' => 'gif,png,svg,jpg'
|
||||
),
|
||||
'sql' => "binary(16) NULL",
|
||||
),
|
||||
'iconRetinaImage' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconRetinaImage'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'fileTree',
|
||||
'eval' => array(
|
||||
'filesOnly' => true,
|
||||
'fieldType' => 'radio',
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'clr',
|
||||
'extensions' => 'gif,png,svg,jpg'
|
||||
),
|
||||
'sql' => "binary(16) NULL",
|
||||
),
|
||||
'shadowImage' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['shadowImage'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'fileTree',
|
||||
'eval' => array(
|
||||
'filesOnly' => true,
|
||||
'fieldType' => 'radio',
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'clr',
|
||||
'extensions' => 'gif,png,svg,jpg'
|
||||
),
|
||||
'sql' => "binary(16) NULL",
|
||||
),
|
||||
'shadowRetinaImage' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['shadowRetinaImage'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'fileTree',
|
||||
'eval' => array(
|
||||
'filesOnly' => true,
|
||||
'fieldType' => 'radio',
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'clr',
|
||||
'extensions' => 'gif,png,svg,jpg'
|
||||
),
|
||||
'sql' => "binary(16) NULL",
|
||||
),
|
||||
'iconAnchor' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconAnchor'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateCoordinates')
|
||||
),
|
||||
'eval' => array(
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'shadowAnchor' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['shadowAnchor'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateCoordinates')
|
||||
),
|
||||
'eval' => array(
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'popupAnchor' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['popupAnchor'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateCoordinates')
|
||||
),
|
||||
'eval' => array(
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'className' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['className'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 64, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(64) NOT NULL default ''"
|
||||
),
|
||||
'iconSize' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconSize'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array(
|
||||
'maxlength' => 64,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
),
|
||||
'sql' => "varchar(64) NULL"
|
||||
),
|
||||
'html' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['html'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => array(
|
||||
'style' => 'height:60px',
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|html',
|
||||
'tl_class' => 'clr'
|
||||
),
|
||||
'sql' => "mediumtext NULL"
|
||||
),
|
||||
'icon' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['icon'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array(
|
||||
'maxlength' => 64,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
),
|
||||
'sql' => "varchar(64) NULL"
|
||||
),
|
||||
'prefix' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['prefix'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array(
|
||||
'maxlength' => 64,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
),
|
||||
'sql' => "varchar(64) NULL"
|
||||
),
|
||||
'shape' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['shape'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'default' => 'circle',
|
||||
'options' => ['circle', 'square', 'star', 'penta'],
|
||||
'eval' => array(
|
||||
'tl_class' => 'w50',
|
||||
),
|
||||
'sql' => "varchar(64) NULL"
|
||||
),
|
||||
'iconColor' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconColor'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'wizard' => array(
|
||||
\Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::colorPicker()
|
||||
),
|
||||
'eval' => array(
|
||||
'maxlength' => 64,
|
||||
'tl_class' => 'w50 wizard',
|
||||
'nullIfEmpty' => true,
|
||||
),
|
||||
'sql' => "varchar(16) NULL"
|
||||
),
|
||||
'markerColor' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['markerColor'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'default' => 'circle',
|
||||
'options' => [
|
||||
'blue',
|
||||
'red',
|
||||
'orange-dark',
|
||||
'orange',
|
||||
'yellow',
|
||||
'blue-dark',
|
||||
'cyan',
|
||||
'purple',
|
||||
'violet',
|
||||
'pink',
|
||||
'green-dark',
|
||||
'green',
|
||||
'green-light',
|
||||
'black',
|
||||
'white'
|
||||
],
|
||||
'eval' => array(
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
),
|
||||
'sql' => "varchar(16) NULL"
|
||||
),
|
||||
),
|
||||
);
|
||||
@@ -1,930 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_layer'] = array
|
||||
(
|
||||
'config' => array(
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'ctable' => array('tl_leaflet_vector', 'tl_leaflet_marker'),
|
||||
'ondelete_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\LayerCallbacks::callback('deleteRelations'),
|
||||
),
|
||||
'sql' => array
|
||||
(
|
||||
'keys' => array
|
||||
(
|
||||
'id' => 'primary',
|
||||
'pid' => 'index',
|
||||
'alias' => 'unique',
|
||||
)
|
||||
),
|
||||
'onload_callback' => array(
|
||||
function() {
|
||||
\Controller::loadLanguageFile('leaflet');
|
||||
}
|
||||
),
|
||||
'onsubmit_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
'list' => array
|
||||
(
|
||||
'sorting' => array
|
||||
(
|
||||
'mode' => 5,
|
||||
'fields' => array('title'),
|
||||
'flag' => 1,
|
||||
'icon' => 'system/modules/leaflet/assets/img/layers.png',
|
||||
'panelLayout' => 'filter;search,limit',
|
||||
'paste_button_callback' => \Netzmacht\Contao\Leaflet\Dca\LayerCallbacks::callback('getPasteButtons'),
|
||||
),
|
||||
'label' => array
|
||||
(
|
||||
'fields' => array('title'),
|
||||
'format' => '%s',
|
||||
'label_callback' => \Netzmacht\Contao\Leaflet\Dca\LayerCallbacks::callback('generateRow')
|
||||
),
|
||||
'global_operations' => array
|
||||
(
|
||||
'styles' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['styles'],
|
||||
'href' => 'table=tl_leaflet_style',
|
||||
'icon' => 'system/modules/leaflet/assets/img/style.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"'
|
||||
),
|
||||
'icons' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['icons'],
|
||||
'href' => 'table=tl_leaflet_icon',
|
||||
'icon' => 'system/modules/leaflet/assets/img/icons.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"'
|
||||
),
|
||||
'popups' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['popups'],
|
||||
'href' => 'table=tl_leaflet_popup',
|
||||
'icon' => 'system/modules/leaflet/assets/img/popup.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"'
|
||||
),
|
||||
'all' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"'
|
||||
)
|
||||
),
|
||||
'operations' => array
|
||||
(
|
||||
'markers' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['markers'],
|
||||
'href' => 'table=tl_leaflet_marker',
|
||||
'icon' => 'edit.gif',
|
||||
'button_callback' => \Netzmacht\Contao\Leaflet\Dca\LayerCallbacks::callback('generateMarkersButton')
|
||||
),
|
||||
'vectors' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['vectors'],
|
||||
'href' => 'table=tl_leaflet_vector',
|
||||
'icon' => 'edit.gif',
|
||||
'button_callback' => \Netzmacht\Contao\Leaflet\Dca\LayerCallbacks::callback('generateVectorsButton'),
|
||||
),
|
||||
'edit' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'header.gif'
|
||||
),
|
||||
'copy' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif'
|
||||
),
|
||||
'cut' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['cut'],
|
||||
'href' => 'act=paste&mode=cut',
|
||||
'icon' => 'cut.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset()"',
|
||||
),
|
||||
'delete' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm'] . '\'))return false;Backend.getScrollOffset()"'
|
||||
),
|
||||
'toggle' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();return AjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => \Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::stateButton(
|
||||
'tl_leaflet_layer',
|
||||
'active'
|
||||
),
|
||||
),
|
||||
'show' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif'
|
||||
)
|
||||
)
|
||||
),
|
||||
|
||||
'palettes' => array(
|
||||
'__selector__' => array('type'),
|
||||
),
|
||||
|
||||
'metapalettes' => array(
|
||||
'default' => array(
|
||||
'title' => array('title', 'alias', 'type'),
|
||||
'config' => array(),
|
||||
'style' => array(),
|
||||
'expert' => array(':hide'),
|
||||
'active' => array('active'),
|
||||
),
|
||||
'markers extends default' => array(
|
||||
'+expert' => array('pointToLayer'),
|
||||
'+config' => array('boundsMode', 'deferred')
|
||||
),
|
||||
'group extends default' => array(
|
||||
'+title' => array('groupType'),
|
||||
'+active' => array('boundsMode')
|
||||
),
|
||||
'vectors extends default' => array(
|
||||
'+expert' => array('onEachFeature', 'pointToLayer'),
|
||||
'+config' => array('boundsMode', 'deferred'),
|
||||
),
|
||||
'reference extends default' => array(
|
||||
'+title' => array('reference', 'standalone')
|
||||
),
|
||||
'markercluster extends default' => array(
|
||||
'config' => array(
|
||||
'showCoverageOnHover',
|
||||
'zoomToBoundsOnClick',
|
||||
'removeOutsideVisibleBounds',
|
||||
'animateAddingMarkers',
|
||||
'spiderfyOnMaxZoom',
|
||||
'disableClusteringAtZoom',
|
||||
'maxClusterRadius',
|
||||
'singleMarkerMode',
|
||||
),
|
||||
'+expert' => array(
|
||||
'polygonOptions',
|
||||
'iconCreateFunction',
|
||||
'disableDefaultStyle'
|
||||
)
|
||||
),
|
||||
'tile extends default' => array(
|
||||
'config' => array(
|
||||
'tileUrl',
|
||||
'subdomains',
|
||||
'attribution',
|
||||
'minZoom',
|
||||
'maxZoom',
|
||||
),
|
||||
'+expert' => array(
|
||||
'errorTileUrl',
|
||||
'tileSize',
|
||||
'tms',
|
||||
'continuousWorld',
|
||||
'noWrap',
|
||||
'zoomReverse',
|
||||
'zoomOffset',
|
||||
'maxNativeZoom',
|
||||
'opacity',
|
||||
'zIndex',
|
||||
'unloadvisibleTiles',
|
||||
'updateWhenIdle',
|
||||
'detectRetina',
|
||||
'reuseTiles',
|
||||
'bounds'
|
||||
)
|
||||
),
|
||||
'overpass extends default' => array(
|
||||
'config' => array(
|
||||
'overpassQuery',
|
||||
'boundsMode',
|
||||
'minZoom',
|
||||
'overpassEndpoint',
|
||||
'overpassPopup'
|
||||
),
|
||||
'style' => array(
|
||||
'amenityIcons'
|
||||
),
|
||||
'+expert' => array(
|
||||
'onEachFeature',
|
||||
'pointToLayer',
|
||||
),
|
||||
),
|
||||
),
|
||||
|
||||
'metasubselectpalettes' => array(
|
||||
'type' => array(
|
||||
'provider' => array('tile_provider', 'tile_provider_variant')
|
||||
),
|
||||
'tile_provider' => array(
|
||||
'MapBox' => array('tile_provider_key'),
|
||||
'HERE' => array('tile_provider_key', 'tile_provider_code'),
|
||||
),
|
||||
),
|
||||
|
||||
'metasubpalettes' => array(
|
||||
'spiderfyOnMaxZoom' => array('spiderfyDistanceMultiplier'),
|
||||
'deferred' => array('cache'),
|
||||
'cache' => array('cacheLifeTime')
|
||||
),
|
||||
|
||||
'fields' => array
|
||||
(
|
||||
'id' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL auto_increment"
|
||||
),
|
||||
'pid' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'sorting' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
),
|
||||
'tstamp' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'title' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'alias' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::aliasGenerator(
|
||||
'tl_leaflet_layer',
|
||||
'alias',
|
||||
['title'],
|
||||
\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::ALIAS_GENERATOR
|
||||
),
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateAlias'),
|
||||
),
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'type' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['type'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'filter' => true,
|
||||
'eval' => array(
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'submitOnChange' => true,
|
||||
'chosen' => true,
|
||||
'helpwizard' => true,
|
||||
),
|
||||
'options' => array_keys($GLOBALS['LEAFLET_LAYERS']),
|
||||
'reference' => &$GLOBALS['TL_LANG']['leaflet_layer'],
|
||||
'sql' => "varchar(32) NOT NULL default ''"
|
||||
),
|
||||
'active' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['active'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
'tile_provider' => array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tile_provider'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'eval' => array(
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50 clr',
|
||||
'includeBlankOption' => true,
|
||||
'submitOnChange' => true,
|
||||
'chosen' => true,
|
||||
),
|
||||
'options' => array_keys($GLOBALS['LEAFLET_TILE_PROVIDERS']),
|
||||
'sql' => "varchar(32) NOT NULL default ''"
|
||||
),
|
||||
'tile_provider_variant' => array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tile_provider_variant'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'eval' => array(
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'w50',
|
||||
'submitOnChange' => true,
|
||||
'chosen' => false,
|
||||
),
|
||||
'options_callback' => \Netzmacht\Contao\Leaflet\Dca\LayerCallbacks::callback('getVariants'),
|
||||
'sql' => "varchar(32) NOT NULL default ''"
|
||||
),
|
||||
'tile_provider_key' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tile_provider_key'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 255, 'tl_class' => 'clr w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'tile_provider_code' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tile_provider_code'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'deferred' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['deferred'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50 m12', 'submitOnChange' => true, 'isBoolean' => true),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'groupType' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['groupType'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'eval' => array(
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'submitOnChange' => true,
|
||||
'helpwizard' => true,
|
||||
),
|
||||
'default' => 'layer',
|
||||
'options' => array('layer', 'feature'),
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['groupTypes'],
|
||||
'sql' => "varchar(32) NOT NULL default ''"
|
||||
),
|
||||
'reference' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['reference'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => \Netzmacht\Contao\Leaflet\Dca\LayerCallbacks::callback('getLayers'),
|
||||
'eval' => array(
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true,
|
||||
),
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
),
|
||||
'standalone' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['standalone'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => false, 'isBoolean' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'onEachFeature' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['onEachFeature'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => array(
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|javascript',
|
||||
'tl_class' => 'clr'
|
||||
),
|
||||
'sql' => "mediumtext NULL"
|
||||
),
|
||||
'pointToLayer' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['pointToLayer'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => array(
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|javascript',
|
||||
'tl_class' => 'clr'
|
||||
),
|
||||
'sql' => "mediumtext NULL"
|
||||
),
|
||||
'showCoverageOnHover' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['showCoverageOnHover'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => false, 'isBoolean' => true),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'zoomToBoundsOnClick' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['zoomToBoundsOnClick'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => false, 'isBoolean' => true),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'spiderfyOnMaxZoom' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['spiderfyOnMaxZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50 m12', 'submitOnChange' => true, 'isBoolean' => true),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'removeOutsideVisibleBounds' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['removeOutsideVisibleBounds'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => false, 'isBoolean' => true),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'animateAddingMarkers' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['animateAddingMarkers'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => false, 'isBoolean' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'disableClusteringAtZoom' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['disableClusteringAtZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('getZoomLevels'),
|
||||
'default' => '',
|
||||
'eval' => array(
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true
|
||||
),
|
||||
'sql' => "int(4) NULL"
|
||||
),
|
||||
'maxClusterRadius' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['maxClusterRadius'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => array('maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true),
|
||||
'sql' => "int(5) NULL"
|
||||
),
|
||||
'singleMarkerMode' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['singleMarkerMode'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50 m12', 'submitOnChange' => false, 'isBoolean' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'polygonOptions' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['polygonOptions'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => array(
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|json',
|
||||
'tl_class' => 'clr'
|
||||
),
|
||||
'sql' => "mediumtext NULL"
|
||||
),
|
||||
'spiderfyDistanceMultiplier' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['spiderfyDistanceMultiplier'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => array('maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true),
|
||||
'sql' => "int(5) NULL"
|
||||
),
|
||||
'iconCreateFunction' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['iconCreateFunction'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => array(
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|javascript',
|
||||
'tl_class' => 'clr'
|
||||
),
|
||||
'sql' => "mediumtext NULL"
|
||||
),
|
||||
'disableDefaultStyle' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['disableDefaultStyle'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => false, 'isBoolean' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'boundsMode' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['boundsMode'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => \Netzmacht\Contao\Leaflet\Dca\LayerCallbacks::callback('getBoundsModes'),
|
||||
'eval' => array('tl_class' => 'w50', 'includeBlankOption' => true),
|
||||
'sql' => "varchar(6) NOT NULL default ''"
|
||||
),
|
||||
'tileUrl' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tileUrl'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => array('maxlength' => 255, 'tl_class' => 'w50', 'mandatory' => true),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'minZoom' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['minZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('getZoomLevels'),
|
||||
'eval' => array(
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true
|
||||
),
|
||||
'sql' => "int(4) NULL"
|
||||
),
|
||||
'maxZoom' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['maxZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('getZoomLevels'),
|
||||
'eval' => array(
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true
|
||||
),
|
||||
'sql' => "int(4) NULL"
|
||||
),
|
||||
'maxNativeZoom' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['maxNativeZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('getZoomLevels'),
|
||||
'eval' => array(
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true
|
||||
),
|
||||
'sql' => "int(4) NULL"
|
||||
),
|
||||
'tileSize' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tileSize'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => array('maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true),
|
||||
'sql' => "int(5) NULL"
|
||||
),
|
||||
'subdomains' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['subdomains'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => array('maxlength' => 16, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(16) NOT NULL default ''"
|
||||
),
|
||||
'errorTileUrl' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['errorTileUrl'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => array('maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'attribution' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['attribution'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => array('maxlength' => 255, 'tl_class' => 'long', 'allowHtml' => true),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'tms' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tms'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'continuousWorld' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['continuousWorld'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'noWrap' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['noWrap'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'zoomOffset' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['zoomOffset'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => array('maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true),
|
||||
'sql' => "int(5) NULL"
|
||||
),
|
||||
'zoomReverse' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['zoomReverse'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'opacity' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['opacity'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '1.0',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50 clr'),
|
||||
'sql' => "varchar(4) NOT NULL default ''"
|
||||
),
|
||||
'zIndex' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['zIndex'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => array('maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true),
|
||||
'sql' => "int(5) NULL"
|
||||
),
|
||||
'unloadvisibleTiles' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['unloadvisibleTiles'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'updateWhenIdle' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['updateWhenIdle'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'detectRetina' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['detectRetina'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'reuseTiles' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['reuseTiles'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'bounds' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['bounds'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => array(
|
||||
),
|
||||
'eval' => array(
|
||||
'maxlength' => 255,
|
||||
'multiple'=>true,
|
||||
'size'=>2,
|
||||
'tl_class' => 'long clr',
|
||||
'nullIfEmpty' => true,
|
||||
),
|
||||
'sql' => "mediumblob NULL"
|
||||
),
|
||||
'cache' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['cache'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50 m12', 'submitOnChange' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'cacheLifeTime' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['cacheLifeTime'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 0,
|
||||
'eval' => array('maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50'),
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'overpassQuery' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['overpassQuery'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => array(
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace',
|
||||
'tl_class' => 'clr'
|
||||
),
|
||||
'sql' => "mediumtext NULL"
|
||||
),
|
||||
'overpassEndpoint' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['overpassEndpoint'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'overpassCallback' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['overpassCallback'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => array(
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|javascript',
|
||||
'tl_class' => 'clr'
|
||||
),
|
||||
'sql' => "mediumtext NULL"
|
||||
),
|
||||
'minZoomIndicatorPosition' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['minZoomIndicatorPosition'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'options' => array('topleft', 'topright', 'bottomleft', 'bottomright'),
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_layer'],
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50', 'helpwizard' => true),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'minZoomIndicatorMessage' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['minZoomIndicatorMessage'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => array('tl_class' => 'clr w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'minZoomIndicatorMessageNoLayer' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['minZoomIndicatorMessageNoLayer'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'debug' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['debug'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50 m12'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'amenityIcons' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['amenityIcons'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'multiColumnWizard',
|
||||
'options_callback' => array('Netzmacht\Contao\Leaflet\Dca\MarkerCallbacks', 'getIcons'),
|
||||
'eval' => array(
|
||||
'columnFields' => array(
|
||||
'amenity' => array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['amenity'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => \Netzmacht\Contao\Leaflet\Dca\LayerCallbacks::callback('getAmenities'),
|
||||
'eval' => array(
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'style' => 'width: 200px',
|
||||
'chosen' => true,
|
||||
),
|
||||
),
|
||||
'icon' => array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['amenityIcon'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => array('Netzmacht\Contao\Leaflet\Dca\MarkerCallbacks', 'getIcons'),
|
||||
'eval' => array(
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'style' => 'width: 200px',
|
||||
'chosen' => true,
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
'sql' => "blob NULL",
|
||||
),
|
||||
'overpassPopup' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['overpassPopup'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => array(
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|javascript',
|
||||
'tl_class' => 'clr'
|
||||
),
|
||||
'sql' => "mediumtext NULL"
|
||||
),
|
||||
)
|
||||
);
|
||||
@@ -1,585 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_map'] = array
|
||||
(
|
||||
'config' => array(
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'ctable' => array('tl_leaflet_control'),
|
||||
'sql' => array
|
||||
(
|
||||
'keys' => array
|
||||
(
|
||||
'id' => 'primary',
|
||||
'alias' => 'unique',
|
||||
)
|
||||
),
|
||||
'onload_callback' => array(
|
||||
function() {
|
||||
\Controller::loadLanguageFile('leaflet');
|
||||
}
|
||||
),
|
||||
'onsubmit_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
|
||||
'list' => array
|
||||
(
|
||||
'sorting' => array
|
||||
(
|
||||
'mode' => 1,
|
||||
'fields' => array('title'),
|
||||
'panelLayout' => 'search,limit',
|
||||
'flag' => 1,
|
||||
),
|
||||
'label' => array
|
||||
(
|
||||
'fields' => array('title', 'alias'),
|
||||
'format' => '%s <span class="tl_gray">[%s]</span>'
|
||||
),
|
||||
'global_operations' => array
|
||||
(
|
||||
'all' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"'
|
||||
),
|
||||
),
|
||||
'operations' => array
|
||||
(
|
||||
'edit' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'header.gif'
|
||||
),
|
||||
'controls' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['controls'],
|
||||
'href' => 'table=tl_leaflet_control',
|
||||
'icon' => 'system/modules/leaflet/assets/img/control.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"'
|
||||
),
|
||||
'copy' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif'
|
||||
),
|
||||
'delete' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm'] . '\'))return false;Backend.getScrollOffset()"'
|
||||
),
|
||||
'show' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif'
|
||||
)
|
||||
)
|
||||
),
|
||||
|
||||
'metapalettes' => array(
|
||||
'default' => array(
|
||||
'title' => array('title', 'alias'),
|
||||
'zoom' => array('center', 'zoom', 'adjustZoomExtra', 'adjustBounds', 'dynamicLoad', 'boundsPadding'),
|
||||
'locate' => array('locate'),
|
||||
'layers' => array('layers'),
|
||||
'interaction' => array(
|
||||
'dragging',
|
||||
'touchZoom',
|
||||
'scrollWheelZoom',
|
||||
'doubleClickZoom',
|
||||
'boxZoom',
|
||||
'tap',
|
||||
'keyboard'
|
||||
),
|
||||
'behaviour' => array(
|
||||
'zoomControl',
|
||||
'trackResize',
|
||||
'closeOnClick',
|
||||
'bounceAtZoomLimits'
|
||||
),
|
||||
'expert' => array(
|
||||
'options',
|
||||
'cache',
|
||||
)
|
||||
),
|
||||
),
|
||||
'metasubpalettes' => array(
|
||||
'keyboard' => array(
|
||||
'keyboardPanOffset',
|
||||
'keyboardZoomOffset'
|
||||
),
|
||||
'adjustZoomExtra' => array(
|
||||
'minZoom',
|
||||
'maxZoom',
|
||||
'zoomSnap',
|
||||
'zoomDelta',
|
||||
),
|
||||
'locate' => array(
|
||||
':hide',
|
||||
'locateWatch',
|
||||
'locateSetView',
|
||||
'locateMaxZoom',
|
||||
'locateTimeout',
|
||||
'locateMaximumAge',
|
||||
'enableHighAccuracy'
|
||||
),
|
||||
'cache' => array(
|
||||
'cacheLifeTime'
|
||||
)
|
||||
),
|
||||
|
||||
'fields' => array
|
||||
(
|
||||
'id' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL auto_increment"
|
||||
),
|
||||
'tstamp' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'title' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'alias' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::aliasGenerator(
|
||||
'tl_leaflet_map',
|
||||
'alias',
|
||||
['title'],
|
||||
\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::ALIAS_GENERATOR
|
||||
),
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateAlias')
|
||||
),
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'center' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['center'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateCoordinates'),
|
||||
),
|
||||
'wizard' => array(
|
||||
Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('getGeocoder')
|
||||
),
|
||||
'eval' => array(
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'long clr',
|
||||
'nullIfEmpty' => true,
|
||||
),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'layers' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['layers'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'multiColumnWizard',
|
||||
'load_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\MapCallbacks::callback('loadLayerRelations'),
|
||||
),
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\MapCallbacks::callback('saveLayerRelations'),
|
||||
),
|
||||
'eval' => array(
|
||||
'multiple' => true,
|
||||
'doNotSaveEmpty' => true,
|
||||
'columnFields' => array(
|
||||
'reference' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['reference'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => \Netzmacht\Contao\Leaflet\Dca\MapCallbacks::callback('getLayers'),
|
||||
'eval' => array(
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true,
|
||||
'style' => 'width: 300px'
|
||||
),
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
),
|
||||
),
|
||||
'flatArray' => true
|
||||
),
|
||||
'sql' => "mediumblob NULL"
|
||||
),
|
||||
'zoom' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('getZoomLevels'),
|
||||
'default' => '',
|
||||
'eval' => array(
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true
|
||||
),
|
||||
'sql' => "int(4) NULL"
|
||||
),
|
||||
'adjustZoomExtra' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustZoomExtra'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50 m12', 'submitOnChange' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'minZoom' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['minZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('getZoomLevels'),
|
||||
'eval' => array(
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true
|
||||
),
|
||||
'sql' => "int(4) NULL"
|
||||
),
|
||||
'maxZoom' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['maxZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('getZoomLevels'),
|
||||
'eval' => array(
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true
|
||||
),
|
||||
'sql' => "int(4) NULL"
|
||||
),
|
||||
'zoomSnap' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomSnap'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array(
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true
|
||||
),
|
||||
'sql' => "varchar(4) NULL"
|
||||
),
|
||||
'zoomDelta' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomDelta'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array(
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true
|
||||
),
|
||||
'sql' => "varchar(4) NULL"
|
||||
),
|
||||
'dragging' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['dragging'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'touchZoom' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['touchZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'scrollWheelZoom' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['scrollWheelZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options' => array('1', 'center'),
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues'],
|
||||
'default' => true,
|
||||
'eval' => array(
|
||||
'tl_class' => 'w50',
|
||||
'helpwizard' => true,
|
||||
'includeBlankOption' => true,
|
||||
'blankOptionLabel' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues'][''][0]
|
||||
),
|
||||
'sql' => "char(6) NOT NULL default ''"
|
||||
),
|
||||
'doubleClickZoom' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['doubleClickZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options' => array('1', 'center'),
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues'],
|
||||
'default' => true,
|
||||
'eval' => array(
|
||||
'tl_class' => 'w50',
|
||||
'helpwizard' => true,
|
||||
'includeBlankOption' => true,
|
||||
'blankOptionLabel' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues'][''][0]
|
||||
),
|
||||
'sql' => "char(6) NOT NULL default ''"
|
||||
),
|
||||
'boxZoom' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['boxZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'tap' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['tap'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'trackResize' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['trackResize'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'bounceAtZoomLimits' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['bounceAtZoomLimits'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'closeOnClick' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['closeOnClick'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'keyboard' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['keyboard'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'keyboardPanOffset' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['keyboardPanOffset'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 80,
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'clr w50'),
|
||||
'sql' => "int(4) NOT NULL default '80'"
|
||||
),
|
||||
'keyboardZoomOffset' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['keyboardZoomOffset'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 1,
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'),
|
||||
'sql' => "int(4) NOT NULL default '1'"
|
||||
),
|
||||
'zoomControl' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomControl'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'options' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['options'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => array('tl_class' => 'clr lng',
|
||||
'allowHtml' => true,
|
||||
'style' => 'min-height: 40px;',
|
||||
'rte' => 'ace|json'
|
||||
),
|
||||
'sql' => "text NULL"
|
||||
),
|
||||
'adjustBounds' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBounds'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'options' => array('load', 'deferred'),
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBoundsOptions'],
|
||||
'eval' => array('tl_class' => 'clr w50', 'multiple' => true, 'helpwizard' => true),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'dynamicLoad' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['dynamicLoad'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'clr w50', 'submitOnChange' => false),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'boundsPadding' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['boundsPadding'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array(
|
||||
'maxlength' => 32,
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true
|
||||
),
|
||||
'sql' => "varchar(32) NULL"
|
||||
),
|
||||
'locate' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['locate'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'locateWatch' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['locateWatch'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'locateSetView' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['locateSetView'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => false),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'locateTimeout' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['locateTimeout'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => array('maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true),
|
||||
'sql' => "int(9) NULL"
|
||||
),
|
||||
'locateMaximumAge' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['locateMaximumAge'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => array('maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true),
|
||||
'sql' => "int(9) NULL"
|
||||
),
|
||||
'enableHighAccuracy' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['enableHighAccuracy'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50 m12'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'locateMaxZoom' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['locateMaxZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('getZoomLevels'),
|
||||
'eval' => array(
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'clr w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true
|
||||
),
|
||||
'sql' => "int(4) NULL"
|
||||
),
|
||||
'cache' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['cache'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50 m12', 'submitOnChange' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'cacheLifeTime' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['cacheLifeTime'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 0,
|
||||
'eval' => array('maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50'),
|
||||
'sql' => "int(9) NOT NULL default '0'"
|
||||
),
|
||||
),
|
||||
);
|
||||
@@ -1,48 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_map_layer'] = array
|
||||
(
|
||||
'config' => array(
|
||||
'dataContainer' => 'Table',
|
||||
'sql' => array
|
||||
(
|
||||
'keys' => array
|
||||
(
|
||||
'id' => 'primary',
|
||||
'mid,lid' => 'unique',
|
||||
)
|
||||
)
|
||||
),
|
||||
|
||||
'fields' => array
|
||||
(
|
||||
'id' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL auto_increment"
|
||||
),
|
||||
'tstamp' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'sorting' => array(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'mid' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'lid' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
)
|
||||
);
|
||||
@@ -1,376 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_marker'] = array
|
||||
(
|
||||
'config' => array(
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'ptable' => 'tl_leaflet_layer',
|
||||
'sql' => array
|
||||
(
|
||||
'keys' => array
|
||||
(
|
||||
'id' => 'primary',
|
||||
'pid' => 'index',
|
||||
'alias' => 'unique',
|
||||
)
|
||||
),
|
||||
'onload_callback' => array(
|
||||
function() {
|
||||
\Controller::loadLanguageFile('leaflet');
|
||||
}
|
||||
),
|
||||
'onsubmit_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
|
||||
'list' => array
|
||||
(
|
||||
'sorting' => array
|
||||
(
|
||||
'mode' => 4,
|
||||
'fields' => array('sorting'),
|
||||
'flag' => 1,
|
||||
'panelLayout' => 'sort,filter;search,limit',
|
||||
'headerFields' => array('title', 'type'),
|
||||
'child_record_callback' => array('Netzmacht\Contao\Leaflet\Dca\MarkerCallbacks', 'generateRow'),
|
||||
),
|
||||
'label' => array
|
||||
(
|
||||
'fields' => array('title'),
|
||||
'format' => '%s',
|
||||
),
|
||||
'global_operations' => array
|
||||
(
|
||||
'icons' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['icons'],
|
||||
'href' => 'table=tl_leaflet_icon&id=',
|
||||
'icon' => 'system/modules/leaflet/assets/img/icons.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"'
|
||||
),
|
||||
'popups' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['popups'],
|
||||
'href' => 'table=tl_leaflet_popup',
|
||||
'icon' => 'system/modules/leaflet/assets/img/popup.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"'
|
||||
),
|
||||
'all' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"'
|
||||
),
|
||||
),
|
||||
'operations' => array
|
||||
(
|
||||
'edit' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'edit.gif'
|
||||
),
|
||||
'copy' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif'
|
||||
),
|
||||
'delete' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm'] . '\'))return false;Backend.getScrollOffset()"'
|
||||
),
|
||||
'toggle' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();return AjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => \Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::stateButton(
|
||||
'tl_leaflet_marker',
|
||||
'active'
|
||||
)
|
||||
),
|
||||
'show' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif'
|
||||
)
|
||||
)
|
||||
),
|
||||
|
||||
'metapalettes' => array(
|
||||
'default' => array(
|
||||
'title' => array('title', 'alias', 'coordinates'),
|
||||
'content' => array('tooltip', 'alt', 'addPopup'),
|
||||
'config' => array(
|
||||
':hide',
|
||||
'clickable',
|
||||
'draggable',
|
||||
'keyboard',
|
||||
'zIndexOffset',
|
||||
'opacity',
|
||||
'riseOnHover',
|
||||
'riseOffset',
|
||||
'customIcon',
|
||||
),
|
||||
'expert' => array(':hide', 'featureData'),
|
||||
'active' => array('active', 'ignoreForBounds')
|
||||
),
|
||||
),
|
||||
'metasubpalettes' => array(
|
||||
'addPopup' => array('popup', 'popupContent'),
|
||||
'customIcon' => array('icon')
|
||||
),
|
||||
|
||||
'fields' => array
|
||||
(
|
||||
'id' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL auto_increment"
|
||||
),
|
||||
'tstamp' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'sorting' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
'sorting' => true,
|
||||
),
|
||||
'pid' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'title' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['title'],
|
||||
'exclude' => true,
|
||||
'search' => true,
|
||||
'sorting' => true,
|
||||
'flag' => 1,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'alias' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::aliasGenerator(
|
||||
'tl_leaflet_marker',
|
||||
'alias',
|
||||
['title'],
|
||||
\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::ALIAS_GENERATOR
|
||||
),
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateAlias'),
|
||||
),
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'coordinates' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['coordinates'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateCoordinates'),
|
||||
array('Netzmacht\Contao\Leaflet\Dca\MarkerCallbacks', 'saveCoordinates')
|
||||
),
|
||||
'load_callback' => array(
|
||||
array('Netzmacht\Contao\Leaflet\Dca\MarkerCallbacks', 'loadCoordinates')
|
||||
),
|
||||
'wizard' => array(
|
||||
Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('getGeocoder')
|
||||
),
|
||||
'eval' => array(
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'long clr',
|
||||
'nullIfEmpty' => true,
|
||||
'doNotSaveEmpty' => true,
|
||||
),
|
||||
),
|
||||
'latitude' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['latitude'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "decimal(10,8) NULL"
|
||||
),
|
||||
'longitude' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['longitude'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "decimal(11,8) NULL"
|
||||
),
|
||||
'altitude' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['altitude'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "float NULL"
|
||||
),
|
||||
'active' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['active'],
|
||||
'exclude' => true,
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'flag' => 12,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
'tooltip' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['tooltip'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'alt' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['alt'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'addPopup' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['addPopup'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'eval' => array('tl_class' => 'w50 m12', 'submitOnChange' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'popup' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['popup'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => array('Netzmacht\Contao\Leaflet\Dca\MarkerCallbacks', 'getPopups'),
|
||||
'eval' => array(
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true,
|
||||
),
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
),
|
||||
'popupContent' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['popupContent'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => true, 'rte' => 'tinyMCE', 'helpwizard' => true, 'tl_class' => 'clr'),
|
||||
'explanation' => 'insertTags',
|
||||
'sql' => "mediumtext NULL"
|
||||
),
|
||||
'customIcon' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['customIcon'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => array('tl_class' => 'clr w50 m12', 'submitOnChange' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'icon' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['icon'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => array('Netzmacht\Contao\Leaflet\Dca\MarkerCallbacks', 'getIcons'),
|
||||
'eval' => array(
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
),
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
),
|
||||
'draggable' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['draggable'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'clickable' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['clickable'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'keyboard' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['keyboard'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'zIndexOffset' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['zIndexOffset'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 0,
|
||||
'eval' => array('maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'clr w50', 'nullIfEmpty' => true),
|
||||
'sql' => "int(5) NULL"
|
||||
),
|
||||
'ignoreForBounds' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['ignoreForBounds'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'featureData' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['featureData'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => array('tl_class' => 'clr lng',
|
||||
'allowHtml' => true,
|
||||
'style' => 'min-height: 40px;',
|
||||
'rte' => 'ace|json'
|
||||
),
|
||||
'sql' => "text NULL"
|
||||
),
|
||||
),
|
||||
);
|
||||
@@ -1,302 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_popup'] = array
|
||||
(
|
||||
'config' => array(
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'sql' => array
|
||||
(
|
||||
'keys' => array
|
||||
(
|
||||
'id' => 'primary',
|
||||
'alias' => 'unique',
|
||||
)
|
||||
),
|
||||
'onsubmit_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
|
||||
'list' => array
|
||||
(
|
||||
'sorting' => array
|
||||
(
|
||||
'mode' => 1,
|
||||
'fields' => array('title'),
|
||||
'flag' => 1,
|
||||
'panelLayout' => 'limit',
|
||||
'headerFields' => array('title', 'type'),
|
||||
),
|
||||
'label' => array
|
||||
(
|
||||
'fields' => array('title', 'type'),
|
||||
'format' => '%s <span class="tl_gray">[%s]</span>',
|
||||
),
|
||||
'global_operations' => array
|
||||
(
|
||||
'layers' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['layersBtn'],
|
||||
'href' => 'table=tl_leaflet_layer',
|
||||
'icon' => 'system/modules/leaflet/assets/img/layers.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"'
|
||||
),
|
||||
'styles' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['styles'],
|
||||
'href' => 'table=tl_leaflet_style',
|
||||
'icon' => 'system/modules/leaflet/assets/img/style.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"'
|
||||
),
|
||||
'icons' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['icons'],
|
||||
'href' => 'table=tl_leaflet_icon',
|
||||
'icon' => 'system/modules/leaflet/assets/img/icons.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"'
|
||||
),
|
||||
'all' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"'
|
||||
),
|
||||
),
|
||||
'operations' => array
|
||||
(
|
||||
'edit' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'edit.gif'
|
||||
),
|
||||
'copy' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif'
|
||||
),
|
||||
'delete' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm'] . '\'))return false;Backend.getScrollOffset()"'
|
||||
),
|
||||
'toggle' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();return AjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => \Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::stateButton(
|
||||
'tl_leaflet_popup',
|
||||
'active'
|
||||
)
|
||||
),
|
||||
'show' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif'
|
||||
)
|
||||
)
|
||||
),
|
||||
|
||||
'palettes' => array(
|
||||
'__selector__' => array('type')
|
||||
),
|
||||
|
||||
'metapalettes' => array(
|
||||
'default' => array(
|
||||
'title' => array('title', 'alias'),
|
||||
'size' => array('maxWidth', 'minWidth', 'maxHeight'),
|
||||
'config' => array(
|
||||
':hide',
|
||||
'closeButton',
|
||||
'keepInView',
|
||||
'closeOnClick',
|
||||
'zoomAnimation',
|
||||
'offset',
|
||||
'className',
|
||||
'autoPan'
|
||||
),
|
||||
'active' => array('active'),
|
||||
),
|
||||
),
|
||||
|
||||
'metasubpalettes' => array(
|
||||
'autoPan' => array('autoPanPadding')
|
||||
),
|
||||
|
||||
'fields' => array
|
||||
(
|
||||
'id' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL auto_increment"
|
||||
),
|
||||
'tstamp' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'title' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'alias' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::aliasGenerator(
|
||||
'tl_leaflet_popup',
|
||||
'alias',
|
||||
['title'],
|
||||
\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::ALIAS_GENERATOR
|
||||
),
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateAlias'),
|
||||
),
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'maxWidth' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['maxWidth'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'),
|
||||
'sql' => "int(4) NULL"
|
||||
),
|
||||
'minWidth' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['minWidth'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'),
|
||||
'sql' => "int(4) NULL"
|
||||
),
|
||||
'maxHeight' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['maxHeight'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'),
|
||||
'sql' => "int(4) NULL"
|
||||
),
|
||||
'autoPan' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['autoPan'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50 m12', 'submitOnChange' => true),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'keepInView' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['keepInView'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => false),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'closeButton' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['closeButton'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => false),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'offset' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['offset'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateCoordinates')
|
||||
),
|
||||
'eval' => array(
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'autoPanPadding' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['autoPanPadding'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array(
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
'multiple' => true,
|
||||
'size' => 2,
|
||||
),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'zoomAnimation' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['zoomAnimation'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => false),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'closeOnClick' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['closeOnClick'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => false),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'className' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['className'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 64, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(64) NOT NULL default ''"
|
||||
),
|
||||
'active' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['active'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'search' => false,
|
||||
'flag' => 12,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
@@ -1,304 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_style'] = array
|
||||
(
|
||||
'config' => array(
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'sql' => array
|
||||
(
|
||||
'keys' => array
|
||||
(
|
||||
'id' => 'primary',
|
||||
'alias' => 'unique',
|
||||
)
|
||||
),
|
||||
'onsubmit_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
|
||||
'list' => array
|
||||
(
|
||||
'sorting' => array
|
||||
(
|
||||
'mode' => 1,
|
||||
'fields' => array('title'),
|
||||
'flag' => 1,
|
||||
'panelLayout' => 'limit',
|
||||
'headerFields' => array('title', 'type'),
|
||||
),
|
||||
'label' => array
|
||||
(
|
||||
'fields' => array('title', 'type'),
|
||||
'format' => '%s <span class="tl_gray">[%s]</span>',
|
||||
),
|
||||
'global_operations' => array
|
||||
(
|
||||
'layers' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['layersBtn'],
|
||||
'href' => 'table=tl_leaflet_layer',
|
||||
'icon' => 'system/modules/leaflet/assets/img/layers.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"'
|
||||
),
|
||||
'icons' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['icons'],
|
||||
'href' => 'table=tl_leaflet_icon',
|
||||
'icon' => 'system/modules/leaflet/assets/img/icons.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"'
|
||||
),
|
||||
'popups' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['popups'],
|
||||
'href' => 'table=tl_leaflet_popup',
|
||||
'icon' => 'system/modules/leaflet/assets/img/popup.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"'
|
||||
),
|
||||
'all' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"'
|
||||
),
|
||||
),
|
||||
'operations' => array
|
||||
(
|
||||
'edit' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'edit.gif'
|
||||
),
|
||||
'copy' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif'
|
||||
),
|
||||
'delete' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm'] . '\'))return false;Backend.getScrollOffset()"'
|
||||
),
|
||||
'toggle' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();return AjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => \Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::stateButton(
|
||||
'tl_leaflet_style',
|
||||
'active'
|
||||
)
|
||||
),
|
||||
'show' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif'
|
||||
)
|
||||
)
|
||||
),
|
||||
|
||||
'palettes' => array(
|
||||
'__selector__' => array('type')
|
||||
),
|
||||
|
||||
'metapalettes' => array(
|
||||
'default' => array(
|
||||
'title' => array('title', 'alias', 'type'),
|
||||
'config' => array(),
|
||||
'active' => array('active'),
|
||||
),
|
||||
'fixed extends default' => array(
|
||||
'config' => array('stroke', 'fill'),
|
||||
),
|
||||
),
|
||||
|
||||
'metasubpalettes' => array(
|
||||
'stroke' => array('color', 'weight', 'opacity', 'dashArray', 'lineCap', 'lineJoin'),
|
||||
'fill' => array('fillColor', 'fillOpacity',)
|
||||
),
|
||||
|
||||
'fields' => array
|
||||
(
|
||||
'id' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL auto_increment"
|
||||
),
|
||||
'tstamp' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'title' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'alias' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::aliasGenerator(
|
||||
'tl_leaflet_style',
|
||||
'alias',
|
||||
['title'],
|
||||
\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::ALIAS_GENERATOR
|
||||
),
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateAlias'),
|
||||
),
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'type' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['type'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'eval' => array(
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'submitOnChange' => true,
|
||||
'chosen' => true,
|
||||
),
|
||||
'options' => &$GLOBALS['LEAFLET_STYLES'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['leaflet_style'],
|
||||
'sql' => "varchar(32) NOT NULL default ''"
|
||||
),
|
||||
'stroke' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['stroke'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'w50', 'submitOnChange' => true),
|
||||
'sql' => "char(1) NOT NULL default '1'"
|
||||
),
|
||||
'color' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['color'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'wizard' => array(
|
||||
\Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::colorPicker()
|
||||
),
|
||||
'eval' => array(
|
||||
'tl_class' => 'w50 wizard clr',
|
||||
'maxlength' => 7,
|
||||
'decodeEntities' => true
|
||||
),
|
||||
'sql' => "varchar(8) NOT NULL default ''"
|
||||
),
|
||||
'weight' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['weight'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 5,
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'),
|
||||
'sql' => "int(4) NOT NULL default '5'"
|
||||
),
|
||||
'opacity' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['opacity'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '0.5',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(4) NOT NULL default '0.5'"
|
||||
),
|
||||
'fill' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['fill'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => array('tl_class' => 'clr w50', 'submitOnChange' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'fillColor' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['fillColor'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'wizard' => array(
|
||||
\Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::colorPicker()
|
||||
),
|
||||
'eval' => array(
|
||||
'tl_class' => 'clr w50 wizard',
|
||||
'maxlength' => 7,
|
||||
'decodeEntities' => true
|
||||
),
|
||||
'sql' => "varchar(8) NOT NULL default ''"
|
||||
),
|
||||
'fillOpacity' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['fillOpacity'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '0.2',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(4) NOT NULL default '0.2'"
|
||||
),
|
||||
'dashArray' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['dashArray'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 32, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(32) NOT NULL default ''"
|
||||
),
|
||||
'lineCap' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['lineCap'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options' => array('butt', 'round', 'square', 'inherit'),
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['lineCaps'],
|
||||
'eval' => array('mandatory' => false, 'tl_class' => 'w50 clr', 'includeBlankOption' => true, 'helpwizard'),
|
||||
'sql' => "varchar(8) NOT NULL default ''"
|
||||
),
|
||||
'lineJoin' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['lineJoin'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options' => array('miter', 'round', 'bevel', 'inherit'),
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['lineJoins'],
|
||||
'eval' => array('mandatory' => false, 'tl_class' => 'w50', 'includeBlankOption' => true, 'helpwizard'),
|
||||
'sql' => "varchar(8) NOT NULL default ''"
|
||||
),
|
||||
'active' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['active'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'search' => false,
|
||||
'flag' => 12,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
@@ -1,415 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_vector'] = array
|
||||
(
|
||||
'config' => array(
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'ptable' => 'tl_leaflet_layer',
|
||||
'sql' => array
|
||||
(
|
||||
'keys' => array
|
||||
(
|
||||
'id' => 'primary',
|
||||
'pid' => 'index',
|
||||
'alias' => 'unique',
|
||||
)
|
||||
),
|
||||
'onload_callback' => array(
|
||||
function() {
|
||||
\Controller::loadLanguageFile('leaflet');
|
||||
}
|
||||
),
|
||||
'onsubmit_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
|
||||
'list' => array
|
||||
(
|
||||
'sorting' => array
|
||||
(
|
||||
'mode' => 4,
|
||||
'fields' => array('sorting'),
|
||||
'flag' => 1,
|
||||
'panelLayout' => 'sort,filter;search,limit',
|
||||
'headerFields' => array('title', 'type'),
|
||||
'child_record_callback' => Netzmacht\Contao\Leaflet\Dca\VectorCallbacks::callback('generateRow'),
|
||||
),
|
||||
'label' => array
|
||||
(
|
||||
'fields' => array('title'),
|
||||
'format' => '%s',
|
||||
),
|
||||
'global_operations' => array
|
||||
(
|
||||
'styles' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['styles'],
|
||||
'href' => 'table=tl_leaflet_style',
|
||||
'icon' => 'system/modules/leaflet/assets/img/style.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"'
|
||||
),
|
||||
'popups' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['popups'],
|
||||
'href' => 'table=tl_leaflet_popup',
|
||||
'icon' => 'system/modules/leaflet/assets/img/popup.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"'
|
||||
),
|
||||
'all' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"'
|
||||
),
|
||||
),
|
||||
'operations' => array
|
||||
(
|
||||
'edit' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'edit.gif'
|
||||
),
|
||||
'copy' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif'
|
||||
),
|
||||
'cut' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['cut'],
|
||||
'href' => 'act=paste&mode=cut',
|
||||
'icon' => 'cut.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset()"',
|
||||
),
|
||||
'delete' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm'] . '\'))return false;Backend.getScrollOffset()"'
|
||||
),
|
||||
'toggle' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();return AjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => \Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::stateButton(
|
||||
'tl_leaflet_vector',
|
||||
'active'
|
||||
)
|
||||
),
|
||||
'show' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif'
|
||||
)
|
||||
)
|
||||
),
|
||||
|
||||
'palettes' => array(
|
||||
'__selector__' => array('type')
|
||||
),
|
||||
|
||||
'metapalettes' => array(
|
||||
'default' => array(
|
||||
'title' => array('title', 'alias', 'type'),
|
||||
'data' => array(),
|
||||
'popup' => array(':hide','addPopup'),
|
||||
'config' => array(':hide', 'style', 'className', 'clickable'),
|
||||
'expert' => array(':hide', 'featureData'),
|
||||
'active' => array('active', 'ignoreForBounds')
|
||||
),
|
||||
|
||||
'polyline extends default' => array(
|
||||
'+config' => array('smoothFactor', 'noClip'),
|
||||
'data' => array('data')
|
||||
),
|
||||
|
||||
'multiPolyline extends polyline' => array(
|
||||
'data' => array('multiData')
|
||||
),
|
||||
|
||||
'polygon extends polyline' => array(),
|
||||
|
||||
'multiPolygon extends multiPolyline' => array(
|
||||
),
|
||||
|
||||
'rectangle extends polygon' => array(
|
||||
'data' => array('bounds'),
|
||||
),
|
||||
|
||||
'circle extends default' => array(
|
||||
'+data' => array('coordinates', 'radius'),
|
||||
),
|
||||
|
||||
'circleMarker extends circle' => array(),
|
||||
),
|
||||
'metasubpalettes' => array(
|
||||
'addPopup' => array('popup', 'popupContent'),
|
||||
),
|
||||
|
||||
'fields' => array
|
||||
(
|
||||
'id' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL auto_increment"
|
||||
),
|
||||
'tstamp' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'pid' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
),
|
||||
'sorting' => array
|
||||
(
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
'sorting' => true,
|
||||
),
|
||||
'title' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'filter' => false,
|
||||
'sorting' => true,
|
||||
'search' => true,
|
||||
'flag' => 1,
|
||||
'eval' => array('mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(255) NOT NULL default ''"
|
||||
),
|
||||
'alias' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::aliasGenerator(
|
||||
'tl_leaflet_vector',
|
||||
'alias',
|
||||
['title'],
|
||||
\Netzmacht\Contao\Leaflet\DependencyInjection\LeafletServices::ALIAS_GENERATOR
|
||||
),
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateAlias'),
|
||||
),
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'type' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['type'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'search' => false,
|
||||
'flag' => 1,
|
||||
'eval' => array(
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'submitOnChange' => true,
|
||||
'chosen' => true,
|
||||
'helpwizard' => true,
|
||||
),
|
||||
'options' => &$GLOBALS['LEAFLET_VECTORS'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['leaflet_vector'],
|
||||
'sql' => "varchar(32) NOT NULL default ''"
|
||||
),
|
||||
'active' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['active'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'search' => false,
|
||||
'flag' => 12,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
\Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('clearCache'),
|
||||
],
|
||||
),
|
||||
'addPopup' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['addPopup'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'eval' => array('tl_class' => 'w50 m12', 'submitOnChange' => true),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'popup' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['popup'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => array('Netzmacht\Contao\Leaflet\Dca\MarkerCallbacks', 'getPopups'),
|
||||
'eval' => array(
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true,
|
||||
),
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
),
|
||||
'popupContent' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['popupContent'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => true, 'rte' => 'tinyMCE', 'helpwizard' => true, 'tl_class' => 'clr'),
|
||||
'explanation' => 'insertTags',
|
||||
'sql' => "mediumtext NULL"
|
||||
),
|
||||
'style' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['style'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => Netzmacht\Contao\Leaflet\Dca\VectorCallbacks::callback('getStyles'),
|
||||
'eval' => array(
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true,
|
||||
),
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
),
|
||||
'clickable' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['clickable'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => array('tl_class' => 'm12 w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'className' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['className'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 64, 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(64) NOT NULL default ''"
|
||||
),
|
||||
'coordinates' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['coordinates'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateCoordinates')
|
||||
),
|
||||
'wizard' => array(
|
||||
Netzmacht\Contao\Leaflet\Dca\LeafletCallbacks::callback('getGeocoder')
|
||||
),
|
||||
'eval' => array(
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'long clr',
|
||||
'nullIfEmpty' => true,
|
||||
'mandatory' => true,
|
||||
),
|
||||
'sql' => "varchar(255) NULL"
|
||||
),
|
||||
'radius' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['radius'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 5,
|
||||
'eval' => array('mandatory' => false, 'maxlength' => 10, 'rgxp' => 'digit', 'tl_class' => 'clr w50'),
|
||||
'sql' => "int(10) NOT NULL default '5'"
|
||||
),
|
||||
'data' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['data'],
|
||||
'inputType' => 'textarea',
|
||||
'search' => false,
|
||||
'eval' => array('mandatory' => true, 'alwaysSave' => true),
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateMultipleCoordinates')
|
||||
),
|
||||
'sql' => "longblob NULL"
|
||||
),
|
||||
'multiData' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['multiData'],
|
||||
'inputType' => 'multiColumnWizard',
|
||||
'search' => false,
|
||||
'eval' => array(
|
||||
'mandatory' => true,
|
||||
'alwaysSave' => true,
|
||||
'flatArray' => true,
|
||||
'columnFields' => array
|
||||
(
|
||||
'data' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['data'],
|
||||
'inputType' => 'textarea',
|
||||
'search' => false,
|
||||
'eval' => array('alwaysSave' => true, 'style' => 'width:600px'),
|
||||
)
|
||||
)
|
||||
),
|
||||
'save_callback' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\Validator::callback('validateMultipleCoordinateSets')
|
||||
),
|
||||
'sql' => "longblob NULL"
|
||||
),
|
||||
'bounds' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['bounds'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => array(),
|
||||
'eval' => array(
|
||||
'maxlength' => 255,
|
||||
'multiple'=>true,
|
||||
'size'=>2,
|
||||
'tl_class' => 'long clr',
|
||||
'nullIfEmpty' => true,
|
||||
),
|
||||
'sql' => "mediumblob NULL"
|
||||
),
|
||||
'ignoreForBounds' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['ignoreForBounds'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => array('tl_class' => 'w50'),
|
||||
'sql' => "char(1) NOT NULL default ''"
|
||||
),
|
||||
'featureData' => array
|
||||
(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['featureData'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => array('tl_class' => 'clr lng',
|
||||
'allowHtml' => true,
|
||||
'style' => 'min-height: 40px;',
|
||||
'rte' => 'ace|json'
|
||||
),
|
||||
'sql' => "text NULL"
|
||||
),
|
||||
),
|
||||
);
|
||||
@@ -1,79 +0,0 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_module']['metapalettes']['leaflet'] = array(
|
||||
'type' => array('name', 'type', 'headline'),
|
||||
'leaflet' => array('leaflet_map', 'leaflet_mapId', 'leaflet_width', 'leaflet_height', 'leaflet_template'),
|
||||
'templates' => array(':hide', 'customTpl'),
|
||||
'protected' => array(':hide', 'protected'),
|
||||
'expert' => array(':hide', 'guests', 'cssID', 'space'),
|
||||
'invisible' => array(':hide', 'invisible', 'start', 'start')
|
||||
);
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_module']['fields']['leaflet_map'] = array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_module']['leaflet_map'],
|
||||
'inputType' => 'select',
|
||||
'exclude' => true,
|
||||
'options_callback' => \Netzmacht\Contao\Leaflet\Dca\FrontendIntegration::callback('getMaps'),
|
||||
'wizard' => array(
|
||||
\Netzmacht\Contao\Leaflet\Dca\FrontendIntegration::callback('getEditMapLink'),
|
||||
),
|
||||
'eval' => array(
|
||||
'tl_class' => 'w50 wizard',
|
||||
'chosen' => true,
|
||||
),
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'"
|
||||
);
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_module']['fields']['leaflet_mapId'] = array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_module']['leaflet_mapId'],
|
||||
'inputType' => 'text',
|
||||
'exclude' => true,
|
||||
'eval' => array(
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'maxlength' => 16,
|
||||
),
|
||||
'sql' => "varchar(16) NOT NULL default ''"
|
||||
);
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_module']['fields']['leaflet_width'] = array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_module']['leaflet_width'],
|
||||
'inputType' => 'inputUnit',
|
||||
'options' => array('px', '%', 'em', 'pt', 'pc', 'in', 'cm', 'mm'),
|
||||
'search' => false,
|
||||
'exclude' => true,
|
||||
'eval' => array('rgxp' => 'digit', 'tl_class' => 'clr w50'),
|
||||
'sql' => "varchar(64) NOT NULL default ''"
|
||||
);
|
||||
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_module']['fields']['leaflet_height'] = array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_module']['leaflet_height'],
|
||||
'inputType' => 'inputUnit',
|
||||
'options' => array('px', '%', 'em', 'pt', 'pc', 'in', 'cm', 'mm'),
|
||||
'search' => false,
|
||||
'exclude' => true,
|
||||
'eval' => array('rgxp' => 'digit', 'tl_class' => 'w50'),
|
||||
'sql' => "varchar(64) NOT NULL default ''"
|
||||
);
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_module']['fields']['leaflet_template'] = array(
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_module']['leaflet_template'],
|
||||
'inputType' => 'select',
|
||||
'exclude' => true,
|
||||
'options_callback' => \Netzmacht\Contao\Toolkit\Dca\Callback\CallbackFactory::getTemplates('leaflet_map_js'),
|
||||
'eval' => array(
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
),
|
||||
'sql' => "varchar(64) NOT NULL default ''"
|
||||
);
|
||||
@@ -1,107 +0,0 @@
|
||||
<?php
|
||||
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['title_legend'] = 'Title';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['interaction_legend'] = 'Interaction controls';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoom_legend'] = 'Center and zoom';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locate_legend'] = 'Locate user position';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['layers_legend'] = 'Default layers';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['expert_legend'] = 'Expert settings';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['behaviour_legend'] = 'Behaviour';
|
||||
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['new'][0] = 'Create map';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['new'][1] = 'Create new map';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['edit'][0] = 'Edit map';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['edit'][1] = 'Edit map ID %s';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['copy'][0] = 'Copy map';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['copy'][1] = 'Copy map ID %s';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['controls'][0] = 'Manage controls';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['controls'][1] = 'Manage controls of map ID %s';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['delete'][0] = 'Delete map';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['delete'][1] = 'Delete map ID %s';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['show'][0] = 'Show details';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['show'][1] = 'Show map ID %s details';
|
||||
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['title'][0] = 'Title';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['title'][1] = 'Title of the map.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['alias'][0] = 'Alias';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['alias'][1] = 'Alias of the map.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['center'][0] = 'Center';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['center'][1] = 'Initial geographical center of the map. Comma separated coordinates.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['dragging'][0] = 'Dragging';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['dragging'][1] = 'Whether the map be draggable with mouse/touch or not.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['touchZoom'][0] = 'Touch zoom';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['touchZoom'][1] = 'Whether the map can be zoomed by touch-dragging with two fingers.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['scrollWheelZoom'][0] = 'Scroll wheel zoom';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['scrollWheelZoom'][1] = 'Whether the map can be zoomed by using the mouse wheel.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['doubleClickZoom'][0] = 'Double click zoom';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['doubleClickZoom'][1] = 'Whether the map can be zoomed in by double clicking on it and zoomed out by double clicking while holding shift.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['boxZoom'][0] = 'Box zoom';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['boxZoom'][1] = 'Whether the map can be zoomed to a rectangular area specified by dragging the mouse while pressing shift.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['tap'][0] = 'Instant taps';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['tap'][1] = 'Enables mobile hacks for supporting instant taps.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['trackResize'][0] = 'Track window resize';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['trackResize'][1] = 'Whether the map automatically handles browser window resize to update itself.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['closeOnClick'][0] = 'Close popup on click';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['closeOnClick'][1] = 'Disable if you don\'t want popups to close when user clicks the map';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['keyboard'][0] = 'Keyboard navigation';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['keyboard'][1] = 'Makes the map focusable and allows users to navigate the map with keyboard arrows and +/- keys';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['keyboardPanOffset'][0] = 'Keyboard pan offset';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['keyboardPanOffset'][1] = 'Amount of pixels to pan when pressing an arrow key.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['keyboardZoomOffset'][0] = 'Keyboard zoom offset';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['keyboardZoomOffset'][1] = 'Number of zoom levels to change when pressing + or - key.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoom'][0] = 'Zoom level';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoom'][1] = 'Initial map zoom.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['minZoom'][0] = 'Minimum zoom level';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['minZoom'][1] = 'Minimum zoom level of the map. Overrides any minZoom set on map layers.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['maxZoom'][0] = 'Maximum zoom level';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['maxZoom'][1] = 'Maximum zoom level of the map. This overrides any maxZoom set on map layers.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomSnap'][0] = 'Zoom snap';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomSnap'][1] = 'Forces the map\'s zoom level to always be a multiple of the number. Default is 1.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomDelta'][0] = 'Zoom delta';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomDelta'][1] = 'Controls how much the map\'s zoom level will change after zoom in or zoom out.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomControl'][0] = 'Add default zoom control';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomControl'][1] = 'Whether the zoom control is added to the map by default.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['bounceAtZoomLimits'][0] = 'Bounce at zoom limits';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['bounceAtZoomLimits'][1] = 'Disable if you don\'t want the map to zoom beyond min/max zoom and then bounce back when pinch-zooming';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['options'][0] = 'Extra options';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['options'][1] = 'Add extra map options as valid json. See <a href="http://leafletjs.com/reference.html#map-options">http://leafletjs.com/reference.html#map-options</a>';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustZoomExtra'][0] = 'Adjust extra zoom settings';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustZoomExtra'][1] = 'Enable if you want to adjust minimum and maximum zoom as well';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['layers'][0] = 'Default layers';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['layers'][1] = 'Inital visible layers of the map. For optional layers use the layers control.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBounds'][0] = 'Adjust bounds';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBounds'][1] = 'If enabled the map will fit into bounds of data layers which are marked to affect the map bounds.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locate'][0] = 'Locate user position';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locate'][1] = 'Initial map zoom.Tries to locate the user using the Geolocation API.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateWatch'][0] = 'Watch continuously';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateWatch'][1] = 'If true, starts continous watching of location changes ';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateSetView'][0] = 'Update map center';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateSetView'][1] = 'If enabled, automatically sets the map view to the user location. Otherwise only the <em>locationfound</em> event is triggered.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateMaxZoom'][0] = 'Locate max zoom';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateMaxZoom'][1] = 'Max zoom when setting updating map view.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateTimeout'][0] = 'Locate timeout';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateTimeout'][1] = 'Number of milliseconds to wait for a response from geolocation.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['enableHighAccuracy'][0] = 'High accuracy';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['enableHighAccuracy'][1] = 'Enables high accuracy, see <a href="http://dev.w3.org/geo/api/spec-source.html#high-accuracy" target="_blank">description in the W3C spec</a>.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateMaximumAge'][0] = 'Locate maximum age';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateMaximumAge'][1] = 'Maximum age of detected location in milliseconds. Use cached value if time has not passed.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['dynamicLoad'][0] = 'Load data dynamically in bounds';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['dynamicLoad'][1] = 'If enabled the map requests data from the layers for the current bounds only and make a new request if bounds has changed.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['boundsPadding'][0] = 'Bounds padding';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['boundsPadding'][1] = 'Padding being used then applying bounds. Use comma separated values. If 2 values are given the <em>padding</em> option is set. If 4 values are given <em>paddingTopLeft</em> and <em>paddingBottomRight</em> is set.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['cache'][0] = 'Enable cache';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['cache'][1] = 'If enabled the generated map javascript is cached.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['cacheLifeTime'][0] = 'Cache lifetime';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['cacheLifeTime'][1] = 'Indicates how long a cache entry is valid in seconds.';
|
||||
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBoundsOptions']['load'][0] = 'At map initialization';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBoundsOptions']['load'][1] = 'Calculate bounds when the map is initialized. All static and already loaded deferred featured are included.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBoundsOptions']['deferred'][0] = 'After loading deferred feature';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBoundsOptions']['deferred'][1] = 'Recalculate bounds when a deferred feature is load.';
|
||||
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues'][''][0] = 'Disable';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues'][''][1] = 'Disable zoom function.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues']['1'][0] = 'Enable';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues']['1'][1] = 'Enable zoom function.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues']['center'][0] = 'Center';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues']['center'][1] = 'If passed \'center\', it will zoom to the center of the view regardless of where the mouse was.';
|
||||
@@ -1,7 +0,0 @@
|
||||
<IfModule !mod_authz_core.c>
|
||||
Order allow,deny
|
||||
Allow from all
|
||||
</IfModule>
|
||||
<IfModule mod_authz_core.c>
|
||||
Require all granted
|
||||
</IfModule>
|
||||
@@ -1,125 +0,0 @@
|
||||
<div class="netzmacht-leaflet-credits">
|
||||
<div class="header">
|
||||
<h1 class="sub_headline"><?php echo $this->headline; ?> <small><?php echo $this->version; ?></small></h1>
|
||||
</div>
|
||||
|
||||
<div class="tl_box block row">
|
||||
<h2>About</h2>
|
||||
<div class="left">
|
||||
<p>
|
||||
The Leaflet maps integration for Contao CMS is an Open Source Software license under the LGPL 3.0.
|
||||
This extension is only exists because of great other Open Source Software which it heavenly depends on.
|
||||
</p>
|
||||
<p>
|
||||
This software ships with an visible attribution to <em>netzmacht creative</em> in the map attribution control.
|
||||
If you want to remove this attribution, you have to purchase a commercial license.
|
||||
For more details visit the <a href="https://netzmacht.de/contao-leaflet" target="_blank">project website</a>.
|
||||
</p>
|
||||
</div>
|
||||
<div class="right">
|
||||
<a href="http://www.netzmacht.de" <?php echo LINK_NEW_WINDOW; ?>>
|
||||
<img src="system/modules/leaflet/assets/img/logo.png"></a>
|
||||
<p>
|
||||
<strong class="company">netzmacht </strong><br>
|
||||
David Molineus<br>
|
||||
</p>
|
||||
<p>
|
||||
DAB Bank München<br>
|
||||
IBAN: DE52701204008354237003<br>
|
||||
BIC: DABBDEMMXXX
|
||||
</p>
|
||||
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
|
||||
<input type="hidden" name="cmd" value="_s-xclick">
|
||||
<input type="hidden" name="hosted_button_id" value="YWMA95YS3FT6U">
|
||||
<input type="image" src="https://www.paypalobjects.com/en_GB/i/btn/btn_donate_SM.gif" border="0" name="submit" alt="PayPal – The safer, easier way to pay online.">
|
||||
<img alt="" border="0" src="https://www.paypalobjects.com/de_DE/i/scr/pixel.gif" width="1" height="1">
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tl_box">
|
||||
<h2>Support Contao Leaflet</h2>
|
||||
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<h3>Report issues</h3>
|
||||
<p>If you found a bug, got some troubles or have a feature request - feel free to open an issue.</p>
|
||||
<p><a href="http://github.com/netzmacht/contao-leaflet-maps/issues" class="btn" target="_blank">Issue tracker</a> </p>
|
||||
</div>
|
||||
<div class="col">
|
||||
<h3>Contribute</h3>
|
||||
<p>There are many ways you can con­tribute. Translations,
|
||||
docu­mentation or code contributions are welcome.
|
||||
</p>
|
||||
<p><a href="https://netzmacht/contao-leaflet/contribute.html" class="btn" target="_blank">Contribute</a> </p>
|
||||
</div>
|
||||
<div class="col">
|
||||
<h3>Fund a feature</h3>
|
||||
<p>Contao Leaflet is not feature complete. Have a look at the list of planned feature and support them.</p>
|
||||
<p><a href="https://netzmacht/contao-leaflet/planned-features.html" class="btn" target="_blank">Planned features</a> </p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
|
||||
<div class="col">
|
||||
<h3>Individual development</h3>
|
||||
<p>If you have special requirements you can hire me for an individual development.</p>
|
||||
<p><a href="https://netzmacht/contao-leaflet/contact.html" class="btn" target="_blank">Contact</a> </p>
|
||||
</div>
|
||||
<div class="col">
|
||||
<h3>Commercial license</h3>
|
||||
<p>If you want to remove the attribution in the attribution control, you can purchase a commercial license.</p>
|
||||
<p><a href="https://netzmacht/contao-leaflet/commercial-license.html" class="btn" target="_blank">Purchase license</a> </p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="tl_box">
|
||||
<h2>Credits</h2>
|
||||
<table class="tl_listing">
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Version</th>
|
||||
<th>License</th>
|
||||
<th>Homepage</th>
|
||||
</tr>
|
||||
<?php if ($this->libraries): ?>
|
||||
<tr><th colspan="4" class="subtitle">Libraries</th> </tr>
|
||||
<?php endif; ?>
|
||||
<?php foreach ($this->libraries as $library): ?>
|
||||
<tr>
|
||||
<td><?php echo $library['name']; ?></td>
|
||||
<td><?php echo $library['version']; ?></td>
|
||||
<td><?php echo $library['license']; ?></td>
|
||||
<td><?php echo $library['homepage']; ?></td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
<tr>
|
||||
<th class="subtitle" colspan="4">Graphics</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Farm Fresh-Web Icons</td>
|
||||
<td>3.9.2</td>
|
||||
<td><a href="http://creativecommons.org/licenses/by/3.0/us/" target="_blank">CC BY 3.0 US</a></td>
|
||||
<td><a href="http://www.fatcow.com/free-icons" target="_blank">fatcow.com/free-icons</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Web Blog Icons by SEM Labs</td>
|
||||
<td>3.9.2</td>
|
||||
<td><a href="http://creativecommons.org/licenses/by/4.0/" target="_blank">CC BY 4.0</a></td>
|
||||
<td><a href="http://semlabs.co.uk/" target="_blank">semlabs.co.uk</a></td>
|
||||
</tr>
|
||||
<?php if ($this->dependencies): ?>
|
||||
<tr><th colspan="4" class="subtitle">Dependencies</th> </tr>
|
||||
<?php endif; ?>
|
||||
<?php foreach ($this->dependencies as $dep): ?>
|
||||
<tr>
|
||||
<td><?php echo $dep['name']; ?></td>
|
||||
<td><?php echo $dep['version']; ?></td>
|
||||
<td><?php echo $dep['license']; ?></td>
|
||||
<td><?php echo $dep['homepage']; ?></td>
|
||||
</tr>
|
||||
<?php endforeach; ?>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1,6 +0,0 @@
|
||||
<div id="<?php echo $mapId; ?>" style="<?php echo $style; ?>"></div>
|
||||
<script>
|
||||
L.contao.addMap('<?php echo $mapId; ?>', function() {
|
||||
<?php echo $javascript; ?>
|
||||
return { map: map, layers: layers, controls: controls, icons: icons };
|
||||
}());</script>
|
||||
@@ -1,5 +0,0 @@
|
||||
L.contao.addMap('<?php echo $mapId; ?>', function() {
|
||||
<?php echo $javascript; ?>
|
||||
|
||||
return { map: map, layers: layers, controls: controls, icons: icons };
|
||||
}());
|
||||
@@ -4,10 +4,10 @@
|
||||
"description": "Leaflet maps for Contao",
|
||||
"main": "gulpfile.js",
|
||||
"dependencies": {
|
||||
"del": "^2.2.2",
|
||||
"del": "^3.0.0",
|
||||
"gulp": "^3.9.1",
|
||||
"gulp-concat": "^2.6.0",
|
||||
"gulp-uglify": "^2.0.0"
|
||||
"gulp-uglify": "^3.0.0"
|
||||
},
|
||||
"devDependencies": {},
|
||||
"scripts": {
|
||||
|
||||
@@ -1,13 +1,17 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* @package netzmacht
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2016 netzmacht David Molineus. All rights reserved.
|
||||
* @filesource
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Alias;
|
||||
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Filter\AbstractFilter;
|
||||
@@ -42,7 +46,7 @@ class DefaultAliasFilter extends AbstractFilter
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function repeatUntilValid()
|
||||
public function repeatUntilValid(): bool
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@@ -50,7 +54,7 @@ class DefaultAliasFilter extends AbstractFilter
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function apply($model, $value, $separator)
|
||||
public function apply($model, $value, string $separator): string
|
||||
{
|
||||
if (!$value) {
|
||||
return $this->prefix . $separator . $model->id;
|
||||
66
src/Alias/DefaultAliasGeneratorFactory.php
Normal file
66
src/Alias/DefaultAliasGeneratorFactory.php
Normal file
@@ -0,0 +1,66 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Alias;
|
||||
|
||||
use Doctrine\DBAL\Connection;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\AliasGenerator;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Factory\AliasGeneratorFactory;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Filter\ExistingAliasFilter;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Filter\SlugifyFilter;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Filter\SuffixFilter;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\FilterBasedAliasGenerator;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Validator\UniqueDatabaseValueValidator;
|
||||
|
||||
/**
|
||||
* Class DefaultAliasGeneratorFactory.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\Alias
|
||||
*/
|
||||
class DefaultAliasGeneratorFactory implements AliasGeneratorFactory
|
||||
{
|
||||
/**
|
||||
* Database connection.
|
||||
*
|
||||
* @var Connection
|
||||
*/
|
||||
private $connection;
|
||||
|
||||
/**
|
||||
* DefaultAliasGeneratorFactory constructor.
|
||||
*
|
||||
* @param Connection $connection Database connection.
|
||||
*/
|
||||
public function __construct(Connection $connection)
|
||||
{
|
||||
$this->connection = $connection;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function create(string $dataContainerName, string $aliasField, array $fields): AliasGenerator
|
||||
{
|
||||
$filters = [
|
||||
new ExistingAliasFilter(),
|
||||
new SlugifyFilter($fields),
|
||||
new DefaultAliasFilter($dataContainerName),
|
||||
new SuffixFilter(),
|
||||
];
|
||||
|
||||
$validator = new UniqueDatabaseValueValidator($this->connection, $dataContainerName, $aliasField);
|
||||
|
||||
return new FilterBasedAliasGenerator($filters, $validator, $dataContainerName, $aliasField, '_');
|
||||
}
|
||||
}
|
||||
66
src/Alias/ParentAliasGeneratorFactory.php
Normal file
66
src/Alias/ParentAliasGeneratorFactory.php
Normal file
@@ -0,0 +1,66 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Alias;
|
||||
|
||||
use Doctrine\DBAL\Connection;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\AliasGenerator;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Factory\AliasGeneratorFactory;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Filter\ExistingAliasFilter;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Filter\SlugifyFilter;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Filter\SuffixFilter;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\FilterBasedAliasGenerator;
|
||||
use Netzmacht\Contao\Toolkit\Data\Alias\Validator\UniqueDatabaseValueValidator;
|
||||
|
||||
/**
|
||||
* Alias generator validating against the parent id (pid).
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\Alias
|
||||
*/
|
||||
class ParentAliasGeneratorFactory implements AliasGeneratorFactory
|
||||
{
|
||||
/**
|
||||
* Database connection.
|
||||
*
|
||||
* @var Connection
|
||||
*/
|
||||
private $connection;
|
||||
|
||||
/**
|
||||
* DefaultAliasGeneratorFactory constructor.
|
||||
*
|
||||
* @param Connection $connection Database connection.
|
||||
*/
|
||||
public function __construct(Connection $connection)
|
||||
{
|
||||
$this->connection = $connection;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function create(string $dataContainerName, string $aliasField, array $fields): AliasGenerator
|
||||
{
|
||||
$filters = [
|
||||
new ExistingAliasFilter(),
|
||||
new SlugifyFilter($fields),
|
||||
new DefaultAliasFilter($dataContainerName),
|
||||
new SuffixFilter(),
|
||||
];
|
||||
|
||||
$validator = new UniqueDatabaseValueValidator($this->connection, $dataContainerName, $aliasField, ['pid']);
|
||||
|
||||
return new FilterBasedAliasGenerator($filters, $validator, $dataContainerName, $aliasField, '_');
|
||||
}
|
||||
}
|
||||
@@ -1,16 +1,19 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2016 netzmacht David Molineus
|
||||
* @license LGPL 3.0
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*
|
||||
*/
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Backend;
|
||||
|
||||
use Contao\BackendTemplate;
|
||||
|
||||
/**
|
||||
* Credits backend module.
|
||||
*
|
||||
@@ -25,7 +28,7 @@ class About
|
||||
*/
|
||||
public function generate()
|
||||
{
|
||||
$template = new \BackendTemplate('be_leaflet_about');
|
||||
$template = new BackendTemplate('be_leaflet_about');
|
||||
|
||||
$template->headline = 'Leaftlet maps integration for Contao CMS';
|
||||
$template->libraries = $this->getLibraries();
|
||||
@@ -47,18 +50,17 @@ class About
|
||||
return array_map(
|
||||
function ($library) {
|
||||
$library = array_merge(
|
||||
array(
|
||||
[
|
||||
'homepage' => null,
|
||||
'version' => null,
|
||||
),
|
||||
],
|
||||
$library
|
||||
);
|
||||
|
||||
if ($library['homepage']) {
|
||||
$library['homepage'] = sprintf(
|
||||
'<a href="%s" %s>%s</a>',
|
||||
'<a href="%s" target="_blank">%s</a>',
|
||||
$library['homepage'],
|
||||
LINK_NEW_WINDOW,
|
||||
preg_replace('#^(https?://(www)?)#i', '', $library['homepage'])
|
||||
);
|
||||
}
|
||||
@@ -81,34 +83,34 @@ class About
|
||||
*/
|
||||
private function extractFromComposer()
|
||||
{
|
||||
$extFile = TL_ROOT . '/composer/vendor/netzmacht/contao-leaflet-maps/composer.json';
|
||||
$lockFile = TL_ROOT . '/composer/composer.lock';
|
||||
$extFile = TL_ROOT . '/vendor/netzmacht/contao-leaflet-maps/composer.json';
|
||||
$lockFile = TL_ROOT . '/composer.lock';
|
||||
|
||||
if (!file_exists($extFile) || !file_exists($lockFile)) {
|
||||
return array();
|
||||
return [];
|
||||
}
|
||||
|
||||
$extension = json_decode(file_get_contents($extFile), true);
|
||||
$installed = json_decode(file_get_contents($lockFile), true);
|
||||
$deps = array();
|
||||
$deps = [];
|
||||
$version = null;
|
||||
|
||||
foreach ($installed['packages'] as $package) {
|
||||
if ($package['name'] === 'netzmacht/contao-leaflet-maps') {
|
||||
$version = $package['version'];
|
||||
} elseif (isset($extension['require'][$package['name']])) {
|
||||
$deps[] = array(
|
||||
$deps[] = [
|
||||
'name' => $package['name'],
|
||||
'version' => $package['version'],
|
||||
'license' => !empty($package['license']) ? implode(', ', $package['license']) : '',
|
||||
'homepage' => sprintf(
|
||||
'<a href="https://packagist.org/packages/%s" target="_blank">Visit packagist</a>',
|
||||
$package['name']
|
||||
)
|
||||
);
|
||||
),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
return array($version, $deps);
|
||||
return [$version, $deps];
|
||||
}
|
||||
}
|
||||
38
src/Backend/Renderer/Label/Layer/AbstractLabelRenderer.php
Normal file
38
src/Backend/Renderer/Label/Layer/AbstractLabelRenderer.php
Normal file
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer;
|
||||
|
||||
/**
|
||||
* Class AbstractLabelRenderer.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer
|
||||
*/
|
||||
abstract class AbstractLabelRenderer implements LayerLabelRenderer
|
||||
{
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function supports(array $row): bool
|
||||
{
|
||||
return $row['type'] === $this->getLayerType();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the supported layer type.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
abstract protected function getLayerType(): string;
|
||||
}
|
||||
70
src/Backend/Renderer/Label/Layer/ChainRenderer.php
Normal file
70
src/Backend/Renderer/Label/Layer/ChainRenderer.php
Normal file
@@ -0,0 +1,70 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer;
|
||||
|
||||
use Symfony\Component\Translation\TranslatorInterface as Translator;
|
||||
|
||||
/**
|
||||
* Class ChainRenderer.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer
|
||||
*/
|
||||
final class ChainRenderer implements LayerLabelRenderer
|
||||
{
|
||||
/**
|
||||
* List of layer label renderer.
|
||||
*
|
||||
* @var array|LayerLabelRenderer[]
|
||||
*/
|
||||
private $renderer;
|
||||
|
||||
/**
|
||||
* ChainRenderer constructor.
|
||||
*
|
||||
* @param array|LayerLabelRenderer[] $renderer List of layer label renderer.
|
||||
*/
|
||||
public function __construct($renderer)
|
||||
{
|
||||
$this->renderer = $renderer;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function supports(array $row): bool
|
||||
{
|
||||
foreach ($this->renderer as $renderer) {
|
||||
if ($renderer->supports($row)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function render(array $row, string $label, Translator $translator): string
|
||||
{
|
||||
foreach ($this->renderer as $renderer) {
|
||||
if ($renderer->supports($row)) {
|
||||
return $renderer->render($row, $label, $translator);
|
||||
}
|
||||
}
|
||||
|
||||
return $label;
|
||||
}
|
||||
}
|
||||
67
src/Backend/Renderer/Label/Layer/FileLabelRenderer.php
Normal file
67
src/Backend/Renderer/Label/Layer/FileLabelRenderer.php
Normal file
@@ -0,0 +1,67 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
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;
|
||||
|
||||
/**
|
||||
* Class FileLabelRenderer
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer
|
||||
*/
|
||||
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}
|
||||
*/
|
||||
protected function getLayerType(): string
|
||||
{
|
||||
return 'file';
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function render(array $row, string $label, Translator $translator): string
|
||||
{
|
||||
$repository = $this->repositoryManager->getRepository(FilesModel::class);
|
||||
$file = $repository->findByPk($row['file']);
|
||||
|
||||
if ($file) {
|
||||
$label .= ' <span class="tl_gray">(' . $file->path . ')</span>';
|
||||
}
|
||||
|
||||
return $label;
|
||||
}
|
||||
}
|
||||
45
src/Backend/Renderer/Label/Layer/LayerLabelRenderer.php
Normal file
45
src/Backend/Renderer/Label/Layer/LayerLabelRenderer.php
Normal file
@@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer;
|
||||
|
||||
use Symfony\Component\Translation\TranslatorInterface as Translator;
|
||||
|
||||
/**
|
||||
* Interface LayerLabelRenderer.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer
|
||||
*/
|
||||
interface LayerLabelRenderer
|
||||
{
|
||||
/**
|
||||
* Check if current row is supported.
|
||||
*
|
||||
* @param array $row Current row.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function supports(array $row): bool;
|
||||
|
||||
/**
|
||||
* Render the backend label of an layer.
|
||||
*
|
||||
* @param array $row Current row.
|
||||
* @param string $label Default label.
|
||||
* @param Translator $translator The translator.
|
||||
*
|
||||
* @return string
|
||||
*/
|
||||
public function render(array $row, string $label, Translator $translator): string;
|
||||
}
|
||||
68
src/Backend/Renderer/Label/Layer/MarkersLabelRenderer.php
Normal file
68
src/Backend/Renderer/Label/Layer/MarkersLabelRenderer.php
Normal file
@@ -0,0 +1,68 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
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;
|
||||
|
||||
/**
|
||||
* Class MarkersLabelRenderer.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer
|
||||
*/
|
||||
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}
|
||||
*/
|
||||
protected function getLayerType(): string
|
||||
{
|
||||
return 'markers';
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function render(array $row, string $label, Translator $translator): string
|
||||
{
|
||||
$repository = $this->repositoryManager->getRepository(MarkerModel::class);
|
||||
$count = $repository->countBy(['pid=?'], [$row['id']]);
|
||||
$label .= sprintf(
|
||||
'<span class="tl_gray"> (%s %s)</span>',
|
||||
$count,
|
||||
$translator->trans('countEntries', [], 'contao_tl_leaflet_layer')
|
||||
);
|
||||
|
||||
return $label;
|
||||
}
|
||||
}
|
||||
46
src/Backend/Renderer/Label/Layer/OverpassLabelRenderer.php
Normal file
46
src/Backend/Renderer/Label/Layer/OverpassLabelRenderer.php
Normal file
@@ -0,0 +1,46 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer;
|
||||
|
||||
use Contao\StringUtil;
|
||||
use Symfony\Component\Translation\TranslatorInterface as Translator;
|
||||
|
||||
/**
|
||||
* Class OverpassLabelRenderer.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer
|
||||
*/
|
||||
final class OverpassLabelRenderer extends AbstractLabelRenderer
|
||||
{
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function getLayerType(): string
|
||||
{
|
||||
return 'overpass';
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function render(array $row, string $label, Translator $translator): string
|
||||
{
|
||||
if ($row['overpassQuery']) {
|
||||
$label .= '<span class="tl_gray"> ' . StringUtil::substr($row['overpassQuery'], 50) . '</span>';
|
||||
}
|
||||
|
||||
return $label;
|
||||
}
|
||||
}
|
||||
52
src/Backend/Renderer/Label/Layer/ProviderLabelRenderer.php
Normal file
52
src/Backend/Renderer/Label/Layer/ProviderLabelRenderer.php
Normal file
@@ -0,0 +1,52 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer;
|
||||
|
||||
use Symfony\Component\Translation\TranslatorInterface as Translator;
|
||||
|
||||
/**
|
||||
* Backend label renderer for provider layer.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer
|
||||
*/
|
||||
final class ProviderLabelRenderer extends AbstractLabelRenderer
|
||||
{
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function getLayerType(): string
|
||||
{
|
||||
return 'provider';
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function render(array $row, string $label, Translator $translator): string
|
||||
{
|
||||
$langKey = 'leaflet_provider.' . $row['tile_provider'] . '.0';
|
||||
$translated = $translator->trans($langKey, [], 'contao_leaflet');
|
||||
|
||||
if ($translated !== $langKey) {
|
||||
$provider = $translated;
|
||||
} else {
|
||||
$provider = $row['tile_provider'];
|
||||
}
|
||||
|
||||
$label .= sprintf('<span class="tl_gray"> (%s)</span>', $provider);
|
||||
|
||||
return $label;
|
||||
}
|
||||
}
|
||||
67
src/Backend/Renderer/Label/Layer/ReferenceLabelRenderer.php
Normal file
67
src/Backend/Renderer/Label/Layer/ReferenceLabelRenderer.php
Normal file
@@ -0,0 +1,67 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
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;
|
||||
|
||||
/**
|
||||
* Class ReferenceLabelRenderer.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer
|
||||
*/
|
||||
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 'reference';
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function render(array $row, string $label, Translator $translator): string
|
||||
{
|
||||
$repository = $this->repositoryManager->getRepository(LayerModel::class);
|
||||
$reference = $repository->find((int) $row['reference']);
|
||||
|
||||
if ($reference) {
|
||||
$label .= '<span class="tl_gray"> (' . $reference->title . ')</span>';
|
||||
}
|
||||
|
||||
return $label;
|
||||
}
|
||||
}
|
||||
68
src/Backend/Renderer/Label/Layer/VectorsLabelRenderer.php
Normal file
68
src/Backend/Renderer/Label/Layer/VectorsLabelRenderer.php
Normal file
@@ -0,0 +1,68 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
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;
|
||||
|
||||
/**
|
||||
* Class VectorsLabelRenderer.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer
|
||||
*/
|
||||
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}
|
||||
*/
|
||||
protected function getLayerType(): string
|
||||
{
|
||||
return 'vectors';
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function render(array $row, string $label, Translator $translator): string
|
||||
{
|
||||
$repository = $this->repositoryManager->getRepository(VectorModel::class);
|
||||
$count = $repository->countBy(['pid=?'], [$row['id']]);
|
||||
$label .= sprintf(
|
||||
'<span class="tl_gray"> (%s %s)</span>',
|
||||
$count,
|
||||
$translator->trans('countEntries', [], 'contao_tl_leaflet_layer')
|
||||
);
|
||||
|
||||
return $label;
|
||||
}
|
||||
}
|
||||
42
src/Bundle/ContaoManager/Plugin.php
Normal file
42
src/Bundle/ContaoManager/Plugin.php
Normal file
@@ -0,0 +1,42 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Bundle\ContaoManager;
|
||||
|
||||
use Contao\CoreBundle\ContaoCoreBundle;
|
||||
use Contao\ManagerPlugin\Bundle\BundlePluginInterface;
|
||||
use Contao\ManagerPlugin\Bundle\Config\BundleConfig;
|
||||
use Contao\ManagerPlugin\Bundle\Parser\ParserInterface;
|
||||
use Netzmacht\Contao\Leaflet\Bundle\NetzmachtContaoLeafletBundle;
|
||||
use Netzmacht\Contao\Toolkit\Bundle\NetzmachtContaoToolkitBundle;
|
||||
|
||||
/**
|
||||
* Contao manager plugin.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\ContaoManager
|
||||
*/
|
||||
class Plugin implements BundlePluginInterface
|
||||
{
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function getBundles(ParserInterface $parser)
|
||||
{
|
||||
return [
|
||||
BundleConfig::create(NetzmachtContaoLeafletBundle::class)
|
||||
->setLoadAfter([ContaoCoreBundle::class, NetzmachtContaoToolkitBundle::class])
|
||||
->setReplace(['leaflet']),
|
||||
];
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Bundle\DependencyInjection;
|
||||
|
||||
use Symfony\Component\Config\FileLocator;
|
||||
use Symfony\Component\DependencyInjection\ContainerBuilder;
|
||||
use Symfony\Component\DependencyInjection\Loader\YamlFileLoader;
|
||||
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
|
||||
|
||||
/**
|
||||
* Class NetzmachtContaoLeafletExtension.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\DependencyInjection
|
||||
*/
|
||||
class NetzmachtContaoLeafletExtension extends Extension
|
||||
{
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function load(array $configs, ContainerBuilder $container)
|
||||
{
|
||||
$loader = new YamlFileLoader(
|
||||
$container,
|
||||
new FileLocator(dirname(__DIR__) . '/Resources/config')
|
||||
);
|
||||
|
||||
// Common config, services and listeners
|
||||
$loader->load('config.yml');
|
||||
$loader->load('services.yml');
|
||||
$loader->load('listeners.yml');
|
||||
|
||||
// Amenities and providers config
|
||||
$loader->load('amenities.yml');
|
||||
$loader->load('providers.yml');
|
||||
|
||||
// Other services
|
||||
$loader->load('mappers.yml');
|
||||
$loader->load('encoders.yml');
|
||||
$loader->load('layers.yml');
|
||||
|
||||
if (!$container->hasDefinition('netzmacht.contao_leaflet.cache')) {
|
||||
if ($container->getParameter('kernel.debug')) {
|
||||
$container->setAlias('netzmacht.contao_leaflet.cache', 'netzmacht.contao_leaflet.cache.debug');
|
||||
} else {
|
||||
$container->setAlias('netzmacht.contao_leaflet.cache', 'netzmacht.contao_leaflet.cache.default');
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Bundle\DependencyInjection\Pass;
|
||||
|
||||
use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerBuilder;
|
||||
use Symfony\Component\DependencyInjection\Reference;
|
||||
|
||||
/**
|
||||
* Register all definition mappers.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\DependencyInjection\Pass
|
||||
*/
|
||||
class RegisterDefinitionMapperPass implements CompilerPassInterface
|
||||
{
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function process(ContainerBuilder $container)
|
||||
{
|
||||
if (!$container->hasDefinition('netzmacht.contao_leaflet.definition.mapper')) {
|
||||
return;
|
||||
}
|
||||
|
||||
$definition = $container->getDefinition('netzmacht.contao_leaflet.definition.mapper');
|
||||
$taggedServices = $container->findTaggedServiceIds('netzmacht.contao_leaflet.mapper');
|
||||
|
||||
foreach ($taggedServices as $serviceId => $tags) {
|
||||
foreach ($tags as $attributes) {
|
||||
if (isset($attributes['priority'])) {
|
||||
$definition->addMethodCall('register', [new Reference($serviceId), (int) $attributes['priority']]);
|
||||
} else {
|
||||
$definition->addMethodCall('register', [new Reference($serviceId)]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
44
src/Bundle/DependencyInjection/Pass/RegisterEncodersPass.php
Normal file
44
src/Bundle/DependencyInjection/Pass/RegisterEncodersPass.php
Normal file
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Bundle\DependencyInjection\Pass;
|
||||
|
||||
use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerBuilder;
|
||||
use Symfony\Component\DependencyInjection\Reference;
|
||||
|
||||
/**
|
||||
* Register all definition encoders.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\DependencyInjection\Pass
|
||||
*/
|
||||
class RegisterEncodersPass implements CompilerPassInterface
|
||||
{
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function process(ContainerBuilder $container)
|
||||
{
|
||||
if (!$container->hasDefinition('netzmacht.contao_leaflet.definition.builder.event_dispatcher')) {
|
||||
return;
|
||||
}
|
||||
|
||||
$definition = $container->getDefinition('netzmacht.contao_leaflet.definition.builder.event_dispatcher');
|
||||
$serviceIds = $container->findTaggedServiceIds('netzmacht.contao_leaflet.encoder');
|
||||
|
||||
foreach (array_keys($serviceIds) as $serviceId) {
|
||||
$definition->addMethodCall('addSubscriber', [new Reference($serviceId)]);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Bundle\DependencyInjection\Pass;
|
||||
|
||||
use Netzmacht\LeafletPHP\Assets;
|
||||
use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
|
||||
use Symfony\Component\DependencyInjection\ContainerBuilder;
|
||||
|
||||
/**
|
||||
* Class RegisterLibrariesPass.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet\DependencyInjection\Pass
|
||||
*/
|
||||
class RegisterLibrariesPass implements CompilerPassInterface
|
||||
{
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function process(ContainerBuilder $container)
|
||||
{
|
||||
if (!$container->hasDefinition('netzmacht.contao_leaflet.definition.builder')) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!$container->hasParameter('netzmacht.contao_leaflet.libraries')) {
|
||||
return;
|
||||
}
|
||||
|
||||
$definition = $container->getDefinition('netzmacht.contao_leaflet.definition.builder');
|
||||
$libraries = $container->getParameter('netzmacht.contao_leaflet.libraries');
|
||||
|
||||
foreach ($libraries as $name => $assets) {
|
||||
if (!empty($assets['css'])) {
|
||||
list ($source, $type) = (array) $assets['css'];
|
||||
$definition->addMethodCall('registerStylesheet', [$name, $source, $type ?: Assets::TYPE_FILE]);
|
||||
}
|
||||
|
||||
if (!empty($assets['javascript'])) {
|
||||
list ($source, $type) = (array) $assets['javascript'];
|
||||
$definition->addMethodCall('registerJavascript', [$name, $source, $type ?: Assets::TYPE_FILE]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
46
src/Bundle/NetzmachtContaoLeafletBundle.php
Normal file
46
src/Bundle/NetzmachtContaoLeafletBundle.php
Normal file
@@ -0,0 +1,46 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 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);
|
||||
|
||||
namespace Netzmacht\Contao\Leaflet\Bundle;
|
||||
|
||||
use Netzmacht\Contao\Leaflet\Bundle\DependencyInjection\Pass\RegisterDefinitionMapperPass;
|
||||
use Netzmacht\Contao\Leaflet\Bundle\DependencyInjection\Pass\RegisterEncodersPass;
|
||||
use Netzmacht\Contao\Leaflet\Bundle\DependencyInjection\Pass\RegisterLibrariesPass;
|
||||
use Netzmacht\Contao\Toolkit\Bundle\DependencyInjection\Compiler\AddTaggedServicesAsArgumentPass;
|
||||
use Symfony\Component\DependencyInjection\ContainerBuilder;
|
||||
use Symfony\Component\HttpKernel\Bundle\Bundle;
|
||||
|
||||
/**
|
||||
* Class NetzmachtContaoLeafletBundle.
|
||||
*
|
||||
* @package Netzmacht\Contao\Leaflet
|
||||
*/
|
||||
class NetzmachtContaoLeafletBundle extends Bundle
|
||||
{
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function build(ContainerBuilder $container)
|
||||
{
|
||||
$container->addCompilerPass(new RegisterDefinitionMapperPass());
|
||||
$container->addCompilerPass(new RegisterEncodersPass());
|
||||
$container->addCompilerPass(new RegisterLibrariesPass());
|
||||
$container->addCompilerPass(
|
||||
new AddTaggedServicesAsArgumentPass(
|
||||
'netzmacht.contao_leaflet.layer_label_renderer',
|
||||
'netzmacht.contao_leaflet.layer_label_renderer'
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
202
src/Bundle/Resources/config/amenities.yml
Normal file
202
src/Bundle/Resources/config/amenities.yml
Normal file
@@ -0,0 +1,202 @@
|
||||
parameters:
|
||||
netzmacht.contao_leaflet.amenities:
|
||||
- 'administration'
|
||||
- 'advertising'
|
||||
- 'alm'
|
||||
- 'animal_boarding'
|
||||
- 'animal_breeding'
|
||||
- 'animal_shelter'
|
||||
- 'architect_office'
|
||||
- 'arts_centre'
|
||||
- 'artwork'
|
||||
- 'atm'
|
||||
- 'audiologist'
|
||||
- 'baby_hatch'
|
||||
- 'bank'
|
||||
- 'bar'
|
||||
- 'bbq'
|
||||
- 'bench'
|
||||
- 'bicycle_parking'
|
||||
- 'bicycle_rental'
|
||||
- 'bicycle_repair_station'
|
||||
- 'bicycle_trailer_sharing'
|
||||
- 'biergarten'
|
||||
- 'bikeshed'
|
||||
- 'boat_rental'
|
||||
- 'boat_sharing'
|
||||
- 'boat_storage'
|
||||
- 'brothel'
|
||||
- 'bts'
|
||||
- 'bureau_de_change'
|
||||
- 'bus_station'
|
||||
- 'cafe'
|
||||
- 'canoe_hire'
|
||||
- 'car_rental'
|
||||
- 'car_repair'
|
||||
- 'car_sharing'
|
||||
- 'car_wash'
|
||||
- 'casino'
|
||||
- 'charging_station'
|
||||
- 'childcare'
|
||||
- 'cinema'
|
||||
- 'citymap_post'
|
||||
- 'clinic'
|
||||
- 'clock'
|
||||
- 'club'
|
||||
- 'coast_guard'
|
||||
- 'coast_radar_station'
|
||||
- 'college'
|
||||
- 'community_center'
|
||||
- 'community_centre'
|
||||
- 'compressed_air'
|
||||
- 'concert_hall'
|
||||
- 'conference_centre'
|
||||
- 'courthouse'
|
||||
- 'coworking_space'
|
||||
- 'crematorium'
|
||||
- 'crucifix'
|
||||
- 'crypt'
|
||||
- 'customs'
|
||||
- 'dancing_school'
|
||||
- 'dead_pub'
|
||||
- 'dentist'
|
||||
- 'disused'
|
||||
- 'dive_centre'
|
||||
- 'doctors'
|
||||
- 'dog_bin'
|
||||
- 'dog_waste_bin'
|
||||
- 'dojo'
|
||||
- 'drinking_water'
|
||||
- '_driving_school'
|
||||
- 'education'
|
||||
- 'embassy'
|
||||
- 'emergency_phone'
|
||||
- 'emergency_service'
|
||||
- 'events_venue'
|
||||
- 'ev_charging'
|
||||
- 'exhibition_centre'
|
||||
- 'fast_food'
|
||||
- 'ferry_terminal'
|
||||
- 'festival_grounds'
|
||||
- 'financial_advice'
|
||||
- 'fire_hydrant'
|
||||
- 'fire_station'
|
||||
- 'first_aid'
|
||||
- 'fish_spa'
|
||||
- 'food_court'
|
||||
- 'fountain'
|
||||
- 'fuel'
|
||||
- 'gambling'
|
||||
- 'game_feeding'
|
||||
- 'garages'
|
||||
- 'grave_yard'
|
||||
- 'grit_bin'
|
||||
- 'harbourmaster'
|
||||
- 'hospice'
|
||||
- 'hospital'
|
||||
- 'hotel'
|
||||
- 'hunting_stand'
|
||||
- 'ice_cream'
|
||||
- 'internet_cafe'
|
||||
- 'jobcentre'
|
||||
- 'kindergarten'
|
||||
- 'kiosk'
|
||||
- 'kitchen'
|
||||
- 'Kneippbecken'
|
||||
- 'kneipp_water_cure'
|
||||
- 'language_school'
|
||||
- 'lavoir'
|
||||
- 'library'
|
||||
- 'lifeboat_station'
|
||||
- 'life_ring'
|
||||
- 'loading_dock'
|
||||
- 'love_hotel'
|
||||
- 'marae'
|
||||
- 'marketplace'
|
||||
- 'milk_dispenser'
|
||||
- 'mobile_library'
|
||||
- 'monastery'
|
||||
- 'money_transfer'
|
||||
- 'mortuary'
|
||||
- 'motorcycle_parking'
|
||||
- 'motorcycle_rental'
|
||||
- 'music_school'
|
||||
- 'music_venue'
|
||||
- 'nameplate'
|
||||
- 'nightclub'
|
||||
- 'nursery'
|
||||
- 'nursing_home'
|
||||
- 'park'
|
||||
- 'parking'
|
||||
- 'parking_entrance'
|
||||
- 'parking_space'
|
||||
- 'pharmacy'
|
||||
- 'photo_booth'
|
||||
- 'place_of_worship'
|
||||
- 'planetarium'
|
||||
- 'police'
|
||||
- 'post_box'
|
||||
- 'post_office'
|
||||
- 'preschool'
|
||||
- 'printer'
|
||||
- 'prison'
|
||||
- 'prison_camp'
|
||||
- 'proposed'
|
||||
- 'pub'
|
||||
- 'public_bath'
|
||||
- 'public_bookcase'
|
||||
- 'public_building'
|
||||
- 'public_hall'
|
||||
- 'ranger_station'
|
||||
- 'recycling'
|
||||
- 'refugee_housing'
|
||||
- 'register_office'
|
||||
- 'rescue_box'
|
||||
- 'rescue_station'
|
||||
- 'research_institute'
|
||||
- 'restaurant'
|
||||
- 'retirement_home'
|
||||
- 'sanatorium'
|
||||
- 'sanitary_dump_station'
|
||||
- 'sauna'
|
||||
- 'school'
|
||||
- 'scout_hut'
|
||||
- 'shelter'
|
||||
- 'shop'
|
||||
- 'shower'
|
||||
- 'ski_school'
|
||||
- 'smoking_area'
|
||||
- 'social_centre'
|
||||
- 'social_facility'
|
||||
- 'spa'
|
||||
- 'stables'
|
||||
- 'stripclub'
|
||||
- 'studio'
|
||||
- 'swimming_pool'
|
||||
- 'swingerclub'
|
||||
- 'table'
|
||||
- 'taxi'
|
||||
- 'telephone'
|
||||
- 'theatre'
|
||||
- 'ticket_booth'
|
||||
- 'ticket_validator'
|
||||
- 'toilets'
|
||||
- 'townhall'
|
||||
- 'trolley_bay'
|
||||
- 'university'
|
||||
- 'vacuum_cleaner'
|
||||
- 'vehicle_inspection'
|
||||
- 'vending_machine'
|
||||
- 'veterinary'
|
||||
- 'vivarium'
|
||||
- 'wash_center'
|
||||
- 'waste_basket'
|
||||
- 'waste_disposal'
|
||||
- 'waste_transfer_station'
|
||||
- 'water'
|
||||
- 'watering_place'
|
||||
- 'water_point'
|
||||
- 'weighbridge'
|
||||
- 'winery'
|
||||
- 'yacht_club'
|
||||
- 'youth_centre'
|
||||
72
src/Bundle/Resources/config/config.yml
Normal file
72
src/Bundle/Resources/config/config.yml
Normal file
@@ -0,0 +1,72 @@
|
||||
parameters:
|
||||
# leaflet controls.
|
||||
#
|
||||
# Supported leaflet control types. Register your type for the database driven definition here.
|
||||
netzmacht.contao_leaflet.controls:
|
||||
- 'zoom'
|
||||
- 'layers'
|
||||
- 'scale'
|
||||
- 'attribution'
|
||||
- 'loading'
|
||||
- 'fullscreen'
|
||||
|
||||
# Leaflet icons.
|
||||
#
|
||||
# Supported leaflet icon types. Register you type for the database driven definition here.
|
||||
netzmacht.contao_leaflet.icons:
|
||||
- 'image'
|
||||
- 'div'
|
||||
- 'extra'
|
||||
|
||||
# The style concept is not part of the LeafletJS library. Styles are extracted from the Path options. Instead
|
||||
# of defining the style for every vector again, manage them at one place.
|
||||
#
|
||||
# The goal is to provide different style strategies. For instance a random style chooser, one which uses a color
|
||||
# range and so one.
|
||||
netzmacht.contao_leaflet.styles:
|
||||
- 'fixed'
|
||||
|
||||
# Leaflet vectors.
|
||||
#
|
||||
# Supported leaflet vector types. Register you type for the database driven definition here.
|
||||
netzmacht.contao_leaflet.vectors:
|
||||
- 'polyline'
|
||||
- 'polygon'
|
||||
- 'multiPolyline'
|
||||
- 'multiPolygon'
|
||||
- 'rectangle'
|
||||
- 'circle'
|
||||
- 'circleMarker'
|
||||
|
||||
netzmacht.contao_leaflet.file_formats:
|
||||
gpx: ['gpx']
|
||||
kml: ['kml']
|
||||
wkt: ['wkt']
|
||||
geojson: ['json', 'geojson']
|
||||
topojson: ['json', 'topojson']
|
||||
|
||||
# When creating a GeoJSON feature of a map object a feature.properties.model object is passed.
|
||||
# Define the properties you always want to set.
|
||||
#
|
||||
# For more control you can subscribe the ConvertToGeoJsonEvent.
|
||||
#
|
||||
# The entry can be a string or an array. If an array is passed, the 2nd value is the type. Following types
|
||||
# are supported.
|
||||
# - array: Use deserialize before adding the value
|
||||
# - file: Thread value a uuid and find the path.
|
||||
# - files: Thread values as a list of file uuids and get an array of paths.
|
||||
netzmacht.contao_leaflet.feature_model_properties:
|
||||
tl_leaflet_marker:
|
||||
- 'id'
|
||||
- 'title'
|
||||
- 'alias'
|
||||
|
||||
tl_leaflet_vector:
|
||||
- 'id'
|
||||
- 'title'
|
||||
- 'alias'
|
||||
|
||||
# Filters can be passed to a data request to get only specific data from a layer.
|
||||
netzmacht.contao_leaflet.filters:
|
||||
bbox: Netzmacht\Contao\Leaflet\Filter\BboxFilter
|
||||
distance: Netzmacht\Contao\Leaflet\Filter\DistanceFilter
|
||||
47
src/Bundle/Resources/config/encoders.yml
Normal file
47
src/Bundle/Resources/config/encoders.yml
Normal file
@@ -0,0 +1,47 @@
|
||||
# Leaflet encoders.
|
||||
#
|
||||
# The encoders transforms the definitions into javascript. The encoders has to be an implementation of the
|
||||
# EventSubscriberInterface of the event dispatcher.
|
||||
services:
|
||||
_defaults:
|
||||
public: false
|
||||
|
||||
netzmacht.contao_leaflet.encoder.map:
|
||||
class: Netzmacht\LeafletPHP\Encoder\MapEncoder
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.encoder }
|
||||
|
||||
netzmacht.contao_leaflet.encoder.control:
|
||||
class: Netzmacht\LeafletPHP\Encoder\ControlEncoder
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.encoder }
|
||||
|
||||
netzmacht.contao_leaflet.encoder.group:
|
||||
class: Netzmacht\LeafletPHP\Encoder\GroupEncoder
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.encoder }
|
||||
|
||||
netzmacht.contao_leaflet.encoder.raster:
|
||||
class: Netzmacht\LeafletPHP\Encoder\RasterEncoder
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.encoder }
|
||||
|
||||
netzmacht.contao_leaflet.encoder.vector:
|
||||
class: Netzmacht\LeafletPHP\Encoder\VectorEncoder
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.encoder }
|
||||
|
||||
netzmacht.contao_leaflet.encoder.ui:
|
||||
class: Netzmacht\LeafletPHP\Encoder\UIEncoder
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.encoder }
|
||||
|
||||
netzmacht.contao_leaflet.encoder.type:
|
||||
class: Netzmacht\LeafletPHP\Encoder\TypeEncoder
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.encoder }
|
||||
|
||||
netzmacht.contao_leaflet.encoder.subscriber:
|
||||
class: Netzmacht\Contao\Leaflet\Encoder\Subscriber\EncoderSubscriber
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.encoder }
|
||||
99
src/Bundle/Resources/config/layers.yml
Normal file
99
src/Bundle/Resources/config/layers.yml
Normal file
@@ -0,0 +1,99 @@
|
||||
# Leaflet layer types.
|
||||
#
|
||||
# The type is used for the database driven definitions.
|
||||
parameters:
|
||||
netzmacht.contao_leaflet.layers:
|
||||
provider:
|
||||
children: false
|
||||
icon: 'bundles/netzmachtcontaoleaflet/img/provider.png'
|
||||
|
||||
group:
|
||||
children: true
|
||||
icon: 'bundles/netzmachtcontaoleaflet/img/group.png'
|
||||
|
||||
markers:
|
||||
children: false
|
||||
icon: 'bundles/netzmachtcontaoleaflet/img/markers.png'
|
||||
markers: true
|
||||
boundsMode:
|
||||
extend: true
|
||||
fit: 'deferred'
|
||||
|
||||
vectors:
|
||||
children: false
|
||||
icon: 'bundles/netzmachtcontaoleaflet/img/vectors.png'
|
||||
vectors: true
|
||||
boundsMode:
|
||||
extend: true
|
||||
|
||||
reference:
|
||||
children: false
|
||||
icon: 'bundles/netzmachtcontaoleaflet/img/reference.png'
|
||||
|
||||
markercluster:
|
||||
children: true
|
||||
icon: 'bundles/netzmachtcontaoleaflet/img/markercluster.png'
|
||||
|
||||
tile:
|
||||
children: false
|
||||
icon: 'bundles/netzmachtcontaoleaflet/img/tile.png'
|
||||
|
||||
overpass:
|
||||
children: false
|
||||
icon: 'bundles/netzmachtcontaoleaflet/img/overpass.png'
|
||||
boundsMode:
|
||||
extend: true
|
||||
fit: true
|
||||
|
||||
file:
|
||||
children: false
|
||||
icon: 'bundles/netzmachtcontaoleaflet/img/file.png'
|
||||
boundsMode:
|
||||
extend: true
|
||||
|
||||
services:
|
||||
_defaults:
|
||||
public: false
|
||||
|
||||
netzmacht.contao_leaflet.layer_label_renderer:
|
||||
class: Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer\ChainRenderer
|
||||
arguments:
|
||||
- []
|
||||
|
||||
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' }
|
||||
|
||||
netzmacht.contao_leaflet.layer_label_renderer.overpass:
|
||||
class: Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer\OverpassLabelRenderer
|
||||
tags:
|
||||
- { name: 'netzmacht.contao_leaflet.layer_label_renderer' }
|
||||
|
||||
netzmacht.contao_leaflet.layer_label_renderer.provider:
|
||||
class: Netzmacht\Contao\Leaflet\Backend\Renderer\Label\Layer\ProviderLabelRenderer
|
||||
tags:
|
||||
- { name: 'netzmacht.contao_leaflet.layer_label_renderer' }
|
||||
|
||||
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' }
|
||||
115
src/Bundle/Resources/config/listeners.yml
Normal file
115
src/Bundle/Resources/config/listeners.yml
Normal file
@@ -0,0 +1,115 @@
|
||||
services:
|
||||
netzmacht.contao_leaflet.listeners.dca.leaflet:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\Dca\LeafletDcaListener
|
||||
public: true
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@templating'
|
||||
- '@filesystem'
|
||||
- '@netzmacht.contao_toolkit.contao.system_adapter'
|
||||
- '%netzmacht.contao_leaflet.cache_dir%'
|
||||
|
||||
netzmacht.contao_leaflet.listeners.dca.validator:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\Dca\Validator
|
||||
public: true
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.dca.manager'
|
||||
- '@translator'
|
||||
|
||||
netzmacht.contao_leaflet.listeners.dca.frontend_integration:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\Dca\FrontendIntegrationListener
|
||||
public: true
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@translator'
|
||||
|
||||
netzmacht.contao_leaflet.listeners.dca.map:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\Dca\MapDcaListener
|
||||
public: true
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.dca.manager'
|
||||
- '@database_connection'
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
|
||||
netzmacht.contao_leaflet.listeners.dca.control:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\Dca\ControlDcaListener
|
||||
public: true
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.dca.manager'
|
||||
- '@database_connection'
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '%netzmacht.contao_leaflet.controls%'
|
||||
|
||||
netzmacht.contao_leaflet.listeners.dca.layer:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\Dca\LayerDcaListener
|
||||
public: true
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.dca.manager'
|
||||
- '@database_connection'
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@translator'
|
||||
- '@netzmacht.contao_leaflet.layer_label_renderer'
|
||||
- '@netzmacht.contao_toolkit.contao.backend_adapter'
|
||||
- '%netzmacht.contao_leaflet.layers%'
|
||||
- '%netzmacht.contao_leaflet.providers%'
|
||||
- '%netzmacht.contao_leaflet.amenities%'
|
||||
- '%netzmacht.contao_leaflet.file_formats%'
|
||||
|
||||
netzmacht.contao_leaflet.listeners.dca.marker:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\Dca\MarkerDcaListener
|
||||
public: true
|
||||
arguments:
|
||||
- '@database_connection'
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
|
||||
netzmacht.contao_leaflet.listeners.dca.vector:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\Dca\VectorDcaListener
|
||||
public: true
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.dca.manager'
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '%netzmacht.contao_leaflet.vectors%'
|
||||
|
||||
netzmacht.contao_leaflet.listeners.dca.icon:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\Dca\IconDcaListener
|
||||
public: true
|
||||
arguments:
|
||||
- '%netzmacht.contao_leaflet.icons%'
|
||||
|
||||
netzmacht.contao_leaflet.listeners.dca.style:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\Dca\StyleDcaListener
|
||||
public: true
|
||||
arguments:
|
||||
- '%netzmacht.contao_leaflet.styles%'
|
||||
|
||||
netzmacht.contao_leaflet.listeners.geo_json_listener:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\GeoJsonListener
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '%netzmacht.contao_leaflet.feature_model_properties%'
|
||||
tags:
|
||||
- { name: 'kernel.event_listener', event: 'netzmacht.contao_leaflet.mapper.convert_to_geojson', method: 'handle' }
|
||||
|
||||
netzmacht.contao_leaflet.listeners.hash_subscriber:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\HashSubscriber
|
||||
tags:
|
||||
- { name: 'kernel.event_subscriber' }
|
||||
|
||||
netzmacht.contao_leaflet.listeners.load_assets:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\LoadAssetsListener
|
||||
arguments:
|
||||
- '@netzmacht.contao_leaflet.map.assets'
|
||||
- '@netzmacht.contao_leaflet.definition.mapper'
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@netzmacht.contao_leaflet.libraries'
|
||||
tags:
|
||||
- { name: 'kernel.event_listener', event: 'netzmacht.contao_leaflet.get_javascript', method: 'onGetJavascriptEvent' }
|
||||
|
||||
netzmacht.contao_leaflet.listeners.register_libraries:
|
||||
class: Netzmacht\Contao\Leaflet\Listener\RegisterLibrariesListener
|
||||
public: true
|
||||
arguments:
|
||||
- '@netzmacht.contao_leaflet.libraries'
|
||||
- '@netzmacht.contao_leaflet.definition.builder'
|
||||
tags:
|
||||
- { name: 'contao.hook', hook: 'initializeSystem', method: 'onInitializeSystem' }
|
||||
208
src/Bundle/Resources/config/mappers.yml
Normal file
208
src/Bundle/Resources/config/mappers.yml
Normal file
@@ -0,0 +1,208 @@
|
||||
# Leaflet mappers.
|
||||
#
|
||||
# Mappers translate between the database models and the leaflet definition.
|
||||
services:
|
||||
_defaults:
|
||||
public: false
|
||||
|
||||
|
||||
# Map mapper
|
||||
netzmacht.contao_leaflet.mapper.map:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\MapMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
|
||||
# Layer mappers
|
||||
netzmacht.contao_leaflet.mapper.tile_layer:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Layer\TileLayerMapper
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.provider_layer:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Layer\ProviderLayerMapper
|
||||
arguments:
|
||||
- '%netzmacht.contao_leaflet.providers%'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.markers_layer:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Layer\MarkersLayerMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.group_layer:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Layer\GroupLayerMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.vectors_layer:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Layer\VectorsLayerMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.reference_layer:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Layer\ReferenceLayerMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.overpass_layer:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Layer\OverpassLayerMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.marker_cluster_layer:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Layer\MarkerClusterLayerMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_leaflet.map.assets'
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leflet_maps.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.file_layer:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Layer\FileLayerMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
# Control mappers
|
||||
netzmacht.contao_leaflet.mapper.zoom_control:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Control\ZoomControlMapper
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.scale_control:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Control\ScaleControlMapper
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.layers_control:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Control\LayersControlMapper
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.attribution_control:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Control\AttributionControlMapper
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.loading_control:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Control\LoadingControlMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.fullscreen_control:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Control\FullscreenControlMapper
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
|
||||
# Vector mappers
|
||||
netzmacht.contao_leaflet.mapper.polyline:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Vector\PolylineMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@netzmacht.contao_leaflet.frontend.value_filter'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.multi_polyline:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Vector\MultiPolylineMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@netzmacht.contao_leaflet.frontend.value_filter'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.polygon:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Vector\PolygonMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@netzmacht.contao_leaflet.frontend.value_filter'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.multi_polygon:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Vector\MultiPolygonMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@netzmacht.contao_leaflet.frontend.value_filter'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.circle:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Vector\CircleMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@netzmacht.contao_leaflet.frontend.value_filter'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.circle_mapper:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Vector\CircleMarkerMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@netzmacht.contao_leaflet.frontend.value_filter'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.rectangle_mapper:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Vector\RectangleMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@netzmacht.contao_leaflet.frontend.value_filter'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
|
||||
# Miscellaneous mappers
|
||||
netzmacht.contao_leaflet.mapper.popup:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\UI\PopupMapper
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.image_icon:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Type\ImageIconMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.div_icon:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Type\DivIconMapper
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.extra_markers:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Type\ExtraMarkersIconMapper
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.fixed_style:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\Style\FixedStyleMapper
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
netzmacht.contao_leaflet.mapper.marker:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\UI\MarkerMapper
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@netzmacht.contao_leaflet.frontend.value_filter'
|
||||
tags:
|
||||
- { name: netzmacht.contao_leaflet.mapper }
|
||||
|
||||
157
src/Bundle/Resources/config/providers.yml
Normal file
157
src/Bundle/Resources/config/providers.yml
Normal file
@@ -0,0 +1,157 @@
|
||||
parameters:
|
||||
netzmacht.contao_leaflet.providers:
|
||||
OpenStreetMap:
|
||||
variants: ['Mapnik', 'BlackAndWhite', 'DE', 'France', 'HOT', 'BZH']
|
||||
|
||||
OpenSeaMap: []
|
||||
|
||||
OpenTopoMap: []
|
||||
|
||||
Thunderforest:
|
||||
variants:
|
||||
- 'OpenCycleMap'
|
||||
- 'Transport'
|
||||
- 'TransportDark'
|
||||
- 'SpinalMap'
|
||||
- 'Landscape'
|
||||
- 'Outdoors'
|
||||
- 'Pioneer'
|
||||
|
||||
OpenMapSurfer:
|
||||
variants: ['Roads', 'AdminBounds', 'Grayscale']
|
||||
|
||||
Hydda:
|
||||
variants: ['Full', 'Base', 'RoadsAndLabels']
|
||||
|
||||
MapBox:
|
||||
class: 'Netzmacht\LeafletPHP\Plugins\LeafletProviders\MapBoxProvider'
|
||||
options:
|
||||
key: 'tile_provider_key'
|
||||
|
||||
Stamen:
|
||||
variants:
|
||||
- 'Toner'
|
||||
- 'TonerBackground'
|
||||
- 'TonerHybrid'
|
||||
- 'TonerLines'
|
||||
- 'TonerLabels'
|
||||
- 'TonerLite'
|
||||
- 'Terrain'
|
||||
- 'TerrainBackground'
|
||||
- 'TopOSMRelief'
|
||||
- 'TopOSMFeatures'
|
||||
- 'Watercolor'
|
||||
|
||||
Esri:
|
||||
variants:
|
||||
- 'WorldStreetMap'
|
||||
- 'DeLorme'
|
||||
- 'WorldTopoMap'
|
||||
- 'WorldImagery'
|
||||
- 'WorldTerrain'
|
||||
- 'WorldShadedRelief'
|
||||
- 'WorldPhysical'
|
||||
- 'OceanBasemap'
|
||||
- 'NatGeoWorldMap'
|
||||
- 'WorldGrayCanvas'
|
||||
|
||||
OpenWeatherMap:
|
||||
variants:
|
||||
- 'Clouds'
|
||||
- 'CloudsClassic'
|
||||
- 'Precipitation'
|
||||
- 'PrecipitationClassic'
|
||||
- 'Rain'
|
||||
- 'RainClassic'
|
||||
- 'Pressure'
|
||||
- 'PressureContour'
|
||||
- 'Wind'
|
||||
- 'Temperature'
|
||||
- 'Snow'
|
||||
|
||||
HERE:
|
||||
class: 'Netzmacht\LeafletPHP\Plugins\LeafletProviders\HereProvider'
|
||||
variants:
|
||||
- 'normalDay'
|
||||
- 'normalDayCustom'
|
||||
- 'normalDayGrey'
|
||||
- 'normalDayMobile'
|
||||
- 'normalDayGreyMobile'
|
||||
- 'normalDayTransit'
|
||||
- 'normalDayTransitMobile'
|
||||
- 'normalNight'
|
||||
- 'normalNightMobile'
|
||||
- 'normalNightGrey'
|
||||
- 'normalNightGreyMobile'
|
||||
- 'basicMap'
|
||||
- 'mapLabels'
|
||||
- 'trafficFlow'
|
||||
- 'carnavDayGrey'
|
||||
- 'hybridDay'
|
||||
- 'hybridDayMobile'
|
||||
- 'pedestrianDay'
|
||||
- 'pedestrianNight'
|
||||
- 'satelliteDay'
|
||||
- 'terrainDay'
|
||||
- 'terrainDayMobile'
|
||||
options:
|
||||
appId: 'tile_provider_key'
|
||||
appCode: 'tile_provider_code'
|
||||
fields: ['tile_provider_key', 'tile_provider_code']
|
||||
|
||||
JusticeMap:
|
||||
variants:
|
||||
- 'income'
|
||||
- 'americanIndian'
|
||||
- 'asian'
|
||||
- 'black'
|
||||
- 'hispanic'
|
||||
- 'multi'
|
||||
- 'nonWhite'
|
||||
- 'white'
|
||||
- 'plurality'
|
||||
|
||||
FreeMapSK: []
|
||||
|
||||
MtbMap: []
|
||||
|
||||
CartoDB:
|
||||
variants:
|
||||
- 'Positron'
|
||||
- 'PositronNoLabels'
|
||||
- 'PositronOnlyLabels'
|
||||
- 'DarkMatter'
|
||||
- 'DarkMatterNoLabels'
|
||||
- 'DarkMatterOnlyLabels'
|
||||
|
||||
HikeBike:
|
||||
variants:
|
||||
- 'HikeBike'
|
||||
- 'HillShading'
|
||||
|
||||
BasemapAT:
|
||||
variants:
|
||||
- 'basemap'
|
||||
- 'grau'
|
||||
- 'overlay'
|
||||
- 'highdpi'
|
||||
- 'orthofoto'
|
||||
|
||||
nlmaps:
|
||||
variants:
|
||||
- 'standaard'
|
||||
- 'pastel'
|
||||
- 'grijs'
|
||||
- 'luchtfoto'
|
||||
|
||||
NASAGIBS:
|
||||
variants:
|
||||
- 'ModisTerraTrueColorCR'
|
||||
- 'ModisTerraBands367CR'
|
||||
- 'ViirsEarthAtNight2012'
|
||||
- 'ModisTerraLSTDay'
|
||||
- 'ModisTerraSnowCover'
|
||||
- 'ModisTerraAOD'
|
||||
- 'ModisTerraChlorophyll'
|
||||
|
||||
NLS: []
|
||||
124
src/Bundle/Resources/config/services.yml
Normal file
124
src/Bundle/Resources/config/services.yml
Normal file
@@ -0,0 +1,124 @@
|
||||
parameters:
|
||||
netzmacht.contao_leaflet.cache_dir: '%kernel.cache_dir%/leaflet'
|
||||
|
||||
# JSON_UNESCAPED_SLASHES ^ Netzmacht\JavascriptBuilder\Flags::BUILD_STACK
|
||||
netzmacht.contao_leaflet.encoding_flags: 16448
|
||||
|
||||
services:
|
||||
netzmacht.contao_leaflet.map.provider:
|
||||
class: Netzmacht\Contao\Leaflet\MapProvider
|
||||
arguments:
|
||||
- '@netzmacht.contao_leaflet.definition.mapper'
|
||||
- '@netzmacht.contao_leaflet.definition.builder'
|
||||
- '@event_dispatcher'
|
||||
- '@netzmacht.contao_toolkit.contao.input_adapter'
|
||||
- '@netzmacht.contao_leaflet.map.assets'
|
||||
- '@netzmacht.contao_leaflet.cache'
|
||||
- '@netzmacht.contao_leaflet.frontend.data_controller'
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@templating'
|
||||
|
||||
netzmacht.contao_leaflet.libraries:
|
||||
class: Netzmacht\Contao\Leaflet\Frontend\Assets\LibrariesConfiguration
|
||||
arguments:
|
||||
- '@contao.framework'
|
||||
|
||||
netzmacht.contao_leaflet.filter_factory:
|
||||
class: Netzmacht\Contao\Leaflet\Filter\FilterFactory
|
||||
arguments:
|
||||
- '%netzmacht.contao_leaflet.filters%'
|
||||
|
||||
netzmacht.contao_leaflet.cache.default:
|
||||
class: Doctrine\Common\Cache\FilesystemCache
|
||||
arguments:
|
||||
- '%netzmacht.contao_leaflet.cache_dir%'
|
||||
|
||||
netzmacht.contao_leaflet.cache.debug:
|
||||
class: Doctrine\Common\Cache\ArrayCache
|
||||
|
||||
netzmacht.contao_leaflet.frontend.value_filter:
|
||||
class: Netzmacht\Contao\Leaflet\Frontend\ValueFilter
|
||||
arguments:
|
||||
- '@contao.framework'
|
||||
|
||||
netzmacht.contao_leaflet.map.assets:
|
||||
class: Netzmacht\Contao\Leaflet\Encoder\ContaoAssets
|
||||
arguments:
|
||||
- '@netzmacht.contao_toolkit.assets_manager'
|
||||
|
||||
netzmacht.contao_leaflet.definition.builder:
|
||||
class: Netzmacht\LeafletPHP\Leaflet
|
||||
arguments:
|
||||
- '@netzmacht.contao_leaflet.definition.builder.javascript_builder'
|
||||
- '@netzmacht.contao_leaflet.definition.builder.event_dispatcher'
|
||||
- []
|
||||
- '%netzmacht.contao_leaflet.encoding_flags%'
|
||||
|
||||
netzmacht.contao_leaflet.definition.builder.javascript_builder:
|
||||
class: Netzmacht\JavascriptBuilder\Builder
|
||||
arguments:
|
||||
- '@netzmacht.contao_leaflet.definition.encoder_factory'
|
||||
|
||||
netzmacht.contao_leaflet.definition.builder.event_dispatcher:
|
||||
class: Symfony\Component\EventDispatcher\EventDispatcher
|
||||
|
||||
netzmacht.contao_leaflet.definition.mapper:
|
||||
class: Netzmacht\Contao\Leaflet\Mapper\DefinitionMapper
|
||||
arguments:
|
||||
- '@event_dispatcher'
|
||||
|
||||
netzmacht.contao_leaflet.definition.encoder_factory:
|
||||
class: Netzmacht\Contao\Leaflet\Encoder\EncoderFactory
|
||||
arguments:
|
||||
- '@netzmacht.contao_leaflet.definition.builder.event_dispatcher'
|
||||
|
||||
netzmacht.contao_leaflet.definition.alias_generator.factory_default:
|
||||
class: Netzmacht\Contao\Leaflet\Alias\DefaultAliasGeneratorFactory
|
||||
public: true
|
||||
arguments:
|
||||
- '@database_connection'
|
||||
|
||||
netzmacht.contao_leaflet.definition.alias_generator.factory_parent:
|
||||
class: Netzmacht\Contao\Leaflet\Alias\ParentAliasGeneratorFactory
|
||||
public: true
|
||||
arguments:
|
||||
- '@database_connection'
|
||||
|
||||
netzmacht.contao_leaflet.frontend.element_factory:
|
||||
class: Netzmacht\Contao\Leaflet\Frontend\ContentElement\MapElementFactory
|
||||
arguments:
|
||||
- '@templating'
|
||||
- '@translator'
|
||||
- '@netzmacht.contao_leaflet.map.provider'
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@netzmacht.contao_toolkit.contao.input_adapter'
|
||||
tags:
|
||||
- { name: 'netzmacht.contao_toolkit.component.content_element_factory' }
|
||||
- { name: 'netzmacht.contao_toolkit.component.content_element', alias: 'leaflet', category: 'includes' }
|
||||
|
||||
netzmacht.contao_leaflet.frontend.module_factory:
|
||||
class: Netzmacht\Contao\Leaflet\Frontend\Module\MapModuleFactory
|
||||
arguments:
|
||||
- '@templating'
|
||||
- '@translator'
|
||||
- '@netzmacht.contao_leaflet.map.provider'
|
||||
- '@netzmacht.contao_toolkit.repository_manager'
|
||||
- '@netzmacht.contao_toolkit.contao.input_adapter'
|
||||
tags:
|
||||
- { name: 'netzmacht.contao_toolkit.component.frontend_module_factory' }
|
||||
- { name: 'netzmacht.contao_toolkit.component.frontend_module', alias: 'leaflet', category: 'includes' }
|
||||
|
||||
netzmacht.contao_leaflet.frontend.insert_tag:
|
||||
class: Netzmacht\Contao\Leaflet\Frontend\InsertTag\LeafletInsertTagParser
|
||||
public: true
|
||||
arguments:
|
||||
- '@netzmacht.contao_leaflet.map.provider'
|
||||
- '%kernel.debug%'
|
||||
tags:
|
||||
- { name: 'contao.hook', hook: 'replaceInsertTags', method: 'replace' }
|
||||
|
||||
netzmacht.contao_leaflet.frontend.data_controller:
|
||||
class: Netzmacht\Contao\Leaflet\Frontend\DataController
|
||||
arguments:
|
||||
- '@netzmacht.contao_leaflet.filter_factory'
|
||||
- '%kernel.debug%'
|
||||
67
src/Bundle/Resources/contao/config/config.php
Normal file
67
src/Bundle/Resources/contao/config/config.php
Normal file
@@ -0,0 +1,67 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
/*
|
||||
* Backend module.
|
||||
*/
|
||||
|
||||
array_insert(
|
||||
$GLOBALS['BE_MOD'],
|
||||
1,
|
||||
[
|
||||
'leaflet' => [
|
||||
'leaflet_map' => [
|
||||
'tables' => [
|
||||
'tl_leaflet_map',
|
||||
'tl_leaflet_control',
|
||||
],
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/map.png',
|
||||
'stylesheet' => 'bundles/netzmachtcontaoleaflet/css/backend.css',
|
||||
],
|
||||
'leaflet_layer' => [
|
||||
'tables' => [
|
||||
'tl_leaflet_layer',
|
||||
'tl_leaflet_marker',
|
||||
'tl_leaflet_vector',
|
||||
'tl_leaflet_icon',
|
||||
'tl_leaflet_style',
|
||||
'tl_leaflet_popup',
|
||||
],
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/layers.png',
|
||||
'stylesheet' => 'bundles/netzmachtcontaoleaflet/css/backend.css',
|
||||
'javascript' => 'bundles/netzmachtcontaoleaflet/js/backend.js',
|
||||
],
|
||||
'leaflet_about' => [
|
||||
'callback' => Netzmacht\Contao\Leaflet\Backend\About::class,
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/about.png',
|
||||
'stylesheet' => 'bundles/netzmachtcontaoleaflet/css/about.css',
|
||||
],
|
||||
],
|
||||
]
|
||||
);
|
||||
|
||||
if (TL_MODE === 'BE') {
|
||||
$GLOBALS['TL_CSS'][] = 'bundles/netzmachtcontaoleaflet/css/backend_global.css';
|
||||
}
|
||||
|
||||
/*
|
||||
* Models.
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_control'] = \Netzmacht\Contao\Leaflet\Model\ControlModel::class;
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_icon'] = \Netzmacht\Contao\Leaflet\Model\IconModel::class;
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_layer'] = \Netzmacht\Contao\Leaflet\Model\LayerModel::class;
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_map'] = \Netzmacht\Contao\Leaflet\Model\MapModel::class;
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_marker'] = \Netzmacht\Contao\Leaflet\Model\MarkerModel::class;
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_popup'] = \Netzmacht\Contao\Leaflet\Model\PopupModel::class;
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_style'] = \Netzmacht\Contao\Leaflet\Model\StyleModel::class;
|
||||
$GLOBALS['TL_MODELS']['tl_leaflet_vector'] = \Netzmacht\Contao\Leaflet\Model\VectorModel::class;
|
||||
85
src/Bundle/Resources/contao/dca/tl_content.php
Normal file
85
src/Bundle/Resources/contao/dca/tl_content.php
Normal file
@@ -0,0 +1,85 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_content']['metapalettes']['leaflet'] = [
|
||||
'type' => ['type', 'headline'],
|
||||
'leaflet' => ['leaflet_map', 'leaflet_mapId', 'leaflet_width', 'leaflet_height'],
|
||||
'templates' => [':hide', 'customTpl', 'leaflet_template'],
|
||||
'protected' => [':hide', 'protected'],
|
||||
'expert' => [':hide', 'guests', 'cssID', 'space'],
|
||||
'invisible' => [':hide', 'invisible', 'start', 'start'],
|
||||
];
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_content']['fields']['leaflet_map'] = [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_content']['leaflet_map'],
|
||||
'inputType' => 'select',
|
||||
'exclude' => true,
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.frontend_integration', 'getMaps'],
|
||||
'wizard' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.frontend_integration', 'getEditMapLink'],
|
||||
],
|
||||
'eval' => [
|
||||
'tl_class' => 'w50 wizard',
|
||||
'chosen' => true,
|
||||
],
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
];
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_content']['fields']['leaflet_mapId'] = [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_content']['leaflet_mapId'],
|
||||
'inputType' => 'text',
|
||||
'exclude' => true,
|
||||
'eval' => [
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'maxlength' => 16,
|
||||
],
|
||||
'sql' => "varchar(16) NOT NULL default ''",
|
||||
];
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_content']['fields']['leaflet_width'] = [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_content']['leaflet_width'],
|
||||
'inputType' => 'inputUnit',
|
||||
'options' => ['px', '%', 'em', 'pt', 'pc', 'in', 'cm', 'mm'],
|
||||
'search' => false,
|
||||
'exclude' => true,
|
||||
'eval' => ['rgxp' => 'digit', 'tl_class' => 'clr w50'],
|
||||
'sql' => "varchar(64) NOT NULL default ''",
|
||||
];
|
||||
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_content']['fields']['leaflet_height'] = [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_content']['leaflet_height'],
|
||||
'inputType' => 'inputUnit',
|
||||
'options' => ['px', '%', 'em', 'pt', 'pc', 'in', 'cm', 'mm'],
|
||||
'search' => false,
|
||||
'exclude' => true,
|
||||
'eval' => ['rgxp' => 'digit', 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(64) NOT NULL default ''",
|
||||
];
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_content']['fields']['leaflet_template'] = [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_content']['leaflet_template'],
|
||||
'inputType' => 'select',
|
||||
'exclude' => true,
|
||||
'options_callback' => ['netzmacht.contao_toolkit.dca.listeners.template_options', 'handleOptionsCallback'],
|
||||
'eval' => [
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
],
|
||||
'toolkit' => [
|
||||
'template_options' => [
|
||||
'prefix' => 'leaflet_map_js',
|
||||
],
|
||||
],
|
||||
'sql' => "varchar(64) NOT NULL default ''",
|
||||
];
|
||||
409
src/Bundle/Resources/contao/dca/tl_leaflet_control.php
Normal file
409
src/Bundle/Resources/contao/dca/tl_leaflet_control.php
Normal file
@@ -0,0 +1,409 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_control'] = [
|
||||
'config' => [
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'ptable' => 'tl_leaflet_map',
|
||||
'sql' => [
|
||||
'keys' => [
|
||||
'id' => 'primary',
|
||||
'pid' => 'index',
|
||||
],
|
||||
],
|
||||
'onload_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'loadLanguageFile'],
|
||||
],
|
||||
'onsubmit_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
|
||||
// List configuration
|
||||
'list' => [
|
||||
'sorting' => [
|
||||
'mode' => 4,
|
||||
'fields' => ['sorting'],
|
||||
'headerFields' => ['title'],
|
||||
'flag' => 1,
|
||||
'sorting' => 2,
|
||||
'panelLayout' => 'filter,sort;search,limit',
|
||||
'child_record_callback' => ['netzmacht.contao_leaflet.listeners.dca.control', 'generateRow'],
|
||||
],
|
||||
'label' => [
|
||||
'fields' => ['title'],
|
||||
'format' => '%s',
|
||||
],
|
||||
'global_operations' => [
|
||||
'all' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"',
|
||||
],
|
||||
],
|
||||
'operations' => [
|
||||
'edit' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'header.gif',
|
||||
],
|
||||
'copy' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif',
|
||||
],
|
||||
'delete' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm']
|
||||
. '\'))return false;Backend.getScrollOffset()"',
|
||||
],
|
||||
'toggle' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();return AjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => [
|
||||
'netzmacht.contao_toolkit.dca.listeners.state_button_callback',
|
||||
'handleButtonCallback',
|
||||
],
|
||||
'toolkit' => [
|
||||
'state_button' => [
|
||||
'stateColumn' => 'active',
|
||||
],
|
||||
],
|
||||
],
|
||||
'show' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'palettes' => [
|
||||
'__selector__' => ['type'],
|
||||
],
|
||||
|
||||
'metapalettes' => [
|
||||
'default' => [
|
||||
'name' => ['title', 'alias', 'type', 'position'],
|
||||
'config' => [],
|
||||
'active' => ['active'],
|
||||
],
|
||||
'zoom extends default' => [
|
||||
'config' => ['zoomInText', 'zoomOutText', 'zoomInTitle', 'zoomOutTitle'],
|
||||
],
|
||||
'layers extends default' => [
|
||||
'config' => ['layers', 'collapsed', 'autoZIndex'],
|
||||
],
|
||||
'scale extends default' => [
|
||||
'config' => ['maxWidth', 'metric', 'imperial', 'updateWhenIdle'],
|
||||
],
|
||||
'attribution extends default' => [
|
||||
'config' => ['attributions', 'prefix', 'disableDefault'],
|
||||
],
|
||||
'loading extends default' => [
|
||||
'config' => ['separate', 'zoomControl', 'spinjs'],
|
||||
],
|
||||
'fullscreen extends default' => [
|
||||
'config' => ['buttonTitle', 'separate', 'simulateFullScreen'],
|
||||
],
|
||||
],
|
||||
|
||||
'metasubpalettes' => [
|
||||
'spinjs' => ['spin'],
|
||||
],
|
||||
|
||||
'fields' => [
|
||||
'id' => [
|
||||
'sql' => 'int(10) unsigned NOT NULL auto_increment',
|
||||
],
|
||||
'pid' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'tstamp' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'sorting' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
'sorting' => true,
|
||||
],
|
||||
'title' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'sorting' => true,
|
||||
'search' => true,
|
||||
'flag' => 1,
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'alias' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_toolkit.dca.listeners.alias_generator', 'handleSaveCallback'],
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateAlias'],
|
||||
],
|
||||
'eval' => [
|
||||
'mandatory' => false,
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'toolkit' => [
|
||||
'alias_generator' => [
|
||||
'factory' => 'netzmacht.contao_leaflet.definition.alias_generator.factory_parent',
|
||||
'fields' => ['title'],
|
||||
],
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'type' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['type'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'eval' => [
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'submitOnChange' => true,
|
||||
'chosen' => true,
|
||||
'helpwizard' => true,
|
||||
],
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.control', 'getControlTypes'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['leaflet_control'],
|
||||
'sql' => "varchar(32) NOT NULL default ''",
|
||||
],
|
||||
'position' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['position'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'options' => ['topleft', 'topright', 'bottomleft', 'bottomright'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_control'],
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50', 'helpwizard' => true],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'active' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['active'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
'zoomInText' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['zoomInText'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'zoomOutText' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['zoomInText'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'zoomInTitle' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['zoomInTitle'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'zoomOutTitle' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['zoomOutTitle'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'collapsed' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['collapsed'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => '1',
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'autoZIndex' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['autoZIndex'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => '1',
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'layers' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['layers'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'multiColumnWizard',
|
||||
'load_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.control', 'loadLayerRelations'],
|
||||
],
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.control', 'saveLayerRelations'],
|
||||
],
|
||||
'eval' => [
|
||||
'tl_class' => 'leaflet-mcw leaflet-mcw-control-layers',
|
||||
'columnFields' => [
|
||||
'layer' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['layer'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.control', 'getLayers'],
|
||||
'eval' => [
|
||||
'style' => 'width: 300px',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true,
|
||||
],
|
||||
],
|
||||
'mode' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['layerMode'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options' => ['base', 'overlay'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_control'],
|
||||
'eval' => [
|
||||
'style' => 'width: 200px',
|
||||
'helpwizard' => true,
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
'sql' => 'mediumblob NULL',
|
||||
],
|
||||
'maxWidth' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['maxWidth'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 100,
|
||||
'eval' => ['tl_class' => 'w50', 'rgxp' => 'digit'],
|
||||
'sql' => "int(5) NOT NULL default '100'",
|
||||
],
|
||||
'metric' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['metric'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => '1',
|
||||
'eval' => ['tl_class' => 'w50 clr'],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'imperial' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['imperial'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => '1',
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'updateWhenIdle' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['updateWhenIdle'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'prefix' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['prefix'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'attributions' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['attributions'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'listWizard',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'clr', 'allowHtml' => true],
|
||||
'sql' => 'mediumblob NULL',
|
||||
],
|
||||
'separate' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['separate'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => ['tl_class' => 'w50 m12'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'zoomControl' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['zoomControl'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.control', 'getZoomControls'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_control'],
|
||||
'eval' => [
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true,
|
||||
],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'spinjs' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['spinjs'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'spin' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['spin'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => [
|
||||
'style' => 'height:60px',
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|json',
|
||||
'tl_class' => 'clr',
|
||||
],
|
||||
'sql' => 'mediumtext NULL',
|
||||
],
|
||||
'simulateFullScreen' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['simulateFullScreen'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => ['tl_class' => 'w50 m12'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'buttonTitle' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['buttonTitle'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'disableDefault' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['disableDefault'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50 m12'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
],
|
||||
];
|
||||
44
src/Bundle/Resources/contao/dca/tl_leaflet_control_layer.php
Normal file
44
src/Bundle/Resources/contao/dca/tl_leaflet_control_layer.php
Normal file
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_control_layer'] = [
|
||||
'config' => [
|
||||
'dataContainer' => 'Table',
|
||||
'sql' => [
|
||||
'keys' => [
|
||||
'id' => 'primary',
|
||||
'cid,lid' => 'unique',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'fields' => [
|
||||
'id' => [
|
||||
'sql' => 'int(10) unsigned NOT NULL auto_increment',
|
||||
],
|
||||
'tstamp' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'sorting' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'cid' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'lid' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'mode' => [
|
||||
'sql' => "varchar(16) NOT NULL default ''",
|
||||
],
|
||||
],
|
||||
];
|
||||
418
src/Bundle/Resources/contao/dca/tl_leaflet_icon.php
Normal file
418
src/Bundle/Resources/contao/dca/tl_leaflet_icon.php
Normal file
@@ -0,0 +1,418 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_icon'] = [
|
||||
'config' => [
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'sql' => [
|
||||
'keys' => [
|
||||
'id' => 'primary',
|
||||
'alias' => 'unique',
|
||||
],
|
||||
],
|
||||
'onsubmit_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
|
||||
'list' => [
|
||||
'sorting' => [
|
||||
'mode' => 1,
|
||||
'fields' => ['title'],
|
||||
'flag' => 1,
|
||||
'panelLayout' => 'limit',
|
||||
'headerFields' => ['title', 'type'],
|
||||
],
|
||||
'label' => [
|
||||
'fields' => ['title', 'type'],
|
||||
'format' => '%s <span class="tl_gray">[%s]</span>',
|
||||
],
|
||||
'global_operations' => [
|
||||
'layers' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['layersBtn'],
|
||||
'href' => 'table=tl_leaflet_layer',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/layers.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"',
|
||||
],
|
||||
'styles' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['styles'],
|
||||
'href' => 'table=tl_leaflet_style',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/style.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"',
|
||||
],
|
||||
'popups' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['popups'],
|
||||
'href' => 'table=tl_leaflet_popup',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/popup.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"',
|
||||
],
|
||||
'all' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"',
|
||||
],
|
||||
],
|
||||
'operations' => [
|
||||
'edit' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'edit.gif',
|
||||
],
|
||||
'copy' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif',
|
||||
],
|
||||
'delete' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm']
|
||||
. '\'))return false;Backend.getScrollOffset()"',
|
||||
],
|
||||
'toggle' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();return AjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => [
|
||||
'netzmacht.contao_toolkit.dca.listeners.state_button_callback',
|
||||
'handleButtonCallback',
|
||||
],
|
||||
'toolkit' => [
|
||||
'state_button' => [
|
||||
'stateColumn' => 'active',
|
||||
],
|
||||
],
|
||||
],
|
||||
'show' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'palettes' => [
|
||||
'__selector__' => ['type'],
|
||||
],
|
||||
|
||||
'metapalettes' => [
|
||||
'default' => [
|
||||
'title' => ['title', 'alias', 'type'],
|
||||
],
|
||||
'image extends default' => [
|
||||
'config' => [
|
||||
'iconImage',
|
||||
'iconRetinaImage',
|
||||
'iconAnchor',
|
||||
'popupAnchor',
|
||||
'className',
|
||||
],
|
||||
'shadow' => [
|
||||
'shadowImage',
|
||||
'shadowRetinaImage',
|
||||
'shadowAnchor',
|
||||
],
|
||||
'active' => [
|
||||
'active',
|
||||
],
|
||||
],
|
||||
|
||||
'div extends default' => [
|
||||
'config' => [
|
||||
'html',
|
||||
'iconSize',
|
||||
'iconAnchor',
|
||||
'popupAnchor',
|
||||
'className',
|
||||
],
|
||||
'active' => [
|
||||
'active',
|
||||
],
|
||||
],
|
||||
|
||||
'extra extends default' => [
|
||||
'config' => [
|
||||
'icon',
|
||||
'prefix',
|
||||
'shape',
|
||||
'markerColor',
|
||||
'number',
|
||||
'iconColor',
|
||||
],
|
||||
'active' => [
|
||||
'active',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'fields' => [
|
||||
'id' => [
|
||||
'sql' => 'int(10) unsigned NOT NULL auto_increment',
|
||||
],
|
||||
'tstamp' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'title' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'alias' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_toolkit.dca.listeners.alias_generator', 'handleSaveCallback'],
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateAlias'],
|
||||
],
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true],
|
||||
'toolkit' => [
|
||||
'alias_generator' => [
|
||||
'factory' => 'netzmacht.contao_leaflet.definition.alias_generator.factory_default',
|
||||
'fields' => ['title'],
|
||||
],
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'type' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['type'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'eval' => [
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'submitOnChange' => true,
|
||||
'chosen' => true,
|
||||
],
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.icon', 'getIconOptions'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['leaflet_icon'],
|
||||
'sql' => "varchar(32) NOT NULL default ''",
|
||||
],
|
||||
'active' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['active'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
'iconImage' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconImage'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'fileTree',
|
||||
'eval' => [
|
||||
'filesOnly' => true,
|
||||
'fieldType' => 'radio',
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'clr',
|
||||
'extensions' => 'gif,png,svg,jpg',
|
||||
],
|
||||
'sql' => 'binary(16) NULL',
|
||||
],
|
||||
'iconRetinaImage' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconRetinaImage'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'fileTree',
|
||||
'eval' => [
|
||||
'filesOnly' => true,
|
||||
'fieldType' => 'radio',
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'clr',
|
||||
'extensions' => 'gif,png,svg,jpg',
|
||||
],
|
||||
'sql' => 'binary(16) NULL',
|
||||
],
|
||||
'shadowImage' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['shadowImage'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'fileTree',
|
||||
'eval' => [
|
||||
'filesOnly' => true,
|
||||
'fieldType' => 'radio',
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'clr',
|
||||
'extensions' => 'gif,png,svg,jpg',
|
||||
],
|
||||
'sql' => 'binary(16) NULL',
|
||||
],
|
||||
'shadowRetinaImage' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['shadowRetinaImage'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'fileTree',
|
||||
'eval' => [
|
||||
'filesOnly' => true,
|
||||
'fieldType' => 'radio',
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'clr',
|
||||
'extensions' => 'gif,png,svg,jpg',
|
||||
],
|
||||
'sql' => 'binary(16) NULL',
|
||||
],
|
||||
'iconAnchor' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconAnchor'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateCoordinates'],
|
||||
],
|
||||
'eval' => [
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'shadowAnchor' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['shadowAnchor'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateCoordinates'],
|
||||
],
|
||||
'eval' => [
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'popupAnchor' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['popupAnchor'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateCoordinates'],
|
||||
],
|
||||
'eval' => [
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'className' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['className'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 64, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(64) NOT NULL default ''",
|
||||
],
|
||||
'iconSize' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconSize'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => [
|
||||
'maxlength' => 64,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'varchar(64) NULL',
|
||||
],
|
||||
'html' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_control']['html'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => [
|
||||
'style' => 'height:60px',
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|html',
|
||||
'tl_class' => 'clr',
|
||||
],
|
||||
'sql' => 'mediumtext NULL',
|
||||
],
|
||||
'icon' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['icon'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => [
|
||||
'maxlength' => 64,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'varchar(64) NULL',
|
||||
],
|
||||
'prefix' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['prefix'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => [
|
||||
'maxlength' => 64,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'varchar(64) NULL',
|
||||
],
|
||||
'shape' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['shape'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'default' => 'circle',
|
||||
'options' => ['circle', 'square', 'star', 'penta'],
|
||||
'eval' => [
|
||||
'tl_class' => 'w50',
|
||||
],
|
||||
'sql' => 'varchar(64) NULL',
|
||||
],
|
||||
'iconColor' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconColor'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'wizard' => [
|
||||
['netzmacht.contao_toolkit.dca.listeners.color_picker', 'handleWizardCallback'],
|
||||
],
|
||||
'eval' => [
|
||||
'maxlength' => 64,
|
||||
'tl_class' => 'w50 wizard',
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'varchar(16) NULL',
|
||||
],
|
||||
'markerColor' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_icon']['markerColor'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'default' => 'circle',
|
||||
'options' => [
|
||||
'blue',
|
||||
'red',
|
||||
'orange-dark',
|
||||
'orange',
|
||||
'yellow',
|
||||
'blue-dark',
|
||||
'cyan',
|
||||
'purple',
|
||||
'violet',
|
||||
'pink',
|
||||
'green-dark',
|
||||
'green',
|
||||
'green-light',
|
||||
'black',
|
||||
'white',
|
||||
],
|
||||
'eval' => [
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'varchar(16) NULL',
|
||||
],
|
||||
],
|
||||
];
|
||||
900
src/Bundle/Resources/contao/dca/tl_leaflet_layer.php
Normal file
900
src/Bundle/Resources/contao/dca/tl_leaflet_layer.php
Normal file
@@ -0,0 +1,900 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_layer'] = [
|
||||
'config' => [
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'ctable' => ['tl_leaflet_vector', 'tl_leaflet_marker'],
|
||||
'ondelete_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.layer', 'deleteRelations'],
|
||||
],
|
||||
'sql' => [
|
||||
'keys' => [
|
||||
'id' => 'primary',
|
||||
'pid' => 'index',
|
||||
'alias' => 'unique',
|
||||
],
|
||||
],
|
||||
'onload_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'loadLanguageFile'],
|
||||
],
|
||||
'onsubmit_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
'list' => [
|
||||
'sorting' => [
|
||||
'mode' => 5,
|
||||
'fields' => ['title'],
|
||||
'flag' => 1,
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/layers.png',
|
||||
'panelLayout' => 'filter;search,limit',
|
||||
'paste_button_callback' => ['netzmacht.contao_leaflet.listeners.dca.layer', 'getPasteButtons'],
|
||||
],
|
||||
'label' => [
|
||||
'fields' => ['title'],
|
||||
'format' => '%s',
|
||||
'label_callback' => ['netzmacht.contao_leaflet.listeners.dca.layer', 'generateRow'],
|
||||
],
|
||||
'global_operations' => [
|
||||
'styles' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['styles'],
|
||||
'href' => 'table=tl_leaflet_style',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/style.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"',
|
||||
],
|
||||
'icons' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['icons'],
|
||||
'href' => 'table=tl_leaflet_icon',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/icons.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"',
|
||||
],
|
||||
'popups' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['popups'],
|
||||
'href' => 'table=tl_leaflet_popup',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/popup.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"',
|
||||
],
|
||||
'all' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"',
|
||||
],
|
||||
],
|
||||
'operations' => [
|
||||
'markers' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['markers'],
|
||||
'href' => 'table=tl_leaflet_marker',
|
||||
'icon' => 'edit.gif',
|
||||
'button_callback' => ['netzmacht.contao_leaflet.listeners.dca.layer', 'generateMarkersButton'],
|
||||
],
|
||||
'vectors' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['vectors'],
|
||||
'href' => 'table=tl_leaflet_vector',
|
||||
'icon' => 'edit.gif',
|
||||
'button_callback' => ['netzmacht.contao_leaflet.listeners.dca.layer', 'generateVectorsButton'],
|
||||
],
|
||||
'edit' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'header.gif',
|
||||
],
|
||||
'copy' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif',
|
||||
],
|
||||
'cut' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['cut'],
|
||||
'href' => 'act=paste&mode=cut',
|
||||
'icon' => 'cut.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset()"',
|
||||
],
|
||||
'delete' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm']
|
||||
. '\'))return false;Backend.getScrollOffset()"',
|
||||
],
|
||||
'toggle' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();
|
||||
return ContaoLeafletAjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => [
|
||||
'netzmacht.contao_toolkit.dca.listeners.state_button_callback',
|
||||
'handleButtonCallback',
|
||||
],
|
||||
'toolkit' => [
|
||||
'state_button' => [
|
||||
'stateColumn' => 'active',
|
||||
],
|
||||
],
|
||||
],
|
||||
'show' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'palettes' => [
|
||||
'__selector__' => ['type'],
|
||||
],
|
||||
|
||||
'metapalettes' => [
|
||||
'default' => [
|
||||
'title' => ['title', 'alias', 'type'],
|
||||
'config' => [],
|
||||
'style' => [],
|
||||
'expert' => [':hide'],
|
||||
'active' => ['active'],
|
||||
],
|
||||
'markers extends default' => [
|
||||
'+expert' => ['pointToLayer'],
|
||||
'+config' => ['boundsMode', 'deferred'],
|
||||
],
|
||||
'group extends default' => [
|
||||
'+title' => ['groupType'],
|
||||
'+active' => ['boundsMode'],
|
||||
],
|
||||
'vectors extends default' => [
|
||||
'+expert' => ['onEachFeature', 'pointToLayer'],
|
||||
'+config' => ['boundsMode', 'deferred'],
|
||||
],
|
||||
'reference extends default' => [
|
||||
'+title' => ['reference', 'standalone'],
|
||||
],
|
||||
'markercluster extends default' => [
|
||||
'config' => [
|
||||
'showCoverageOnHover',
|
||||
'zoomToBoundsOnClick',
|
||||
'removeOutsideVisibleBounds',
|
||||
'animateAddingMarkers',
|
||||
'spiderfyOnMaxZoom',
|
||||
'disableClusteringAtZoom',
|
||||
'maxClusterRadius',
|
||||
'singleMarkerMode',
|
||||
],
|
||||
'+expert' => [
|
||||
'polygonOptions',
|
||||
'iconCreateFunction',
|
||||
'disableDefaultStyle',
|
||||
],
|
||||
],
|
||||
'tile extends default' => [
|
||||
'config' => [
|
||||
'tileUrl',
|
||||
'subdomains',
|
||||
'attribution',
|
||||
'minZoom',
|
||||
'maxZoom',
|
||||
],
|
||||
'+expert' => [
|
||||
'errorTileUrl',
|
||||
'tileSize',
|
||||
'tms',
|
||||
'continuousWorld',
|
||||
'noWrap',
|
||||
'zoomReverse',
|
||||
'zoomOffset',
|
||||
'maxNativeZoom',
|
||||
'opacity',
|
||||
'zIndex',
|
||||
'unloadvisibleTiles',
|
||||
'updateWhenIdle',
|
||||
'detectRetina',
|
||||
'reuseTiles',
|
||||
'bounds',
|
||||
],
|
||||
],
|
||||
'overpass extends default' => [
|
||||
'config' => [
|
||||
'overpassQuery',
|
||||
'boundsMode',
|
||||
'minZoom',
|
||||
'overpassEndpoint',
|
||||
'overpassPopup',
|
||||
],
|
||||
'style' => [
|
||||
'amenityIcons',
|
||||
],
|
||||
'+expert' => [
|
||||
'onEachFeature',
|
||||
'pointToLayer',
|
||||
],
|
||||
],
|
||||
|
||||
'file extends default' => [
|
||||
'+config' => ['boundsMode', 'fileFormat'],
|
||||
'+expert' => [
|
||||
'onEachFeature',
|
||||
'pointToLayer',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'metasubselectpalettes' => [
|
||||
'type' => [
|
||||
'provider' => ['tile_provider', 'tile_provider_variant'],
|
||||
],
|
||||
'tile_provider' => [
|
||||
'MapBox' => ['tile_provider_key'],
|
||||
'HERE' => ['tile_provider_key', 'tile_provider_code'],
|
||||
],
|
||||
'fileFormat' => [
|
||||
'!' => ['file']
|
||||
]
|
||||
],
|
||||
|
||||
'metasubpalettes' => [
|
||||
'spiderfyOnMaxZoom' => ['spiderfyDistanceMultiplier'],
|
||||
'deferred' => ['cache'],
|
||||
'cache' => ['cacheLifeTime'],
|
||||
],
|
||||
|
||||
'fields' => [
|
||||
'id' => [
|
||||
'sql' => 'int(10) unsigned NOT NULL auto_increment',
|
||||
],
|
||||
'pid' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'sorting' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'tstamp' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'title' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'alias' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_toolkit.dca.listeners.alias_generator', 'handleSaveCallback'],
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateAlias'],
|
||||
],
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true],
|
||||
'toolkit' => [
|
||||
'alias_generator' => [
|
||||
'factory' => 'netzmacht.contao_leaflet.definition.alias_generator.factory_default',
|
||||
'fields' => ['title'],
|
||||
],
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'type' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['type'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'filter' => true,
|
||||
'eval' => [
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'submitOnChange' => true,
|
||||
'chosen' => true,
|
||||
'helpwizard' => true,
|
||||
],
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.layer', 'getLayerOptions'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['leaflet_layer'],
|
||||
'sql' => "varchar(32) NOT NULL default ''",
|
||||
],
|
||||
'active' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['active'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
'tile_provider' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tile_provider'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'eval' => [
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50 clr',
|
||||
'includeBlankOption' => true,
|
||||
'submitOnChange' => true,
|
||||
'chosen' => true,
|
||||
],
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.layer', 'getProviderOptions'],
|
||||
'sql' => "varchar(32) NOT NULL default ''",
|
||||
],
|
||||
'tile_provider_variant' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tile_provider_variant'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'eval' => [
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'w50',
|
||||
'submitOnChange' => true,
|
||||
'chosen' => false,
|
||||
],
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.layer', 'getVariants'],
|
||||
'sql' => "varchar(32) NOT NULL default ''",
|
||||
],
|
||||
'tile_provider_key' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tile_provider_key'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 255, 'tl_class' => 'clr w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'tile_provider_code' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tile_provider_code'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'deferred' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['deferred'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50 m12', 'submitOnChange' => true, 'isBoolean' => true],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'groupType' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['groupType'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'eval' => [
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'submitOnChange' => true,
|
||||
'helpwizard' => true,
|
||||
],
|
||||
'default' => 'layer',
|
||||
'options' => ['layer', 'feature'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['groupTypes'],
|
||||
'sql' => "varchar(32) NOT NULL default ''",
|
||||
],
|
||||
'reference' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['reference'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.layer', 'getLayers'],
|
||||
'eval' => [
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true,
|
||||
],
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'standalone' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['standalone'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => false, 'isBoolean' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'onEachFeature' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['onEachFeature'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => [
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|javascript',
|
||||
'tl_class' => 'clr',
|
||||
],
|
||||
'sql' => 'mediumtext NULL',
|
||||
],
|
||||
'pointToLayer' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['pointToLayer'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => [
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|javascript',
|
||||
'tl_class' => 'clr',
|
||||
],
|
||||
'sql' => 'mediumtext NULL',
|
||||
],
|
||||
'showCoverageOnHover' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['showCoverageOnHover'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => false, 'isBoolean' => true],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'zoomToBoundsOnClick' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['zoomToBoundsOnClick'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => false, 'isBoolean' => true],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'spiderfyOnMaxZoom' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['spiderfyOnMaxZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50 m12', 'submitOnChange' => true, 'isBoolean' => true],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'removeOutsideVisibleBounds' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['removeOutsideVisibleBounds'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => false, 'isBoolean' => true],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'animateAddingMarkers' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['animateAddingMarkers'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => false, 'isBoolean' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'disableClusteringAtZoom' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['disableClusteringAtZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.leaflet', 'getZoomLevels'],
|
||||
'default' => null,
|
||||
'eval' => [
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'int(4) NULL',
|
||||
],
|
||||
'maxClusterRadius' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['maxClusterRadius'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => ['maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true],
|
||||
'sql' => 'int(5) NULL',
|
||||
],
|
||||
'singleMarkerMode' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['singleMarkerMode'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50 m12', 'submitOnChange' => false, 'isBoolean' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'polygonOptions' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['polygonOptions'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => [
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|json',
|
||||
'tl_class' => 'clr',
|
||||
],
|
||||
'sql' => 'mediumtext NULL',
|
||||
],
|
||||
'spiderfyDistanceMultiplier' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['spiderfyDistanceMultiplier'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => ['maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true],
|
||||
'sql' => 'int(5) NULL',
|
||||
],
|
||||
'iconCreateFunction' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['iconCreateFunction'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => [
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|javascript',
|
||||
'tl_class' => 'clr',
|
||||
],
|
||||
'sql' => 'mediumtext NULL',
|
||||
],
|
||||
'disableDefaultStyle' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['disableDefaultStyle'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => false, 'isBoolean' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'boundsMode' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['boundsMode'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.layer', 'getBoundsModes'],
|
||||
'eval' => ['tl_class' => 'w50', 'includeBlankOption' => true],
|
||||
'sql' => "varchar(6) NOT NULL default ''",
|
||||
],
|
||||
'tileUrl' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tileUrl'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => ['maxlength' => 255, 'tl_class' => 'w50', 'mandatory' => true],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'minZoom' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['minZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.leaflet', 'getZoomLevels'],
|
||||
'eval' => [
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'int(4) NULL',
|
||||
],
|
||||
'maxZoom' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['maxZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.leaflet', 'getZoomLevels'],
|
||||
'eval' => [
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'int(4) NULL',
|
||||
],
|
||||
'maxNativeZoom' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['maxNativeZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.leaflet', 'getZoomLevels'],
|
||||
'eval' => [
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'int(4) NULL',
|
||||
],
|
||||
'tileSize' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tileSize'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => ['maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true],
|
||||
'sql' => 'int(5) NULL',
|
||||
],
|
||||
'subdomains' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['subdomains'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => ['maxlength' => 16, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(16) NOT NULL default ''",
|
||||
],
|
||||
'errorTileUrl' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['errorTileUrl'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => ['maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'attribution' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['attribution'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => ['maxlength' => 255, 'tl_class' => 'long', 'allowHtml' => true],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'tms' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['tms'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'continuousWorld' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['continuousWorld'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'noWrap' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['noWrap'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'zoomOffset' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['zoomOffset'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => ['maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true],
|
||||
'sql' => 'int(5) NULL',
|
||||
],
|
||||
'zoomReverse' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['zoomReverse'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'opacity' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['opacity'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '1.0',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50 clr'],
|
||||
'sql' => "varchar(4) NOT NULL default ''",
|
||||
],
|
||||
'zIndex' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['zIndex'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => ['maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true],
|
||||
'sql' => 'int(5) NULL',
|
||||
],
|
||||
'unloadvisibleTiles' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['unloadvisibleTiles'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'updateWhenIdle' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['updateWhenIdle'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'detectRetina' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['detectRetina'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'reuseTiles' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['reuseTiles'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'bounds' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['bounds'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'leaflet_geocode',
|
||||
'save_callback' => [
|
||||
],
|
||||
'eval' => [
|
||||
'maxlength' => 255,
|
||||
'multiple' => true,
|
||||
'size' => 2,
|
||||
'tl_class' => 'clr',
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'mediumblob NULL',
|
||||
],
|
||||
'cache' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['cache'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50 m12', 'submitOnChange' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'cacheLifeTime' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['cacheLifeTime'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 0,
|
||||
'eval' => ['maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50'],
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'overpassQuery' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['overpassQuery'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => [
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace',
|
||||
'tl_class' => 'clr',
|
||||
],
|
||||
'sql' => 'mediumtext NULL',
|
||||
],
|
||||
'overpassEndpoint' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['overpassEndpoint'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'overpassCallback' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['overpassCallback'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => [
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|javascript',
|
||||
'tl_class' => 'clr',
|
||||
],
|
||||
'sql' => 'mediumtext NULL',
|
||||
],
|
||||
'minZoomIndicatorPosition' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['minZoomIndicatorPosition'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'options' => ['topleft', 'topright', 'bottomleft', 'bottomright'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_layer'],
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50', 'helpwizard' => true],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'minZoomIndicatorMessage' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['minZoomIndicatorMessage'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => ['tl_class' => 'clr w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'minZoomIndicatorMessageNoLayer' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['minZoomIndicatorMessageNoLayer'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '',
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'debug' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['debug'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50 m12'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'amenityIcons' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['amenityIcons'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'multiColumnWizard',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.layer', 'getIcons'],
|
||||
'eval' => [
|
||||
'tl_class' => 'leaflet-mcw leaflet-mcw-amenity-icons',
|
||||
'columnFields' => [
|
||||
'amenity' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['amenity'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.layer', 'getAmenities'],
|
||||
'eval' => [
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'style' => 'width: 200px',
|
||||
'chosen' => true,
|
||||
],
|
||||
],
|
||||
'icon' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['amenityIcon'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.layer', 'getIcons'],
|
||||
'eval' => [
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'style' => 'width: 200px',
|
||||
'chosen' => true,
|
||||
],
|
||||
],
|
||||
],
|
||||
],
|
||||
'sql' => 'blob NULL',
|
||||
],
|
||||
'overpassPopup' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['overpassPopup'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => [
|
||||
'preserveTags' => true,
|
||||
'decodeEntities' => true,
|
||||
'allowHtml' => true,
|
||||
'rte' => 'ace|javascript',
|
||||
'tl_class' => 'clr',
|
||||
],
|
||||
'sql' => 'mediumtext NULL',
|
||||
],
|
||||
'fileFormat' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['fileFormat'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'filter' => true,
|
||||
'eval' => [
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'submitOnChange' => true,
|
||||
'chosen' => true,
|
||||
'helpwizard' => true,
|
||||
],
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.layer', 'getFileFormats'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['fileFormats'],
|
||||
'sql' => "varchar(32) NOT NULL default ''",
|
||||
],
|
||||
'file' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['file'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'fileTree',
|
||||
'load_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.layer', 'prepareFileWidget'],
|
||||
],
|
||||
'eval' => [
|
||||
'filesOnly' => true,
|
||||
'fieldType' => 'radio',
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'clr',
|
||||
],
|
||||
'sql' => 'binary(16) NULL',
|
||||
],
|
||||
],
|
||||
];
|
||||
533
src/Bundle/Resources/contao/dca/tl_leaflet_map.php
Normal file
533
src/Bundle/Resources/contao/dca/tl_leaflet_map.php
Normal file
@@ -0,0 +1,533 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_map'] = [
|
||||
'config' => [
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'ctable' => ['tl_leaflet_control'],
|
||||
'sql' => [
|
||||
'keys' => [
|
||||
'id' => 'primary',
|
||||
'alias' => 'unique',
|
||||
],
|
||||
],
|
||||
'onload_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'loadLanguageFile'],
|
||||
],
|
||||
'onsubmit_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
|
||||
'list' => [
|
||||
'sorting' => [
|
||||
'mode' => 1,
|
||||
'fields' => ['title'],
|
||||
'panelLayout' => 'search,limit',
|
||||
'flag' => 1,
|
||||
],
|
||||
'label' => [
|
||||
'fields' => ['title', 'alias'],
|
||||
'format' => '%s <span class="tl_gray">[%s]</span>',
|
||||
],
|
||||
'global_operations' => [
|
||||
'all' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"',
|
||||
],
|
||||
],
|
||||
'operations' => [
|
||||
'edit' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'header.gif',
|
||||
],
|
||||
'controls' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['controls'],
|
||||
'href' => 'table=tl_leaflet_control',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/control.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"',
|
||||
],
|
||||
'copy' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif',
|
||||
],
|
||||
'delete' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm']
|
||||
. '\'))return false;Backend.getScrollOffset()"',
|
||||
],
|
||||
'show' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'metapalettes' => [
|
||||
'default' => [
|
||||
'title' => ['title', 'alias'],
|
||||
'zoom' => ['center', 'zoom', 'adjustZoomExtra', 'adjustBounds', 'dynamicLoad', 'boundsPadding'],
|
||||
'locate' => ['locate'],
|
||||
'layers' => ['layers'],
|
||||
'interaction' => [
|
||||
'dragging',
|
||||
'touchZoom',
|
||||
'scrollWheelZoom',
|
||||
'doubleClickZoom',
|
||||
'boxZoom',
|
||||
'tap',
|
||||
'keyboard',
|
||||
],
|
||||
'behaviour' => [
|
||||
'zoomControl',
|
||||
'trackResize',
|
||||
'closeOnClick',
|
||||
'bounceAtZoomLimits',
|
||||
],
|
||||
'expert' => [
|
||||
'options',
|
||||
'cache',
|
||||
],
|
||||
],
|
||||
],
|
||||
'metasubpalettes' => [
|
||||
'keyboard' => [
|
||||
'keyboardPanOffset',
|
||||
'keyboardZoomOffset',
|
||||
],
|
||||
'adjustZoomExtra' => [
|
||||
'minZoom',
|
||||
'maxZoom',
|
||||
'zoomSnap',
|
||||
'zoomDelta',
|
||||
],
|
||||
'locate' => [
|
||||
':hide',
|
||||
'locateWatch',
|
||||
'locateSetView',
|
||||
'locateMaxZoom',
|
||||
'locateTimeout',
|
||||
'locateMaximumAge',
|
||||
'enableHighAccuracy',
|
||||
],
|
||||
'cache' => [
|
||||
'cacheLifeTime',
|
||||
],
|
||||
],
|
||||
|
||||
'fields' => [
|
||||
'id' => [
|
||||
'sql' => 'int(10) unsigned NOT NULL auto_increment',
|
||||
],
|
||||
'tstamp' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'title' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'alias' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_toolkit.dca.listeners.alias_generator', 'handleSaveCallback'],
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateAlias'],
|
||||
],
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true],
|
||||
'toolkit' => [
|
||||
'alias_generator' => [
|
||||
'factory' => 'netzmacht.contao_leaflet.definition.alias_generator.factory_default',
|
||||
'fields' => ['title'],
|
||||
],
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'center' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['center'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateCoordinates'],
|
||||
],
|
||||
'wizard' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'getGeocoder'],
|
||||
],
|
||||
'eval' => [
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'long clr',
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'layers' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['layers'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'multiColumnWizard',
|
||||
'load_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.map', 'loadLayerRelations'],
|
||||
],
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.map', 'saveLayerRelations'],
|
||||
],
|
||||
'eval' => [
|
||||
'multiple' => true,
|
||||
'doNotSaveEmpty' => true,
|
||||
'tl_class' => 'leaflet-mcw leaflet-mcw-map-layers',
|
||||
'columnFields' => [
|
||||
'reference' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['reference'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.map', 'getLayers'],
|
||||
'eval' => [
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true,
|
||||
],
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
],
|
||||
'flatArray' => true,
|
||||
],
|
||||
'sql' => 'mediumblob NULL',
|
||||
],
|
||||
'zoom' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.leaflet', 'getZoomLevels'],
|
||||
'default' => null,
|
||||
'eval' => [
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'int(4) NULL',
|
||||
],
|
||||
'adjustZoomExtra' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustZoomExtra'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50 m12', 'submitOnChange' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'minZoom' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['minZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.leaflet', 'getZoomLevels'],
|
||||
'eval' => [
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'int(4) NULL',
|
||||
],
|
||||
'maxZoom' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['maxZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.leaflet', 'getZoomLevels'],
|
||||
'eval' => [
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'int(4) NULL',
|
||||
],
|
||||
'zoomSnap' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomSnap'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => [
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'varchar(4) NULL',
|
||||
],
|
||||
'zoomDelta' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomDelta'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => [
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'varchar(4) NULL',
|
||||
],
|
||||
'dragging' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['dragging'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'touchZoom' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['touchZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'scrollWheelZoom' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['scrollWheelZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options' => ['1', 'center'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues'],
|
||||
'default' => true,
|
||||
'eval' => [
|
||||
'tl_class' => 'w50',
|
||||
'helpwizard' => true,
|
||||
'includeBlankOption' => true,
|
||||
'blankOptionLabel' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues'][''][0],
|
||||
],
|
||||
'sql' => "char(6) NOT NULL default ''",
|
||||
],
|
||||
'doubleClickZoom' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['doubleClickZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options' => ['1', 'center'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues'],
|
||||
'default' => true,
|
||||
'eval' => [
|
||||
'tl_class' => 'w50',
|
||||
'helpwizard' => true,
|
||||
'includeBlankOption' => true,
|
||||
'blankOptionLabel' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomValues'][''][0],
|
||||
],
|
||||
'sql' => "char(6) NOT NULL default ''",
|
||||
],
|
||||
'boxZoom' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['boxZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'tap' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['tap'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'trackResize' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['trackResize'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'bounceAtZoomLimits' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['bounceAtZoomLimits'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'closeOnClick' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['closeOnClick'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'keyboard' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['keyboard'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'keyboardPanOffset' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['keyboardPanOffset'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 80,
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'clr w50'],
|
||||
'sql' => "int(4) NOT NULL default '80'",
|
||||
],
|
||||
'keyboardZoomOffset' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['keyboardZoomOffset'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 1,
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'],
|
||||
'sql' => "int(4) NOT NULL default '1'",
|
||||
],
|
||||
'zoomControl' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['zoomControl'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'options' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['options'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => [
|
||||
'tl_class' => 'clr lng',
|
||||
'allowHtml' => true,
|
||||
'style' => 'min-height: 40px;',
|
||||
'rte' => 'ace|json',
|
||||
],
|
||||
'sql' => 'text NULL',
|
||||
],
|
||||
'adjustBounds' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBounds'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'options' => ['load', 'deferred'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBoundsOptions'],
|
||||
'eval' => ['tl_class' => 'clr w50', 'multiple' => true, 'helpwizard' => true],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'dynamicLoad' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['dynamicLoad'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'clr w50', 'submitOnChange' => false],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'boundsPadding' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['boundsPadding'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => [
|
||||
'maxlength' => 32,
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'varchar(32) NULL',
|
||||
],
|
||||
'locate' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['locate'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'locateWatch' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['locateWatch'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'locateSetView' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['locateSetView'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => false],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'locateTimeout' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['locateTimeout'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => ['maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true],
|
||||
'sql' => 'int(9) NULL',
|
||||
],
|
||||
'locateMaximumAge' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['locateMaximumAge'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => ['maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50', 'nullIfEmpty' => true],
|
||||
'sql' => 'int(9) NULL',
|
||||
],
|
||||
'enableHighAccuracy' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['enableHighAccuracy'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50 m12'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'locateMaxZoom' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['locateMaxZoom'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.leaflet', 'getZoomLevels'],
|
||||
'eval' => [
|
||||
'maxlength' => 4,
|
||||
'rgxp' => 'digit',
|
||||
'tl_class' => 'clr w50',
|
||||
'includeBlankOption' => true,
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'int(4) NULL',
|
||||
],
|
||||
'cache' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['cache'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50 m12', 'submitOnChange' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'cacheLifeTime' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_map']['cacheLifeTime'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 0,
|
||||
'eval' => ['maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'w50'],
|
||||
'sql' => "int(9) NOT NULL default '0'",
|
||||
],
|
||||
],
|
||||
];
|
||||
41
src/Bundle/Resources/contao/dca/tl_leaflet_map_layer.php
Normal file
41
src/Bundle/Resources/contao/dca/tl_leaflet_map_layer.php
Normal file
@@ -0,0 +1,41 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_map_layer'] = [
|
||||
'config' => [
|
||||
'dataContainer' => 'Table',
|
||||
'sql' => [
|
||||
'keys' => [
|
||||
'id' => 'primary',
|
||||
'mid,lid' => 'unique',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'fields' => [
|
||||
'id' => [
|
||||
'sql' => 'int(10) unsigned NOT NULL auto_increment',
|
||||
],
|
||||
'tstamp' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'sorting' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'mid' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'lid' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
],
|
||||
];
|
||||
342
src/Bundle/Resources/contao/dca/tl_leaflet_marker.php
Normal file
342
src/Bundle/Resources/contao/dca/tl_leaflet_marker.php
Normal file
@@ -0,0 +1,342 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_marker'] = [
|
||||
'config' => [
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'ptable' => 'tl_leaflet_layer',
|
||||
'sql' => [
|
||||
'keys' => [
|
||||
'id' => 'primary',
|
||||
'pid' => 'index',
|
||||
'alias' => 'unique',
|
||||
],
|
||||
],
|
||||
'onload_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'loadLanguageFile'],
|
||||
],
|
||||
'onsubmit_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
|
||||
'list' => [
|
||||
'sorting' => [
|
||||
'mode' => 4,
|
||||
'fields' => ['sorting'],
|
||||
'flag' => 1,
|
||||
'panelLayout' => 'sort,filter;search,limit',
|
||||
'headerFields' => ['title', 'type'],
|
||||
'child_record_callback' => ['netzmacht.contao_leaflet.listeners.dca.marker', 'generateRow'],
|
||||
],
|
||||
'label' => [
|
||||
'fields' => ['title'],
|
||||
'format' => '%s',
|
||||
],
|
||||
'global_operations' => [
|
||||
'icons' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['icons'],
|
||||
'href' => 'table=tl_leaflet_icon&id=',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/icons.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"',
|
||||
],
|
||||
'popups' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['popups'],
|
||||
'href' => 'table=tl_leaflet_popup',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/popup.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"',
|
||||
],
|
||||
'all' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"',
|
||||
],
|
||||
],
|
||||
'operations' => [
|
||||
'edit' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'edit.gif',
|
||||
],
|
||||
'copy' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif',
|
||||
],
|
||||
'delete' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm']
|
||||
. '\'))return false;Backend.getScrollOffset()"',
|
||||
],
|
||||
'toggle' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();return AjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => [
|
||||
'netzmacht.contao_toolkit.dca.listeners.state_button_callback',
|
||||
'handleButtonCallback',
|
||||
],
|
||||
'toolkit' => [
|
||||
'state_button' => [
|
||||
'stateColumn' => 'active',
|
||||
],
|
||||
],
|
||||
],
|
||||
'show' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'metapalettes' => [
|
||||
'default' => [
|
||||
'title' => ['title', 'alias', 'coordinates'],
|
||||
'content' => ['tooltip', 'alt', 'addPopup'],
|
||||
'config' => [
|
||||
':hide',
|
||||
'clickable',
|
||||
'draggable',
|
||||
'keyboard',
|
||||
'zIndexOffset',
|
||||
'opacity',
|
||||
'riseOnHover',
|
||||
'riseOffset',
|
||||
'customIcon',
|
||||
],
|
||||
'expert' => [':hide', 'featureData'],
|
||||
'active' => ['active', 'ignoreForBounds'],
|
||||
],
|
||||
],
|
||||
'metasubpalettes' => [
|
||||
'addPopup' => ['popup', 'popupContent'],
|
||||
'customIcon' => ['icon'],
|
||||
],
|
||||
|
||||
'fields' => [
|
||||
'id' => [
|
||||
'sql' => 'int(10) unsigned NOT NULL auto_increment',
|
||||
],
|
||||
'tstamp' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'sorting' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
'sorting' => true,
|
||||
],
|
||||
'pid' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'title' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['title'],
|
||||
'exclude' => true,
|
||||
'search' => true,
|
||||
'sorting' => true,
|
||||
'flag' => 1,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'alias' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_toolkit.dca.listeners.alias_generator', 'handleSaveCallback'],
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateAlias'],
|
||||
],
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true],
|
||||
'toolkit' => [
|
||||
'alias_generator' => [
|
||||
'factory' => 'netzmacht.contao_leaflet.definition.alias_generator.factory_default',
|
||||
'fields' => ['title'],
|
||||
],
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'coordinates' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['coordinates'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateCoordinates'],
|
||||
['netzmacht.contao_leaflet.listeners.dca.marker', 'saveCoordinates'],
|
||||
],
|
||||
'load_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.marker', 'loadCoordinates'],
|
||||
],
|
||||
'wizard' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'getGeocoder'],
|
||||
],
|
||||
'eval' => [
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'long clr',
|
||||
'nullIfEmpty' => true,
|
||||
'doNotSaveEmpty' => true,
|
||||
],
|
||||
],
|
||||
'latitude' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['latitude'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => 'decimal(10,8) NULL',
|
||||
],
|
||||
'longitude' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['longitude'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => 'decimal(11,8) NULL',
|
||||
],
|
||||
'altitude' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['altitude'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => 'float NULL',
|
||||
],
|
||||
'active' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['active'],
|
||||
'exclude' => true,
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'flag' => 12,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
'tooltip' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['tooltip'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'alt' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['alt'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'addPopup' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['addPopup'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'eval' => ['tl_class' => 'w50 m12', 'submitOnChange' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'popup' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['popup'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.marker', 'getPopups'],
|
||||
'eval' => [
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true,
|
||||
],
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'popupContent' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['popupContent'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => true, 'rte' => 'tinyMCE', 'helpwizard' => true, 'tl_class' => 'clr'],
|
||||
'explanation' => 'insertTags',
|
||||
'sql' => 'mediumtext NULL',
|
||||
],
|
||||
'customIcon' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['customIcon'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => ['tl_class' => 'clr w50 m12', 'submitOnChange' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'icon' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['icon'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.marker', 'getIcons'],
|
||||
'eval' => [
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
],
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'draggable' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['draggable'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'clickable' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['clickable'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'keyboard' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['keyboard'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'zIndexOffset' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['zIndexOffset'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 0,
|
||||
'eval' => ['maxlength' => 5, 'rgxp' => 'digit', 'tl_class' => 'clr w50', 'nullIfEmpty' => true],
|
||||
'sql' => 'int(5) NULL',
|
||||
],
|
||||
'ignoreForBounds' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_marker']['ignoreForBounds'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'featureData' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_layer']['featureData'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => [
|
||||
'tl_class' => 'clr lng',
|
||||
'allowHtml' => true,
|
||||
'style' => 'min-height: 40px;',
|
||||
'rte' => 'ace|json',
|
||||
],
|
||||
'sql' => 'text NULL',
|
||||
],
|
||||
],
|
||||
];
|
||||
276
src/Bundle/Resources/contao/dca/tl_leaflet_popup.php
Normal file
276
src/Bundle/Resources/contao/dca/tl_leaflet_popup.php
Normal file
@@ -0,0 +1,276 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_popup'] = [
|
||||
'config' => [
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'sql' => [
|
||||
'keys' => [
|
||||
'id' => 'primary',
|
||||
'alias' => 'unique',
|
||||
],
|
||||
],
|
||||
'onsubmit_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
|
||||
'list' => [
|
||||
'sorting' => [
|
||||
'mode' => 1,
|
||||
'fields' => ['title'],
|
||||
'flag' => 1,
|
||||
'panelLayout' => 'limit',
|
||||
'headerFields' => ['title', 'type'],
|
||||
],
|
||||
'label' => [
|
||||
'fields' => ['title', 'type'],
|
||||
'format' => '%s <span class="tl_gray">[%s]</span>',
|
||||
],
|
||||
'global_operations' => [
|
||||
'layers' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['layersBtn'],
|
||||
'href' => 'table=tl_leaflet_layer',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/layers.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"',
|
||||
],
|
||||
'styles' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['styles'],
|
||||
'href' => 'table=tl_leaflet_style',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/style.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"',
|
||||
],
|
||||
'icons' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['icons'],
|
||||
'href' => 'table=tl_leaflet_icon',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/icons.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"',
|
||||
],
|
||||
'all' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"',
|
||||
],
|
||||
],
|
||||
'operations' => [
|
||||
'edit' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'edit.gif',
|
||||
],
|
||||
'copy' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif',
|
||||
],
|
||||
'delete' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm']
|
||||
. '\'))return false;Backend.getScrollOffset()"',
|
||||
],
|
||||
'toggle' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();return AjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => [
|
||||
'netzmacht.contao_toolkit.dca.listeners.state_button_callback',
|
||||
'handleButtonCallback',
|
||||
],
|
||||
'toolkit' => [
|
||||
'state_button' => [
|
||||
'stateColumn' => 'active',
|
||||
],
|
||||
],
|
||||
],
|
||||
'show' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'palettes' => [
|
||||
'__selector__' => ['type'],
|
||||
],
|
||||
|
||||
'metapalettes' => [
|
||||
'default' => [
|
||||
'title' => ['title', 'alias'],
|
||||
'size' => ['maxWidth', 'minWidth', 'maxHeight'],
|
||||
'config' => [
|
||||
':hide',
|
||||
'closeButton',
|
||||
'keepInView',
|
||||
'closeOnClick',
|
||||
'zoomAnimation',
|
||||
'offset',
|
||||
'className',
|
||||
'autoPan',
|
||||
],
|
||||
'active' => ['active'],
|
||||
],
|
||||
],
|
||||
|
||||
'metasubpalettes' => [
|
||||
'autoPan' => ['autoPanPadding'],
|
||||
],
|
||||
|
||||
'fields' => [
|
||||
'id' => [
|
||||
'sql' => 'int(10) unsigned NOT NULL auto_increment',
|
||||
],
|
||||
'tstamp' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'title' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'alias' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_toolkit.dca.listeners.alias_generator', 'handleSaveCallback'],
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateAlias'],
|
||||
],
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true],
|
||||
'toolkit' => [
|
||||
'alias_generator' => [
|
||||
'factory' => 'netzmacht.contao_leaflet.definition.alias_generator.factory_default',
|
||||
'fields' => ['title'],
|
||||
],
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'maxWidth' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['maxWidth'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'],
|
||||
'sql' => 'int(4) NULL',
|
||||
],
|
||||
'minWidth' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['minWidth'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'],
|
||||
'sql' => 'int(4) NULL',
|
||||
],
|
||||
'maxHeight' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['maxHeight'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => null,
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'],
|
||||
'sql' => 'int(4) NULL',
|
||||
],
|
||||
'autoPan' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['autoPan'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50 m12', 'submitOnChange' => true],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'keepInView' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['keepInView'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => false],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'closeButton' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['closeButton'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => false],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'offset' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['offset'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateCoordinates'],
|
||||
],
|
||||
'eval' => [
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'autoPanPadding' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['autoPanPadding'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => [
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'w50',
|
||||
'nullIfEmpty' => true,
|
||||
'multiple' => true,
|
||||
'size' => 2,
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'zoomAnimation' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['zoomAnimation'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => false],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'closeOnClick' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['closeOnClick'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => false],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'className' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['className'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 64, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(64) NOT NULL default ''",
|
||||
],
|
||||
'active' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_popup']['active'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'search' => false,
|
||||
'flag' => 12,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
284
src/Bundle/Resources/contao/dca/tl_leaflet_style.php
Normal file
284
src/Bundle/Resources/contao/dca/tl_leaflet_style.php
Normal file
@@ -0,0 +1,284 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_style'] = [
|
||||
'config' => [
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'sql' => [
|
||||
'keys' => [
|
||||
'id' => 'primary',
|
||||
'alias' => 'unique',
|
||||
],
|
||||
],
|
||||
'onsubmit_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
|
||||
'list' => [
|
||||
'sorting' => [
|
||||
'mode' => 1,
|
||||
'fields' => ['title'],
|
||||
'flag' => 1,
|
||||
'panelLayout' => 'limit',
|
||||
'headerFields' => ['title', 'type'],
|
||||
],
|
||||
'label' => [
|
||||
'fields' => ['title', 'type'],
|
||||
'format' => '%s <span class="tl_gray">[%s]</span>',
|
||||
],
|
||||
'global_operations' => [
|
||||
'layers' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['layersBtn'],
|
||||
'href' => 'table=tl_leaflet_layer',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/layers.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"',
|
||||
],
|
||||
'icons' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['icons'],
|
||||
'href' => 'table=tl_leaflet_icon',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/icons.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"',
|
||||
],
|
||||
'popups' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['popups'],
|
||||
'href' => 'table=tl_leaflet_popup',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/popup.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"',
|
||||
],
|
||||
'all' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"',
|
||||
],
|
||||
],
|
||||
'operations' => [
|
||||
'edit' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'edit.gif',
|
||||
],
|
||||
'copy' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif',
|
||||
],
|
||||
'delete' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm']
|
||||
. '\'))return false;Backend.getScrollOffset()"',
|
||||
],
|
||||
'toggle' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();return AjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => [
|
||||
'netzmacht.contao_toolkit.dca.listeners.state_button_callback',
|
||||
'handleButtonCallback',
|
||||
],
|
||||
'toolkit' => [
|
||||
'state_button' => [
|
||||
'stateColumn' => 'active',
|
||||
],
|
||||
],
|
||||
],
|
||||
'show' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'palettes' => [
|
||||
'__selector__' => ['type'],
|
||||
],
|
||||
|
||||
'metapalettes' => [
|
||||
'default' => [
|
||||
'title' => ['title', 'alias', 'type'],
|
||||
'config' => [],
|
||||
'active' => ['active'],
|
||||
],
|
||||
'fixed extends default' => [
|
||||
'config' => ['stroke', 'fill'],
|
||||
],
|
||||
],
|
||||
|
||||
'metasubpalettes' => [
|
||||
'stroke' => ['color', 'weight', 'opacity', 'dashArray', 'lineCap', 'lineJoin'],
|
||||
'fill' => ['fillColor', 'fillOpacity',],
|
||||
],
|
||||
|
||||
'fields' => [
|
||||
'id' => [
|
||||
'sql' => 'int(10) unsigned NOT NULL auto_increment',
|
||||
],
|
||||
'tstamp' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'title' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'alias' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_toolkit.dca.listeners.alias_generator', 'handleSaveCallback'],
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateAlias'],
|
||||
],
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true],
|
||||
'toolkit' => [
|
||||
'alias_generator' => [
|
||||
'factory' => 'netzmacht.contao_leaflet.definition.alias_generator.factory_default',
|
||||
'fields' => ['title'],
|
||||
],
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'type' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['type'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'eval' => [
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'submitOnChange' => true,
|
||||
'chosen' => true,
|
||||
],
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.style', 'getStyleOptions'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['leaflet_style'],
|
||||
'sql' => "varchar(32) NOT NULL default ''",
|
||||
],
|
||||
'stroke' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['stroke'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'w50', 'submitOnChange' => true],
|
||||
'sql' => "char(1) NOT NULL default '1'",
|
||||
],
|
||||
'color' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['color'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'wizard' => [
|
||||
['netzmacht.contao_toolkit.dca.listeners.color_picker', 'handleWizardCallback'],
|
||||
],
|
||||
'eval' => [
|
||||
'tl_class' => 'w50 wizard clr',
|
||||
'maxlength' => 7,
|
||||
'decodeEntities' => true,
|
||||
],
|
||||
'sql' => "varchar(8) NOT NULL default ''",
|
||||
],
|
||||
'weight' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['weight'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 5,
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'],
|
||||
'sql' => "int(4) NOT NULL default '5'",
|
||||
],
|
||||
'opacity' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['opacity'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '0.5',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(4) NOT NULL default '0.5'",
|
||||
],
|
||||
'fill' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['fill'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'eval' => ['tl_class' => 'clr w50', 'submitOnChange' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'fillColor' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['fillColor'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'wizard' => [
|
||||
['netzmacht.contao_toolkit.dca.listeners.color_picker', 'handleWizardCallback'],
|
||||
],
|
||||
'eval' => [
|
||||
'tl_class' => 'clr w50 wizard',
|
||||
'maxlength' => 7,
|
||||
'decodeEntities' => true,
|
||||
],
|
||||
'sql' => "varchar(8) NOT NULL default ''",
|
||||
],
|
||||
'fillOpacity' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['fillOpacity'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => '0.2',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 4, 'rgxp' => 'digit', 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(4) NOT NULL default '0.2'",
|
||||
],
|
||||
'dashArray' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['dashArray'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 32, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(32) NOT NULL default ''",
|
||||
],
|
||||
'lineCap' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['lineCap'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options' => ['butt', 'round', 'square', 'inherit'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['lineCaps'],
|
||||
'eval' => [
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'w50 clr',
|
||||
'includeBlankOption' => true,
|
||||
'helpwizard' => true,
|
||||
],
|
||||
'sql' => "varchar(8) NOT NULL default ''",
|
||||
],
|
||||
'lineJoin' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['lineJoin'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options' => ['miter', 'round', 'bevel', 'inherit'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['lineJoins'],
|
||||
'eval' => ['mandatory' => false, 'tl_class' => 'w50', 'includeBlankOption' => true, 'helpwizard'],
|
||||
'sql' => "varchar(8) NOT NULL default ''",
|
||||
],
|
||||
'active' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_style']['active'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'search' => false,
|
||||
'flag' => 12,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
],
|
||||
];
|
||||
382
src/Bundle/Resources/contao/dca/tl_leaflet_vector.php
Normal file
382
src/Bundle/Resources/contao/dca/tl_leaflet_vector.php
Normal file
@@ -0,0 +1,382 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_leaflet_vector'] = [
|
||||
'config' => [
|
||||
'dataContainer' => 'Table',
|
||||
'enableVersioning' => true,
|
||||
'ptable' => 'tl_leaflet_layer',
|
||||
'sql' => [
|
||||
'keys' => [
|
||||
'id' => 'primary',
|
||||
'pid' => 'index',
|
||||
'alias' => 'unique',
|
||||
],
|
||||
],
|
||||
'onload_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'loadLanguageFile'],
|
||||
],
|
||||
'onsubmit_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
|
||||
'list' => [
|
||||
'sorting' => [
|
||||
'mode' => 4,
|
||||
'fields' => ['sorting'],
|
||||
'flag' => 1,
|
||||
'panelLayout' => 'sort,filter;search,limit',
|
||||
'headerFields' => ['title', 'type'],
|
||||
'child_record_callback' => ['netzmacht.contao_leaflet.listeners.dca.vector', 'generateRow'],
|
||||
],
|
||||
'label' => [
|
||||
'fields' => ['title'],
|
||||
'format' => '%s',
|
||||
],
|
||||
'global_operations' => [
|
||||
'styles' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['styles'],
|
||||
'href' => 'table=tl_leaflet_style',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/style.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"',
|
||||
],
|
||||
'popups' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['popups'],
|
||||
'href' => 'table=tl_leaflet_popup',
|
||||
'icon' => 'bundles/netzmachtcontaoleaflet/img/popup.png',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();"',
|
||||
],
|
||||
'all' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['MSC']['all'],
|
||||
'href' => 'act=select',
|
||||
'class' => 'header_edit_all',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();" accesskey="e"',
|
||||
],
|
||||
],
|
||||
'operations' => [
|
||||
'edit' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['edit'],
|
||||
'href' => 'act=edit',
|
||||
'icon' => 'edit.gif',
|
||||
],
|
||||
'copy' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['copy'],
|
||||
'href' => 'act=copy',
|
||||
'icon' => 'copy.gif',
|
||||
],
|
||||
'cut' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['cut'],
|
||||
'href' => 'act=paste&mode=cut',
|
||||
'icon' => 'cut.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset()"',
|
||||
],
|
||||
'delete' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['delete'],
|
||||
'href' => 'act=delete',
|
||||
'icon' => 'delete.gif',
|
||||
'attributes' => 'onclick="if(!confirm(\'' . $GLOBALS['TL_LANG']['MSC']['deleteConfirm']
|
||||
. '\'))return false;Backend.getScrollOffset()"',
|
||||
],
|
||||
'toggle' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['toggle'],
|
||||
'icon' => 'visible.gif',
|
||||
'attributes' => 'onclick="Backend.getScrollOffset();return AjaxRequest.toggleVisibility(this,%s)"',
|
||||
'button_callback' => [
|
||||
'netzmacht.contao_toolkit.dca.listeners.state_button_callback',
|
||||
'handleButtonCallback',
|
||||
],
|
||||
'toolkit' => [
|
||||
'state_button' => [
|
||||
'stateColumn' => 'active',
|
||||
],
|
||||
],
|
||||
],
|
||||
'show' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['show'],
|
||||
'href' => 'act=show',
|
||||
'icon' => 'show.gif',
|
||||
],
|
||||
],
|
||||
],
|
||||
|
||||
'palettes' => [
|
||||
'__selector__' => ['type'],
|
||||
],
|
||||
|
||||
'metapalettes' => [
|
||||
'default' => [
|
||||
'title' => ['title', 'alias', 'type'],
|
||||
'data' => [],
|
||||
'popup' => [':hide', 'addPopup'],
|
||||
'config' => [':hide', 'style', 'className', 'clickable'],
|
||||
'expert' => [':hide', 'featureData'],
|
||||
'active' => ['active', 'ignoreForBounds'],
|
||||
],
|
||||
|
||||
'polyline extends default' => [
|
||||
'+config' => ['smoothFactor', 'noClip'],
|
||||
'data' => ['data'],
|
||||
],
|
||||
|
||||
'multiPolyline extends polyline' => [
|
||||
'data' => ['multiData'],
|
||||
],
|
||||
|
||||
'polygon extends polyline' => [],
|
||||
|
||||
'multiPolygon extends multiPolyline' => [
|
||||
],
|
||||
|
||||
'rectangle extends polygon' => [
|
||||
'data' => ['bounds'],
|
||||
],
|
||||
|
||||
'circle extends default' => [
|
||||
'+data' => ['coordinates', 'radius'],
|
||||
],
|
||||
|
||||
'circleMarker extends circle' => [],
|
||||
],
|
||||
'metasubpalettes' => [
|
||||
'addPopup' => ['popup', 'popupContent'],
|
||||
],
|
||||
|
||||
'fields' => [
|
||||
'id' => [
|
||||
'sql' => 'int(10) unsigned NOT NULL auto_increment',
|
||||
],
|
||||
'tstamp' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'pid' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'sorting' => [
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
'sorting' => true,
|
||||
],
|
||||
'title' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['title'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'filter' => false,
|
||||
'sorting' => true,
|
||||
'search' => true,
|
||||
'flag' => 1,
|
||||
'eval' => ['mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(255) NOT NULL default ''",
|
||||
],
|
||||
'alias' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['alias'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'search' => true,
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_toolkit.dca.listeners.alias_generator', 'handleSaveCallback'],
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateAlias'],
|
||||
],
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 255, 'tl_class' => 'w50', 'unique' => true],
|
||||
'toolkit' => [
|
||||
'alias_generator' => [
|
||||
'factory' => 'netzmacht.contao_leaflet.definition.alias_generator.factory_default',
|
||||
'fields' => ['title'],
|
||||
],
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'type' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['type'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'search' => false,
|
||||
'flag' => 1,
|
||||
'eval' => [
|
||||
'mandatory' => true,
|
||||
'tl_class' => 'w50',
|
||||
'includeBlankOption' => true,
|
||||
'submitOnChange' => true,
|
||||
'chosen' => true,
|
||||
'helpwizard' => true,
|
||||
],
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.vector', 'getVectorOptions'],
|
||||
'reference' => &$GLOBALS['TL_LANG']['leaflet_vector'],
|
||||
'sql' => "varchar(32) NOT NULL default ''",
|
||||
],
|
||||
'active' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['active'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'sorting' => true,
|
||||
'search' => false,
|
||||
'flag' => 12,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'clearCache'],
|
||||
],
|
||||
],
|
||||
'addPopup' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['addPopup'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'filter' => true,
|
||||
'eval' => ['tl_class' => 'w50 m12', 'submitOnChange' => true],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'popup' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['popup'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.vector', 'getPopups'],
|
||||
'eval' => [
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true,
|
||||
],
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'popupContent' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['popupContent'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => true, 'rte' => 'tinyMCE', 'helpwizard' => true, 'tl_class' => 'clr'],
|
||||
'explanation' => 'insertTags',
|
||||
'sql' => 'mediumtext NULL',
|
||||
],
|
||||
'style' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['style'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.vector', 'getStyles'],
|
||||
'eval' => [
|
||||
'mandatory' => false,
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'includeBlankOption' => true,
|
||||
],
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
],
|
||||
'clickable' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['clickable'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => true,
|
||||
'eval' => ['tl_class' => 'm12 w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'className' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['className'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 64, 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(64) NOT NULL default ''",
|
||||
],
|
||||
'coordinates' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['coordinates'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateCoordinates'],
|
||||
],
|
||||
'wizard' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.leaflet', 'getGeocoder'],
|
||||
],
|
||||
'eval' => [
|
||||
'maxlength' => 255,
|
||||
'tl_class' => 'long clr',
|
||||
'nullIfEmpty' => true,
|
||||
'mandatory' => true,
|
||||
],
|
||||
'sql' => 'varchar(255) NULL',
|
||||
],
|
||||
'radius' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['radius'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'text',
|
||||
'default' => 5,
|
||||
'eval' => ['mandatory' => false, 'maxlength' => 10, 'rgxp' => 'digit', 'tl_class' => 'clr w50'],
|
||||
'sql' => "int(10) NOT NULL default '5'",
|
||||
],
|
||||
'data' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['data'],
|
||||
'inputType' => 'textarea',
|
||||
'search' => false,
|
||||
'eval' => ['mandatory' => true, 'alwaysSave' => true],
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateMultipleCoordinates'],
|
||||
],
|
||||
'sql' => 'longblob NULL',
|
||||
],
|
||||
'multiData' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['multiData'],
|
||||
'inputType' => 'multiColumnWizard',
|
||||
'search' => false,
|
||||
'eval' => [
|
||||
'tl_class' => 'leaflet-mcw',
|
||||
'mandatory' => true,
|
||||
'alwaysSave' => true,
|
||||
'flatArray' => true,
|
||||
'columnFields' => [
|
||||
'data' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['data'],
|
||||
'inputType' => 'textarea',
|
||||
'search' => false,
|
||||
'eval' => ['alwaysSave' => true, 'style' => 'width:600px'],
|
||||
],
|
||||
],
|
||||
],
|
||||
'save_callback' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.validator', 'validateMultipleCoordinateSets'],
|
||||
],
|
||||
'sql' => 'longblob NULL',
|
||||
],
|
||||
'bounds' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['bounds'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'leaflet_geocode',
|
||||
'save_callback' => [],
|
||||
'eval' => [
|
||||
'maxlength' => 255,
|
||||
'multiple' => true,
|
||||
'size' => 2,
|
||||
'tl_class' => 'clr',
|
||||
'nullIfEmpty' => true,
|
||||
],
|
||||
'sql' => 'mediumblob NULL',
|
||||
],
|
||||
'ignoreForBounds' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['ignoreForBounds'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'checkbox',
|
||||
'default' => false,
|
||||
'eval' => ['tl_class' => 'w50'],
|
||||
'sql' => "char(1) NOT NULL default ''",
|
||||
],
|
||||
'featureData' => [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_leaflet_vector']['featureData'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'textarea',
|
||||
'eval' => [
|
||||
'tl_class' => 'clr lng',
|
||||
'allowHtml' => true,
|
||||
'style' => 'min-height: 40px;',
|
||||
'rte' => 'ace|json',
|
||||
],
|
||||
'sql' => 'text NULL',
|
||||
],
|
||||
],
|
||||
];
|
||||
85
src/Bundle/Resources/contao/dca/tl_module.php
Normal file
85
src/Bundle/Resources/contao/dca/tl_module.php
Normal file
@@ -0,0 +1,85 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_module']['metapalettes']['leaflet'] = [
|
||||
'type' => ['name', 'type', 'headline'],
|
||||
'leaflet' => ['leaflet_map', 'leaflet_mapId', 'leaflet_width', 'leaflet_height', 'leaflet_template'],
|
||||
'templates' => [':hide', 'customTpl'],
|
||||
'protected' => [':hide', 'protected'],
|
||||
'expert' => [':hide', 'guests', 'cssID', 'space'],
|
||||
'invisible' => [':hide', 'invisible', 'start', 'start'],
|
||||
];
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_module']['fields']['leaflet_map'] = [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_module']['leaflet_map'],
|
||||
'inputType' => 'select',
|
||||
'exclude' => true,
|
||||
'options_callback' => ['netzmacht.contao_leaflet.listeners.dca.frontend_integration', 'getMaps'],
|
||||
'wizard' => [
|
||||
['netzmacht.contao_leaflet.listeners.dca.frontend_integration', 'getEditMapLink'],
|
||||
],
|
||||
'eval' => [
|
||||
'tl_class' => 'w50 wizard',
|
||||
'chosen' => true,
|
||||
],
|
||||
'sql' => "int(10) unsigned NOT NULL default '0'",
|
||||
];
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_module']['fields']['leaflet_mapId'] = [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_module']['leaflet_mapId'],
|
||||
'inputType' => 'text',
|
||||
'exclude' => true,
|
||||
'eval' => [
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
'maxlength' => 16,
|
||||
],
|
||||
'sql' => "varchar(16) NOT NULL default ''",
|
||||
];
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_module']['fields']['leaflet_width'] = [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_module']['leaflet_width'],
|
||||
'inputType' => 'inputUnit',
|
||||
'options' => ['px', '%', 'em', 'pt', 'pc', 'in', 'cm', 'mm'],
|
||||
'search' => false,
|
||||
'exclude' => true,
|
||||
'eval' => ['rgxp' => 'digit', 'tl_class' => 'clr w50'],
|
||||
'sql' => "varchar(64) NOT NULL default ''",
|
||||
];
|
||||
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_module']['fields']['leaflet_height'] = [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_module']['leaflet_height'],
|
||||
'inputType' => 'inputUnit',
|
||||
'options' => ['px', '%', 'em', 'pt', 'pc', 'in', 'cm', 'mm'],
|
||||
'search' => false,
|
||||
'exclude' => true,
|
||||
'eval' => ['rgxp' => 'digit', 'tl_class' => 'w50'],
|
||||
'sql' => "varchar(64) NOT NULL default ''",
|
||||
];
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_module']['fields']['leaflet_template'] = [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_module']['leaflet_template'],
|
||||
'inputType' => 'select',
|
||||
'exclude' => true,
|
||||
'options_callback' => ['netzmacht.contao_toolkit.dca.listeners.template_options', 'handleOptionsCallback'],
|
||||
'eval' => [
|
||||
'tl_class' => 'w50',
|
||||
'chosen' => true,
|
||||
],
|
||||
'toolkit' => [
|
||||
'template_options' => [
|
||||
'prefix' => 'leaflet_map_js',
|
||||
],
|
||||
],
|
||||
'sql' => "varchar(64) NOT NULL default ''",
|
||||
];
|
||||
@@ -3,17 +3,18 @@
|
||||
* Translations are managed using Transifex. To create a new translation
|
||||
* or to help to maintain an existing one, please register at transifex.com.
|
||||
*
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
*
|
||||
* @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
|
||||
*
|
||||
* last-updated: 2016-10-06T15:54:30+02:00
|
||||
* last-updated: 2017-10-17T16:04:08+00:00
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_LANG']['leaflet']['applyPosition'] = 'Position anwenden';
|
||||
$GLOBALS['TL_LANG']['leaflet']['invalidAlias'] = 'Ein ungültiger Alias wurde angegeben. Ein Alias darf nicht leer sein, mit einer Zahl beginnen oder Sonderzeichen enthalten (Unterstriche sind erlaubt).';
|
||||
$GLOBALS['TL_LANG']['leaflet']['invalidCoordinates'] = 'Ungültige Koordinatenwerte vorhanden.';
|
||||
$GLOBALS['TL_LANG']['leaflet']['searchPosition'] = 'Standort suchen';
|
||||
$GLOBALS['TL_LANG']['leaflet_control']['attribution']['0'] = 'Copyright-Leiste';
|
||||
$GLOBALS['TL_LANG']['leaflet_control']['attribution']['1'] = 'Das Kontrollelement zur Namensnennung erlaubt es, Urheber in einer kleinen Textbox auf der Karte anzuzeigen. Lesen Sie für weitere Details die <a href="http://leafletjs.com/reference.html#control-attribution" target="_blank">Leaflet-Dokumentation</a>.';
|
||||
$GLOBALS['TL_LANG']['leaflet_control']['fullscreen']['0'] = 'Fullscreen-Kontrollelement';
|
||||
@@ -3,8 +3,8 @@
|
||||
* Translations are managed using Transifex. To create a new translation
|
||||
* or to help to maintain an existing one, please register at transifex.com.
|
||||
*
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
*
|
||||
* @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
|
||||
*
|
||||
@@ -3,8 +3,8 @@
|
||||
* Translations are managed using Transifex. To create a new translation
|
||||
* or to help to maintain an existing one, please register at transifex.com.
|
||||
*
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
*
|
||||
* @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
|
||||
*
|
||||
@@ -3,12 +3,12 @@
|
||||
* Translations are managed using Transifex. To create a new translation
|
||||
* or to help to maintain an existing one, please register at transifex.com.
|
||||
*
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
*
|
||||
* @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
|
||||
*
|
||||
* last-updated: 2016-10-04T13:07:35+02:00
|
||||
* last-updated: 2017-10-17T16:04:09+00:00
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['active']['0'] = 'Kontrollelement aktivieren';
|
||||
@@ -21,6 +21,7 @@ $GLOBALS['TL_LANG']['tl_leaflet_control']['attributions']['1'] = 'Hier kö
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['autoZIndex']['0'] = 'Automatischer Z-Index';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['autoZIndex']['1'] = 'Falls aktiviert wird das Kontrollelement zu allen Layern in aufsteigender Reihenfolge einen z-index hinzufügen, damit die Reihenfolge auch beim an- und abschalten von Layern erhalten bleibt.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['base']['0'] = 'Basislayer';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['base']['1'] = 'Basis-Layer werden mit Radio-Buttons umgeschaltet. Beachten Sie, dass alle Basis-Layer als Basis-Layer-Objekte übergeben werden sollten, aber nur ein einziger für die Initialisierung der Karte benutzt werden soll.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['bottomleft']['0'] = 'Links unten';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['bottomleft']['1'] = 'Linker unterer Bereich der Karte';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['bottomright']['0'] = 'Rechts unten';
|
||||
@@ -3,12 +3,12 @@
|
||||
* Translations are managed using Transifex. To create a new translation
|
||||
* or to help to maintain an existing one, please register at transifex.com.
|
||||
*
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
*
|
||||
* @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
|
||||
*
|
||||
* last-updated: 2016-10-04T13:07:35+02:00
|
||||
* last-updated: 2017-10-17T16:04:07+00:00
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['active']['0'] = 'Aktivieren Sie das Icon.';
|
||||
@@ -30,6 +30,7 @@ $GLOBALS['TL_LANG']['tl_leaflet_icon']['edit']['1'] = 'Icon ID %s b
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['icon']['0'] = 'Icon-CSS-Klasse';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['icon']['1'] = 'Icon-CSS-Klasse, beispielsweise <em>fa-envelope</em>';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconAnchor']['0'] = 'Icon-Anker';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconAnchor']['1'] = 'Die Koordinaten der "Spitze" des Schattens (relativ zu seiner oberen linken Ecke).';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconColor']['0'] = 'Iconfarbe';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconColor']['1'] = 'Definieren Sie hier eine Farbe für den Icon-Marker';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['iconImage']['0'] = 'Icon-Bild';
|
||||
@@ -48,7 +49,10 @@ $GLOBALS['TL_LANG']['tl_leaflet_icon']['popupAnchor']['0'] = 'Popup-Anker'
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['popupAnchor']['1'] = 'Geben Sie die Koordinaten des Punktes an, von dem aus sich das Popup "öffnet". Die Koordinaten werden relativ zum Anker des Icons benutzt.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['popups']['0'] = 'Popups verwalten';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['popups']['1'] = 'Popup-Icons verwalten';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['prefix']['0'] = 'Iconpräfix Klasse';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['prefix']['1'] = 'Iconpräfix Klasse, z.B. <em>fa</em>';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['shadowAnchor']['0'] = 'Schatten-Anker';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['shadowAnchor']['1'] = 'Die Koordinaten der "Spitze" des Schattens (relativ zu seiner oberen linken Ecke) (das gleiche wie der Symbol Anker, wenn nicht angegeben).';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['shadowImage']['0'] = 'Schatten-Bild';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['shadowImage']['1'] = 'Wählen Sie ein Bild für den Schatten aus.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_icon']['shadowRetinaImage']['0'] = 'Retina-Schattenbild';
|
||||
@@ -3,8 +3,8 @@
|
||||
* Translations are managed using Transifex. To create a new translation
|
||||
* or to help to maintain an existing one, please register at transifex.com.
|
||||
*
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
*
|
||||
* @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
|
||||
*
|
||||
@@ -3,16 +3,17 @@
|
||||
* Translations are managed using Transifex. To create a new translation
|
||||
* or to help to maintain an existing one, please register at transifex.com.
|
||||
*
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
*
|
||||
* @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
|
||||
*
|
||||
* last-updated: 2016-10-06T15:54:30+02:00
|
||||
* last-updated: 2017-10-17T16:04:07+00:00
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBounds']['0'] = 'Grenzen festlegen';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBounds']['1'] = 'Falls aktiviert passt sich die karten an den Bereich der Datenlayer an, für die Auswirkungen auf die Kartengrenzen zugelassen sind.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBoundsOptions']['deferred']['0'] = 'Nach dem Laden des verzögerten Features';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBoundsOptions']['deferred']['1'] = 'Bestimmt ob die Kartengrenzen neu berechnet werden wenn ein Feature verzögert geladen wird.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBoundsOptions']['load']['0'] = 'bei Karteninitialisierung';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['adjustBoundsOptions']['load']['1'] = 'Grenzen berechnen, wenn die Karte initialisiert wird. Alle statischen und bereits geladenen Features werden mit einbezogen.';
|
||||
@@ -23,6 +24,7 @@ $GLOBALS['TL_LANG']['tl_leaflet_map']['alias']['1'] =
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['behaviour_legend'] = 'Verhalten';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['bounceAtZoomLimits']['0'] = 'Zurückfedern bei Erreichen des Zoom-Limits';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['bounceAtZoomLimits']['1'] = 'Deaktivieren Sie diese Einstellung, falls Sie verhindern möchten, dass außerhalb liegende Elemente der Karte beim Zoomen über die festgelegten minimalen / maximalen Zoomstufen hinaus angezeigt werden wenn mit zwei Fingern gezoomt wird.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['boundsPadding']['1'] = 'Padding wird verwendet, um Grenzen zu setzen. Verwenden Sie kommagetrennte Werte. Wenn 2 Werte angegeben werden, ist die <em>Padding</em>-Option eingestellt. Wenn 4 Werte angegeben werden, ist <em>paddingTopLeft</em> und <em>paddingBottomRight</em> gesetzt.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['boxZoom']['0'] = 'Zoomen durch Markierung';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['boxZoom']['1'] = 'legen Sie fest ob der Kartenausschnitt vergrößert werden kann indem Benutzer die Maus mit gedrückter Umschalttaste über die Karte ziehen.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['cache']['0'] = 'Cache aktivieren';
|
||||
@@ -62,6 +64,8 @@ $GLOBALS['TL_LANG']['tl_leaflet_map']['layers']['1'] =
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['layers_legend'] = 'Standardlayer';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locate']['0'] = 'Nutzerposition ermitteln';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locate']['1'] = 'Initialer Kartenzoom. Diese Funktion versucht, den Benutzer mittels Geolocation-API zu orten.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateMaxZoom']['0'] = 'Lokalisieren Sie den maximalen Zoom';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateMaxZoom']['1'] = 'Max-Zoom bei der Aktualisierung der Kartenansicht.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateMaximumAge']['0'] = 'Maximale Gültigkeit der Benutzerposition';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateMaximumAge']['1'] = 'Maximales Alter der Daten zum Aufenthaltsort in Millisekunden. Ansonsten wird der zwischengespeicherte Wert benutzt.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_map']['locateSetView']['0'] = 'Kartenmitte aktualisieren';
|
||||
@@ -3,12 +3,12 @@
|
||||
* Translations are managed using Transifex. To create a new translation
|
||||
* or to help to maintain an existing one, please register at transifex.com.
|
||||
*
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
*
|
||||
* @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
|
||||
*
|
||||
* last-updated: 2016-10-06T15:54:30+02:00
|
||||
* last-updated: 2017-10-17T16:04:07+00:00
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['active']['0'] = 'Marker aktivieren';
|
||||
@@ -44,6 +44,7 @@ $GLOBALS['TL_LANG']['tl_leaflet_marker']['icon']['1'] = 'Individuelle
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['icons']['0'] = 'Icons verwalten';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['icons']['1'] = 'Marker-Icons verwalten';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['ignoreForBounds']['0'] = 'Von Grenzen-Berechnung ausschließen.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['ignoreForBounds']['1'] = 'Fügen Sie dieses Element nicht in die Berechnung ein.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['keyboard']['0'] = 'Tatstaturnavigation';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['keyboard']['1'] = 'Legen Sie fest ob der Marker über die Tabulatortaste erreicht und mit der Eingabetaste geklickt werden kann.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['new']['0'] = 'Marker erstellen';
|
||||
@@ -62,5 +63,7 @@ $GLOBALS['TL_LANG']['tl_leaflet_marker']['title_legend'] = 'Titel und Ty
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['toggle']['0'] = 'Aktivierung umschalten';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['toggle']['1'] = 'Aktivierung von Marker ID %s umschalten';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['tooltip']['0'] = 'Tooltip';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['tooltip']['1'] = 'Marker-Tooltip als Titelattribut gerendert.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['zIndexOffset']['0'] = 'Z-Index-Offset';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_marker']['zIndexOffset']['1'] = 'Standardmäßig werden Markerbilder z-Index automatisch auf Grundlage der geografischen Breite festgelegt. Verwenden Sie diese Option, wenn Sie den Marker über allen anderen (oder darunter) platzieren möchten und einen hohen Wert wie 1000 (bzw. einen hohen negativen Wert) angeben.';
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
* Translations are managed using Transifex. To create a new translation
|
||||
* or to help to maintain an existing one, please register at transifex.com.
|
||||
*
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
*
|
||||
* @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
|
||||
*
|
||||
@@ -3,22 +3,24 @@
|
||||
* Translations are managed using Transifex. To create a new translation
|
||||
* or to help to maintain an existing one, please register at transifex.com.
|
||||
*
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
*
|
||||
* @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
|
||||
*
|
||||
* last-updated: 2016-10-04T13:07:35+02:00
|
||||
* last-updated: 2017-10-17T16:04:07+00:00
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['active_legend'] = 'Aktivierung';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['alias']['0'] = 'Alias';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['alias']['1'] = 'Alias des Stils.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['color']['0'] = 'Linienfarbe';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['color']['1'] = 'Eigene Linienfarbe. Wenn dieses Feld leer ist wird die Standard-Linienfarbe benutzt. Erwartete Werte sind vollständige Hex-Codes (mit #).';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['config_legend'] = 'Konfiguration';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['copy']['0'] = 'Stil kopieren';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['copy']['1'] = 'Stil ID %s kopieren';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['dashArray']['0'] = 'Linienmuster';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['dashArray']['1'] = 'Geben Sie einen String ein, der für die <a href="https://developer.mozilla.org/en/SVG/Attribute/stroke-dasharray" target="_blank">Linienart</a> benutzt werden soll.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['delete']['0'] = 'Stil löschen';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['delete']['1'] = 'Stil ID %s löschen';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['edit']['0'] = 'Stil bearbeiten';
|
||||
@@ -26,6 +28,7 @@ $GLOBALS['TL_LANG']['tl_leaflet_style']['edit']['1'] = 'Stil ID %s bearbe
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['fill']['0'] = 'Vektor füllen';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['fill']['1'] = 'Bestimmen Sie, ob der Pfad gefüllt dargestellt werden soll.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['fillColor']['0'] = 'Füllfarbe';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['fillColor']['1'] = 'Eigene Linienfarbe. Wenn dieses Feld leer ist wird die Standard-Linienfarbe benutzt. Erwartete Werte sind vollständige Hex-Codes (mit #).';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['fillOpacity']['0'] = 'Transparenz der Füllung';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['fillOpacity']['1'] = 'Die Transparenz der Füllung kann einen Wert zwischen 0 und 1 annehmen.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['icons']['0'] = 'Icons verwalten';
|
||||
@@ -35,6 +38,7 @@ $GLOBALS['TL_LANG']['tl_leaflet_style']['layersBtn']['1'] = 'Leaflet-Layer ver
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['lineCap']['0'] = 'Linienenden';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['lineCap']['1'] = 'Geben Sie einen Wert ein, der für die <a href="https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stroke-linecap" target="_blank">Enden der Linie</a> benutzt werden soll,';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['lineJoin']['0'] = 'Linienverbindung';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['lineJoin']['1'] = 'Geben Sie einen String ein, der die <a href="https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stroke-linejoin" target="_blank">Form der Ecken</a> definiert.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['new']['0'] = 'Stil erstellen';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['new']['1'] = 'Neuen Stil erstellen';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['opacity']['0'] = 'Linientransparenz';
|
||||
@@ -44,6 +48,7 @@ $GLOBALS['TL_LANG']['tl_leaflet_style']['popups']['1'] = 'Popup-Icons verwa
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['show']['0'] = 'Details anzeigen';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['show']['1'] = 'Details des Stils ID %s anzeigen';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['stroke']['0'] = 'Linie ziehen';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['stroke']['1'] = 'Legt fest, ob eine Linie entlang des Pfades dargestellt werden soll. Deaktivieren Sie diese Einstellung um die Grenzen von Polygonen oder Kreisen unsichtbar zu schalten.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['title']['0'] = 'Titel';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['title']['1'] = 'Titel des Stils.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_style']['title_legend'] = 'Titel und Typ';
|
||||
@@ -3,8 +3,8 @@
|
||||
* Translations are managed using Transifex. To create a new translation
|
||||
* or to help to maintain an existing one, please register at transifex.com.
|
||||
*
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
*
|
||||
* @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
|
||||
*
|
||||
@@ -3,8 +3,8 @@
|
||||
* Translations are managed using Transifex. To create a new translation
|
||||
* or to help to maintain an existing one, please register at transifex.com.
|
||||
*
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
* @link http://help.transifex.com/intro/translating.html
|
||||
* @link https://www.transifex.com/projects/p/contao-leaflet-maps/language/de/
|
||||
*
|
||||
* @license http://www.gnu.org/licenses/lgpl-3.0.html LGPL
|
||||
*
|
||||
@@ -1,5 +1,15 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_LANG']['leaflet_control']['zoom'][0] = 'Zoom control';
|
||||
$GLOBALS['TL_LANG']['leaflet_control']['zoom'][1] = 'A basic zoom control. For more details read the <a href="http://leafletjs.com/reference.html#control-zoom" target="_blank">Leaflet documentation</a>.';
|
||||
$GLOBALS['TL_LANG']['leaflet_control']['attribution'][0] = 'Attribution control';
|
||||
@@ -29,6 +39,8 @@ $GLOBALS['TL_LANG']['leaflet_layer']['tile'][0] = 'Tile layer';
|
||||
$GLOBALS['TL_LANG']['leaflet_layer']['tile'][1] = 'Tile layer with full config options.';
|
||||
$GLOBALS['TL_LANG']['leaflet_layer']['overpass'][0] = 'Overpass API';
|
||||
$GLOBALS['TL_LANG']['leaflet_layer']['overpass'][1] = 'Overpass API data layer.';
|
||||
$GLOBALS['TL_LANG']['leaflet_layer']['file'][0] = 'File';
|
||||
$GLOBALS['TL_LANG']['leaflet_layer']['file'][1] = 'Geo data from a file (gpx,kml,wkt).';
|
||||
|
||||
$GLOBALS['TL_LANG']['leaflet_vector']['polyline'][0] = 'Polyline';
|
||||
$GLOBALS['TL_LANG']['leaflet_vector']['polyline'][1] = 'Polyline overlay. For more details read the <a href="http://leafletjs.com/reference.html#polyline" target="_blank">Leaflet documentation</a>.';
|
||||
@@ -1,5 +1,15 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_LANG']['MOD']['leaflet'][0] = 'Leaflet';
|
||||
$GLOBALS['TL_LANG']['MOD']['leaflet'][1] = 'Leaflet extension for Contao';
|
||||
$GLOBALS['TL_LANG']['MOD']['leaflet_map'][0] = 'Leaflet Maps';
|
||||
@@ -15,8 +25,8 @@ $GLOBALS['TL_LANG']['MOD']['tl_leaflet_icon'] = 'Icons';
|
||||
$GLOBALS['TL_LANG']['MOD']['tl_leaflet_marker'] = 'Markers';
|
||||
$GLOBALS['TL_LANG']['MOD']['tl_leaflet_control'] = 'Controls';
|
||||
|
||||
$GLOBALS['TL_LANG']['FMD']['leaflet'][0] = 'Leaflet Map';
|
||||
$GLOBALS['TL_LANG']['FMD']['leaflet'][1] = 'Integrate leaflet map as frontend module.';
|
||||
$GLOBALS['TL_LANG']['FMD']['leaflet'][0] = 'Leaflet Map';
|
||||
$GLOBALS['TL_LANG']['FMD']['leaflet'][1] = 'Integrate leaflet map as frontend module.';
|
||||
|
||||
$GLOBALS['TL_LANG']['CTE']['leaflet'][0] = 'Leaflet Map';
|
||||
$GLOBALS['TL_LANG']['CTE']['leaflet'][1] = 'Integrate leaflet map as content element.';
|
||||
$GLOBALS['TL_LANG']['CTE']['leaflet'][0] = 'Leaflet Map';
|
||||
$GLOBALS['TL_LANG']['CTE']['leaflet'][1] = 'Integrate leaflet map as content element.';
|
||||
@@ -1,5 +1,15 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_LANG']['tl_content']['leaflet_legend'] = 'Leaflet map configuration';
|
||||
$GLOBALS['TL_LANG']['tl_content']['leaflet_map'][0] = 'Leaflet Map';
|
||||
$GLOBALS['TL_LANG']['tl_content']['leaflet_map'][1] = 'Choose a Leaflet Map';
|
||||
@@ -1,5 +1,15 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Leaflet maps for Contao CMS.
|
||||
*
|
||||
* @package contao-leaflet-maps
|
||||
* @author David Molineus <david.molineus@netzmacht.de>
|
||||
* @copyright 2014-2017 netzmacht David Molineus. All rights reserved.
|
||||
* @license LGPL-3.0 https://github.com/netzmacht/contao-leaflet-maps/blob/master/LICENSE
|
||||
* @filesource
|
||||
*/
|
||||
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['name_legend'] = 'Title and type';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['config_legend'] = 'Configuration';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['active_legend'] = 'Activation';
|
||||
@@ -89,5 +99,5 @@ $GLOBALS['TL_LANG']['tl_leaflet_control']['topright'][1] = 'Top right of the
|
||||
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['base'][0] = 'Base layer';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['base'][1] = 'Base layers will be switched with radio buttons. Note that all base layers should be passed in the base layers object, but only one should be added to the map during map instantiation';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['overlay'][0] = 'Overlay';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['overlay'][1] = 'Overlays will be switched with checkboxes.';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['overlay'][0] = 'Overlay';
|
||||
$GLOBALS['TL_LANG']['tl_leaflet_control']['overlay'][1] = 'Overlays will be switched with checkboxes.';
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user