File tree Expand file tree Collapse file tree 10 files changed +74
-34
lines changed
Expand file tree Collapse file tree 10 files changed +74
-34
lines changed Original file line number Diff line number Diff line change 88 < link rel ="icon " href ="./favicon.ico " type ="image/x-icon ">
99
1010 < script src ="/i/ok.js "> </ script >
11- < script src ="/i/josm.js "> </ script >
1211 < script src ="/i/lib.js "> </ script >
12+ < script src ="/i/josm.js "> </ script >
1313 < script src ="/i/ajax.js "> </ script >
1414 < script src ="/i/osm.js "> </ script >
1515 < script src ="/i/map.js "> </ script >
5555 if ( a . tags [ x = 'contact:website' ] )
5656 st += 'Сайт: <a href="' + a . tags [ x ] + '" target="_blank">' + a . tags [ x ] + '</a><br>'
5757
58- st += '<br><hr><small>Данные с сайта <a href="' + josm . link ( a . id , a . type ) + '" target="_blank">OpenStreetMap</a>'
58+ st += osm . editLinks ( a )
5959
6060 return st ;
6161}
Original file line number Diff line number Diff line change 88 < link rel ="icon " href ="./favicon.ico " type ="image/x-icon ">
99
1010 < script src ="/i/ok.js "> </ script >
11- < script src ="/i/josm.js "> </ script >
1211 < script src ="/i/lib.js "> </ script >
12+ < script src ="/i/josm.js "> </ script >
1313 < script src ="/i/ajax.js "> </ script >
1414 < script src ="/i/osm.js "> </ script >
1515 < script src ="/i/map.js "> </ script >
8181 if ( a . tags [ 'addr:street' ] )
8282 st += 'Улица: <i>' + a . tags [ 'addr:street' ] + '</i><br>'
8383
84- st += '<br><small>#' + a . id + '</small>'
84+ st += osm . editLinks ( a )
8585
8686 return st ;
8787}
Original file line number Diff line number Diff line change 88 < link rel ="icon " href ="./favicon.ico " type ="image/x-icon ">
99
1010 < script src ="/i/ok.js "> </ script >
11- < script src ="/i/josm.js "> </ script >
1211 < script src ="/i/lib.js "> </ script >
12+ < script src ="/i/josm.js "> </ script >
1313 < script src ="/i/ajax.js "> </ script >
1414 < script src ="/i/osm.js "> </ script >
1515 < script src ="/i/map.js "> </ script >
7070 if ( a . tags [ 'building:levels' ] )
7171 st += 'Этажей: <i>' + a . tags [ 'building:levels' ] + '</i><br>'
7272
73- st += '<br><hr><small>Данные с сайта <a href="' + josm . link ( a . id , a . type ) + '" target="_blank">OpenStreetMap</a>'
73+ st += osm . editLinks ( a )
7474
7575 return st ;
7676}
Original file line number Diff line number Diff line change 88 < link rel ="icon " href ="./favicon.ico " type ="image/x-icon ">
99
1010 < script src ="/i/ok.js "> </ script >
11- < script src ="/i/josm.js "> </ script >
1211 < script src ="/i/lib.js "> </ script >
12+ < script src ="/i/josm.js "> </ script >
1313 < script src ="/i/ajax.js "> </ script >
1414 < script src ="/i/osm.js "> </ script >
1515 < script src ="/i/map.js "> </ script >
176176 comment = '<b>' + title + '</b>' + comment ;
177177
178178 if ( c != color . ok )
179- {
180- comment += '<br><br>' ;
181- comment += '<a href="http://level0.osmz.ru/?url=node/' + a . id + '" target="_blank">level0</a>'
182179 stat . ne ++ ;
183- }
180+
181+ comment += osm . editLinks ( a )
184182
185183 var radius = 2
186184 if ( a . tags . entrance == 'staircase' ) radius = 5
235233 st += '<br>'
236234 }
237235
238- st += '<br><small>' + a . type + '#' + a . id + '</small>'
236+ st += osm . editLinks ( a )
239237
240238 return st ;
241239}
Original file line number Diff line number Diff line change 11var josm = {
2+ version : false , // версия JOSM
3+ running : false , // запущен ли редактор
4+
25 /** иконка со ссылкой на объект */
36 icon : function ( id , type )
47 {
@@ -16,22 +19,30 @@ var josm = {
1619 '</a>'
1720 } ,
1821 /** ссылка на объект */
19- link : function ( id , type )
22+ link : function ( a )
2023 {
21- if ( ! type ) type = josm . getType ( id )
22- return 'http://www.openstreetmap.org/browse/' + type + '/' + id
24+ var type = a . type
25+ if ( ! type ) type = osm . getType ( a . id )
26+ return 'http://127.0.0.1:8111/load_object?objects=' + type [ 0 ] + a . id
2327 } ,
24- /** тип объекта */
25- getType : function ( id )
26- {
27- var type ; id += ''
28+ }
2829
29- if ( id . charAt ( 0 ) == 'n' ) type = 'node'
30- if ( id . charAt ( 0 ) == 'w' ) type = 'way'
31- if ( id . charAt ( 0 ) == 'r' ) type = 'relation'
30+ /** проверка запущен JOSM или нет */
31+ setInterval ( x = function ( ) {
32+ if ( window . ajax )
33+ window . ajax ( 'http://127.0.0.1:8111/version' , function ( a ) {
34+ josm . running = false
35+ if ( a . protocolversion )
36+ {
37+ josm . running = true
38+ josm . version = a . protocolversion . major + '.' + a . protocolversion . minor
39+ }
40+ } )
41+ } , 10000 )
42+ x ( )
3243
33- id = id . replace ( / \D / g , '' )
34- if ( ! type ) type = 'node'
35- return type
36- } ,
37- }
44+ window . $ ( function ( ) {
45+ var div = document . createElement ( 'div' )
46+ div . innerHTML = '<iframe name="josm" style="display: none"></iframe>'
47+ document . body . appendChild ( div )
48+ } )
Original file line number Diff line number Diff line change 11var osm = {
22search_region : 60 , // коэффициент округления координат (чем меньше - тем больший регион скачивается)
33
4+ /** поиск объектов в OSM базе */
45search : function ( filter , handler ) {
56 var bounds = ''
67 if ( filter . bounds )
@@ -165,6 +166,38 @@ search: function(filter, handler){
165166
166167 handler ( data )
167168 } )
169+ } ,
170+
171+ /** ссылка на объект */
172+ link : function ( id , type )
173+ {
174+ if ( ! type ) type = josm . getType ( id )
175+ return 'http://www.openstreetmap.org/browse/' + type + '/' + id
176+ } ,
177+ /** тип объекта */
178+ getType : function ( id )
179+ {
180+ var type ; id += ''
181+
182+ if ( id . charAt ( 0 ) == 'n' ) type = 'node'
183+ if ( id . charAt ( 0 ) == 'w' ) type = 'way'
184+ if ( id . charAt ( 0 ) == 'r' ) type = 'relation'
185+
186+ id = id . replace ( / \D / g, '' )
187+ if ( ! type ) type = 'node'
188+ return type
189+ } ,
190+
191+ /** ссылки на редактирование */
192+ editLinks : function ( a )
193+ {
194+ var st = ''
195+ st += '<hr><small>'
196+ st += '<a target="_blank" href="' + osm . link ( a . id , a . type ) + '">Открыть в OSM</a>'
197+ if ( josm . running )
198+ st += ' <a target="josm" href="' + josm . link ( a ) + '">Загрузить в JOSM</a>'
199+ st += ' <a target="_blank" href="http://level0.osmz.ru/?url=' + a . type + '/' + a . id + '">Открыть в level0</a>'
200+ return st
168201}
169202
170203}
Original file line number Diff line number Diff line change 88 < link rel ="icon " href ="./favicon.ico " type ="image/x-icon ">
99
1010 < script src ="/i/ok.js "> </ script >
11- < script src ="/i/josm.js "> </ script >
1211 < script src ="/i/lib.js "> </ script >
12+ < script src ="/i/josm.js "> </ script >
1313 < script src ="/i/ajax.js "> </ script >
1414 < script src ="/i/osm.js "> </ script >
1515 < script src ="/i/map.js "> </ script >
6565 if ( a . tags [ 'building:levels' ] )
6666 st += 'Этажей: <i>' + a . tags [ 'building:levels' ] + '</i><br>'
6767
68- st += '<br><hr><small>Данные с сайта <a href="' + josm . link ( a . id , a . type ) + '" target="_blank">OpenStreetMap</a>'
68+ st += osm . editLinks ( a )
6969
7070 return st ;
7171}
Original file line number Diff line number Diff line change 6060 if ( x = a [ 'contact:vk' ] )
6161 st += '<br>' + tab + '<a href="' + x + '" target="_blank">страница вконтакте</a>'
6262
63- st += '<br><hr><small>Данные с сайта <a href="' + josm . link ( data . id ) + '" target="_blank">OpenStreetMap</a>'
63+ st += '<br><hr><small>Данные с сайта <a href="' + osm . link ( data . id , data . type ) + '" target="_blank">OpenStreetMap</a>'
6464
6565 return st ;
6666}
Original file line number Diff line number Diff line change 88 < link rel ="icon " href ="./favicon.ico " type ="image/x-icon ">
99
1010 < script src ="/i/ok.js "> </ script >
11- < script src ="/i/josm.js "> </ script >
1211 < script src ="/i/lib.js "> </ script >
12+ < script src ="/i/josm.js "> </ script >
1313 < script src ="/i/ajax.js "> </ script >
1414 < script src ="/i/osm.js "> </ script >
1515 < script src ="/i/map.js "> </ script >
6565 st += '<br>'
6666 }
6767
68- st += '<br><hr><small>Данные с сайта <a href="' + josm . link ( a . id ) + '" target="_blank">OpenStreetMap</a>'
68+ st += osm . editLinks ( a )
6969
7070 return st ;
7171}
You can’t perform that action at this time.
0 commit comments