1<a id="{$mapcontrol.id|escape}" href="#" title="{$mapcontrol.label|escape}">{icon _id=$mapcontrol.icon title=$mapcontrol.label class=$mapcontrol.class}</a>
2{jq}
3$('#appframe .map-container').bind('initialized', function () {
4	var container = this
5		, link = '#{{$mapcontrol.id|escape}}'
6		, vlayer
7		, mode
8		, controls = []
9		, func
10		, drawStyle = {
11			fillColor: "#6699cc",
12			strokeColor: "#6699cc",
13			pointRadius: 5,
14			fillOpacity: ".3",
15			strokeDashstyle: "solid"
16		}
17		;
18
19	{{if $mapcontrol.function}}
20		func = function () {
21			{{$mapcontrol.function}};
22			return false;
23		};
24	{{elseif $mapcontrol.mode}}
25		mode = {{$mapcontrol.mode|json_encode}};
26	{{else}}
27		vlayer = container.vectors;
28		{{if $mapcontrol.control}}
29			controls.push({{$mapcontrol.control}});
30		{{/if}}
31
32		{{if $mapcontrol.navigation}}
33			controls.push(new OpenLayers.Control.NavToolbar());
34		{{/if}}
35
36		mode = {{$mapcontrol.label|json_encode}};
37		container.modeManager.addMode({
38			name: {{$mapcontrol.label|json_encode}},
39			controls: controls
40		});
41	{{/if}}
42
43	container.modeManager.register('activate', mode, function () {
44		$(link).addClass('active');
45	});
46	container.modeManager.register('deactivate', mode, function () {
47		$(link).removeClass('active');
48	});
49
50	if (func) {
51		$(link).click(func);
52	} else {
53		$(link).click(function () {
54			container.modeManager.switchTo(mode);
55			return false;
56		});
57	}
58});
59{/jq}
60