Guest User

Untitled

a guest
Nov 22nd, 2017
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.78 KB | None | 0 0
  1. function filterLines(url2) {
  2. var lineLayer = new L.GeoJSON.AJAX(url2, {
  3. pointToLayer: function (feature, latlng) {
  4. if (feature.properties.type == 'Marker') {
  5. return L.marker(latlng, {icon: icon[feature.properties.icon]});
  6. } else {
  7. return L.marker(latlng, {icon: lineMarker});
  8. }
  9.  
  10. L.circleMarker(latlng, geojsonMarkerOptions);
  11. }, style: myStyle, onEachFeature: lineDirection
  12. }).on('click', lineOnClick).showMeasurements().addTo(linesGroup);
  13. }
  14.  
  15. function lineOnClick(e){
  16. if (e.layer.feature.geometry.type == 'Point' && e.layer.feature.properties.type != 'Marker') {
  17. var point = e.layer.feature.properties.id;
  18. var pointLatLng = e.latlng;
  19. popup.setContent("<b>Type: </b>" + e.layer.feature.properties.lineType + "<br><a href='#' onclick="loadDoc('line?m=lineMarkerForm&id=" + e.layer.feature.properties.lineLatLngID + "&type=" + e.layer.feature.properties.lineTypeID + "', 'onscreenForm', 'osfBody');"><img src='<?php $db->baseurl ?>img/map/plus.png'></a><br><b>Notes: </b>" + e.layer.feature.properties.notes + "<br><a href='#' onclick="loadDoc('line?m=lineForm&id=" + e.layer.feature.properties.lineID + "', 'onscreenForm', 'osfBody');"><img src='<?php $db->baseurl ?>img/map/edit.png'></a><a href='#' onclick='forkLineFunc(" + point + ", " + pointLatLng.lat + ", " + pointLatLng.lng + ")'><img src='<?php $db->baseurl; ?>img/fork.png'></a>");
  20. window.popup.setLatLng(e.latlng);
  21. window.popup.openOn(map);
  22. } else if(e.layer.feature.geometry.type == 'Point' && e.layer.feature.properties.type == 'Marker'){
  23. var point = e.layer.feature.properties.id;
  24. var pointLatLng = e.latlng;
  25. popup.setContent("<b>ID: </b>"+e.layer.feature.properties.id+"<br><b>Type: </b>" + e.layer.feature.properties.markerType + "<br><b>Notes: </b>" + e.layer.feature.properties.notes + "<br><a href='#' onclick="loadDoc('line?m=lineMarkerForm&id=" + e.layer.feature.properties.id + "&type=" + e.layer.feature.properties.lineTypeID + "', 'onscreenForm', 'osfBody');"><img src='<?php $db->baseurl ?>img/map/edit.png'></a><a href='#' onclick='forkLineFunc(" + point + ", " + pointLatLng.lat + ", " + pointLatLng.lng + ")'><img src='<?php $db->baseurl; ?>img/fork.png'></a>");
  26. window.popup.setLatLng(e.latlng);
  27. window.popup.openOn(map);
  28. } else if (e.layer.feature.geometry.type == 'LineString') {
  29. popup.setContent("<b>Type: </b>"+e.layer.feature.properties.lineType+"<br><b>Notes: </b>"+e.layer.feature.properties.notes+"<br><b>Approx Length: </b>"+e.layer.feature.properties.totalDistance.toFixed(1)+"m");
  30. window.popup.setLatLng(e.latlng);
  31. window.popup.openOn(map);
  32. }
  33. }
  34. function lineDirection(feature, layer) {
  35. var layerType = layer.feature.geometry.type;
  36. if (layerType == 'Point'){
  37. } else if (layerType == 'LineString') {
  38. if(feature.properties.direction == 'Normal') {
  39. L.polylineDecorator(layer, {
  40. patterns: [
  41. {
  42. offset: 10,
  43. repeat: 40,
  44. symbol: L.Symbol.arrowHead({
  45. pixelSize: 12,
  46. pathOptions: {fillOpacity: 1, weight: 0, color: lineColour}
  47. })
  48. }
  49. ]
  50. }).addTo(linesGroup);
  51. }
  52. if(feature.properties.direction == 'Reversed'){
  53. L.polylineDecorator(layer, {
  54. patterns: [
  55. {offset: 10, repeat: 40, symbol: L.Symbol.reverseArrow({pixelSize: 12, pathOptions: {fillOpacity: 1, weight: 0, color: lineColour}})}
  56. ]
  57. }).addTo(linesGroup);
  58. }
  59. } else {
  60. // do something else, not needed yet...
  61. }
  62. }
Add Comment
Please, Sign In to add comment