1 <% content_for :left_menu do %>
2 <%= link_to_function t('site.key.map_key'), "showKey();", { :title => t('site.key.map_key_tooltip') } %>
5 <script type="text/javascript">
8 function showKeyEntry(image, text, link) {
11 ret += ' <td class="mapkey-table-key" align="center">';
12 ret += ' <img src="/images/mapkey/' + image + '" />';
14 ret += ' <td class="mapkey-table-value">';
21 var zoomlevel = map.getZoom();
22 var mapkey_values = new Array();
23 mapkey_values['heading'] = "<%= t'site.key.table.heading' %>";
24 mapkey_values['motorway'] = "<%= t'site.key.table.entry.motorway' %>";
25 mapkey_values['trunk'] = "<%= t'site.key.table.entry.trunk' %>";
26 mapkey_values['primary'] = "<%= t'site.key.table.entry.primary' %>";
27 mapkey_values['secondary'] = "<%= t'site.key.table.entry.secondary' %>";
28 mapkey_values['unclassified'] = "<%= t'site.key.table.entry.unclassified' %>";
29 mapkey_values['unsurfaced'] = "<%= t'site.key.table.entry.unsurfaced' %>";
30 mapkey_values['track'] = "<%= t'site.key.table.entry.track' %>";
31 mapkey_values['byway'] = "<%= t'site.key.table.entry.byway' %>";
32 mapkey_values['bridleway'] = "<%= t'site.key.table.entry.bridleway' %>";
33 mapkey_values['cycleway'] = "<%= t'site.key.table.entry.cycleway' %>";
34 mapkey_values['footway'] = "<%= t'site.key.table.entry.footway' %>";
35 mapkey_values['rail'] = "<%= t'site.key.table.entry.rail' %>";
36 mapkey_values['subway'] = "<%= t'site.key.table.entry.subway' %>";
37 mapkey_values['tram'] = "<%= t'site.key.table.entry.tram' %>";
38 mapkey_values['cable'] = "<%= t'site.key.table.entry.cable' %>";
39 mapkey_values['runway'] = "<%= t'site.key.table.entry.runway' %>";
40 mapkey_values['apron'] = "<%= t'site.key.table.entry.apron' %>";
41 mapkey_values['admin'] = "<%= t'site.key.table.entry.admin' %>";
42 mapkey_values['forest'] = "<%= t'site.key.table.entry.forest' %>";
43 mapkey_values['wood'] = "<%= t'site.key.table.entry.wood' %>";
44 mapkey_values['golf'] = "<%= t'site.key.table.entry.golf' %>";
45 mapkey_values['park'] = "<%= t'site.key.table.entry.park' %>";
46 mapkey_values['resident'] = "<%= t'site.key.table.entry.resident' %>";
47 mapkey_values['tourist'] = "<%= t'site.key.table.entry.tourist' %>";
48 mapkey_values['common'] = "<%= t'site.key.table.entry.common' %>";
49 mapkey_values['retail'] = "<%= t'site.key.table.entry.retail' %>";
50 mapkey_values['industrial'] = "<%= t'site.key.table.entry.industrial' %>";
51 mapkey_values['commercial'] = "<%= t'site.key.table.entry.commercial' %>";
52 mapkey_values['heathland'] = "<%= t'site.key.table.entry.heathland' %>";
53 mapkey_values['lake'] = "<%= t'site.key.table.entry.lake' %>";
54 mapkey_values['farm'] = "<%= t'site.key.table.entry.farm' %>";
55 mapkey_values['brownfield'] = "<%= t'site.key.table.entry.brownfield' %>";
56 mapkey_values['cemetery'] = "<%= t'site.key.table.entry.cemetery' %>";
57 mapkey_values['allotments'] = "<%= t'site.key.table.entry.allotments' %>";
58 mapkey_values['pitch'] = "<%= t'site.key.table.entry.pitch' %>";
59 mapkey_values['centre'] = "<%= t'site.key.table.entry.centre' %>";
60 mapkey_values['reserve'] = "<%= t'site.key.table.entry.reserve' %>";
61 mapkey_values['military'] = "<%= t'site.key.table.entry.military' %>";
62 mapkey_values['school'] = "<%= t'site.key.table.entry.school' %>";
63 mapkey_values['building'] = "<%= t'site.key.table.entry.building' %>";
64 mapkey_values['station'] = "<%= t'site.key.table.entry.station' %>";
65 mapkey_values['summit'] = "<%= t'site.key.table.entry.summit' %>";
66 mapkey_values['tunnel'] = "<%= t'site.key.table.entry.tunnel' %>";
67 mapkey_values['bridge'] = "<%= t'site.key.table.entry.bridge' %>";
68 mapkey_values['private'] = "<%= t'site.key.table.entry.private' %>";
69 mapkey_values['permissive'] = "<%= t'site.key.table.entry.permissive' %>";
70 mapkey_values['destination'] = "<%= t'site.key.table.entry.destination' %>";
71 mapkey_values['construction'] = "<%= t'site.key.table.entry.construction' %>";
76 out += '<div id="mapkey">';
77 out += '<h3>' + i18n(mapkey_values['heading'], { zoom_level: zoomlevel }) + "</h3>";
78 out += '<table class="mapkey-table">';
79 out += showKeyEntry('motorway.png', mapkey_values['motorway'], '');
81 if (zoomlevel >= 12) {
84 out += showKeyEntry('trunk' + suffix + '.png', mapkey_values['trunk'], '');
86 out += showKeyEntry('primary' + suffix + '.png', mapkey_values['primary'], '');
89 out += showKeyEntry('secondary' + suffix + '.png', mapkey_values['secondary'], '');
91 if (zoomlevel >= 10) {
93 if (zoomlevel >= 13) { suffix="13"; }
94 out += showKeyEntry('unclassified' + suffix + '.png', mapkey_values['unclassified'], '');
96 if (zoomlevel >= 13) {
97 out += showKeyEntry('unsurfaced.png', mapkey_values['unsurfaced'], '');
98 out += showKeyEntry('track.png', mapkey_values['track'], '');
99 out += showKeyEntry('byway.png', mapkey_values['byway'], '');
100 out += showKeyEntry('bridleway.png', mapkey_values['bridleway'], '');
101 out += showKeyEntry('cycleway.png', mapkey_values['cycleway'], '');
102 out += showKeyEntry('footway.png', mapkey_values['footway'], '');
104 if (zoomlevel >= 8) {
106 if (zoomlevel >= 13) { suffix = "13"; }
107 out += showKeyEntry('rail' + suffix + '.png', mapkey_values['rail'], '');
109 if (zoomlevel >= 13) {
110 out += showKeyEntry('subway.png', mapkey_values['subway'], '');
111 out += showKeyEntry('tram.png', mapkey_values['tram'], '');
113 if (zoomlevel >= 12) {
114 out += showKeyEntry('cable.png', mapkey_values['cable'], '');
116 if (zoomlevel >= 11) {
117 out += showKeyEntry('runway.png', mapkey_values['runway'], '');
119 if (zoomlevel >= 12) {
120 out += showKeyEntry('apron.png', mapkey_values['apron'], '');
122 out += showKeyEntry('admin.png', mapkey_values['admin'], '');
123 if (zoomlevel >= 9) {
124 out += showKeyEntry('forest.png', mapkey_values['forest'], '');
126 if (zoomlevel >= 10) {
127 out += showKeyEntry('wood.png', mapkey_values['wood'], '');
128 out += showKeyEntry('golf.png', mapkey_values['golf'], '');
129 out += showKeyEntry('park.png', mapkey_values['park'], '');
131 if (zoomlevel >= 8) {
132 out += showKeyEntry('resident.png', mapkey_values['resident'], '');
134 if (zoomlevel >= 10) {
135 out += showKeyEntry('tourist.png', mapkey_values['tourist'], '');
136 out += showKeyEntry('common.png', mapkey_values['common'], '');
137 out += showKeyEntry('retail.png', mapkey_values['retail'], '');
138 out += showKeyEntry('industrial.png', mapkey_values['industrial'], '');
139 out += showKeyEntry('commercial.png', mapkey_values['commercial'], '');
140 out += showKeyEntry('heathland.png', mapkey_values['heathland'], '');
142 if (zoomlevel >= 8) {
143 out += showKeyEntry('lake.png', mapkey_values['lake'], '');
145 if (zoomlevel >= 10) {
146 out += showKeyEntry('farm.png', mapkey_values['farm'], '');
147 out += showKeyEntry('brownfield.png', mapkey_values['brownfield'], '');
149 if (zoomlevel >= 11) {
150 out += showKeyEntry('cemetery.png', mapkey_values['cemetery'], '');
151 out += showKeyEntry('allotments.png', mapkey_values['allotments'], '');
152 out += showKeyEntry('pitch.png', mapkey_values['pitch'], '');
153 out += showKeyEntry('centre.png', mapkey_values['centre'], '');
154 out += showKeyEntry('reserve.png', mapkey_values['reserve'], '');
155 out += showKeyEntry('military.png', mapkey_values['military'], '');
157 if (zoomlevel >= 12) {
158 out += showKeyEntry('school.png', mapkey_values['school'], '');
159 out += showKeyEntry('building.png', mapkey_values['building'], '');
160 out += showKeyEntry('station.png', mapkey_values['station'], '');
161 out += showKeyEntry('summit.png', mapkey_values['summit'], '');
162 out += showKeyEntry('tunnel.png', mapkey_values['tunnel'], '');
164 if (zoomlevel >= 13) {
165 out += showKeyEntry('bridge.png', mapkey_values['bridge'], '');
167 if (zoomlevel >= 15) {
168 out += showKeyEntry('private.png', mapkey_values['private'], '');
169 out += showKeyEntry('permissive.png', mapkey_values['permissive'], '');
170 out += showKeyEntry('destination.png', mapkey_values['destination'], '');
172 if (zoomlevel >= 12) {
173 out += showKeyEntry('construction.png', mapkey_values['construction'], '');
179 updateSidebar("<%= t('site.key.map_key') %>", out);
180 openSidebar({ width: "210px" });
183 function updateKey() {
184 if (sidebarOpen("<%= t('site.key.map_key') %>"))