Compare commits

..

3 Commits

Author SHA1 Message Date
b2958f15d7 Remove debug code 2020-04-19 23:29:16 +02:00
9bac7e4678 Highlight search result streets in red 2020-04-19 23:28:54 +02:00
bfaacd813b Add street names to search 2020-04-19 23:09:26 +02:00
2 changed files with 28 additions and 5 deletions

View File

@ -232,7 +232,16 @@ function toggle_search() {
function htmlEntities(str) {
return String(str).replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/"/g, '&quot;');
}
var regex;
function polyline_get_middle_coords(coords) {
var ret = [2];
ret[0] = coords[0][0] + (coords[coords.length - 1][0] - coords[0][0]) / 2;
ret[1] = coords[0][1] + (coords[coords.length - 1][1] - coords[0][1]) / 2;
return ret;
}
var highlighted_line;
var default_street_color = "#3388ff";
function search(e) {
var query = htmlEntities(document.getElementById("search_query").value);
document.getElementById('search_results').innerHTML = "";
@ -253,6 +262,23 @@ function search(e) {
results.appendChild(el);
}
break;
case "LineString":
if (item.options.color != default_street_color) { // De-hilight last search
item.options.color = default_street_color;
item.redraw();
}
regex = new RegExp(query, 'i');
if (item.feature.properties.name.match(regex)) {
console.log(item.options.color);
item.options.color = "#FF0000";
item.redraw();
el = document.createElement("li");
zpos = polyline_get_middle_coords(item.feature.geometry.coordinates);
el.innerHTML = "[" + layers._layers[i].name + "] " + '<a href="#" onclick="latLng2 = L.latLng(' + zpos[1] + ',' + zpos[0] + '); jump_to(latLng2); return false;">' + item.feature.properties.name + "</a>";
results.appendChild(el);
}
break;
default:
break;
}

View File

@ -77,10 +77,7 @@ if (editor_mode) {
// polyline.on('dragend', onDragEnd); // TODO: Doesn't work, see "workaround" below
polyline.enableEdit();
if (interactive) {
console.log(coords);
latlng = L.latLng(coords[0][0] + (coords[coords.length - 1][0] - coords[0][0]) / 2,
coords[0][1] + (coords[coords.length - 1][1] - coords[0][1]) / 2);
console.log("NEW=" + latlng);
latlng = L.latLng(polyline_get_middle_coords(coords));
jump_to(latlng, 8);
}
}