1: <?php
2:
3: namespace Mapbender\CoreBundle\Element;
4:
5: use Mapbender\CoreBundle\Component\Element;
6:
7: /**
8: * A ScaleSelector
9: *
10: * Displays and changes a map scale.
11: *
12: * @author Paul Schmidt
13: */
14: class ScaleSelector extends Element
15: {
16:
17: /**
18: * @inheritdoc
19: */
20: public static function getClassTitle()
21: {
22: return "Scale Selector";
23: }
24:
25: /**
26: * @inheritdoc
27: */
28: public static function getClassDescription()
29: {
30: return "Displays and changes a map scale.";
31: }
32:
33: /**
34: * @inheritdoc
35: */
36: public static function getClassTags()
37: {
38: return array('scale', 'selector');
39: }
40:
41: /**
42: * @inheritdoc
43: */
44: public function getAssets()
45: {
46: return array(
47: 'js' => array('mapbender.element.scaleselector.js',
48: '@FOMCoreBundle/Resources/public/js/frontend/components.js'),
49: 'css' => array()
50: );
51: }
52:
53: /**
54: * @inheritdoc
55: */
56: public static function getType()
57: {
58: return 'Mapbender\CoreBundle\Element\Type\ScaleSelectorAdminType';
59: }
60:
61: /**
62: * @inheritdoc
63: */
64: public static function getDefaultConfiguration()
65: {
66: return array(
67: "target" => null,
68: 'label' => false,
69: "tooltip" => "Scale");
70: }
71:
72: /**
73: * @inheritdoc
74: */
75: public function getWidgetName()
76: {
77: return 'mapbender.mbScaleSelector';
78: }
79:
80: /**
81: * @inheritdoc
82: */
83: public function render()
84: {
85: return $this->container->get('templating')
86: ->render('MapbenderCoreBundle:Element:scaleselector.html.twig',
87: array(
88: 'id' => $this->getId(),
89: "title" => $this->getTitle(),
90: 'configuration' => $this->getConfiguration()));
91: }
92:
93: /**
94: * @inheritdoc
95: */
96: public static function getFormTemplate()
97: {
98: return 'MapbenderManagerBundle:Element:scaleselector.html.twig';
99: }
100: }
101:
102: