diff --git a/README.md b/README.md index c8f7fba..1981f6b 100644 --- a/README.md +++ b/README.md @@ -140,3 +140,77 @@ docker-compose down docker-compose build --no-cache docker-compose up -d ``` + +## TODO + +- Validate whether a similar address is within 50 feet (same number?) +- If addr:unit is like "Apartment 123" or "Apartment 123;Apartment 124;Apartment 125" remove the word Apartment so it's just "123" or "123;124;125" +- If an item gets through processing and is "" it should be cleared +- If a value is a range like "123 - 456" assume it's the same as "123-456" for matching purposes +- Unit numbers with semicolons are still getting detected as different despite being identical, like: +addr:city=Wildwood +addr:housenumber=8655 +addr:postcode=34785 +addr:state=FL +addr:street=Easterly Lane +addr:unit=108;208;308 +- Some items appear duplicate in the data itself for unknown reasons: +addr:city=Bushnell +addr:housenumber=5740 +addr:postcode=33513 +addr:state=FL +addr:street=Hideaway Circle +- Sr is SR (State Route) + + + +### Corrections + +{ + "corrections": [ + { + "from": "D Angelo Lane", + "to": "D'Angelo Lane" + }, + { + "from": "Lajolla Circle", + "to": "La Jolla Circle" + }, + { + "from": "Gardena Court", + "to": "Gardenia Court" + }, + { + "from": "Glenmont Court", + "to": "Glenmount Court" + }, + { + "from": "Pawleys Island Path", + "to": "Pawley's Island Path" + }, + { + "from": "Oday Street", + "to": "O'Day Street" + }, + { + "from": "Obrien Place", + "to": "O'Brien Place" + }, + { + "from": "Ohara Court", + "to": "O'Hara Court" + }, + { + "from": "Drive Randy Mcdaniel Way", + "to": "Doctor Randy McDaniel Way" + }, + { + "from": "Mcneillrescue Lane", + "to": "Rescue Lane" + }, + { + "from": "Longleaf Lane", + "to": "Long Leaf Lane" + } + ] +} diff --git a/web/server.py b/web/server.py index 89a02c4..b4b5b7e 100644 --- a/web/server.py +++ b/web/server.py @@ -315,24 +315,24 @@ def serve_data(filename): COUNTIES_FILE = '/data/counties.yml' DEFAULT_COUNTIES = [ - { - 'id': 'lake', - 'name': 'Lake County', - 'state': 'Florida', - 'color': '#28a745', - 'roads_url': 'https://c.lakecountyfl.gov/ftp/GIS/GisDownloads/Shapefiles/Streets.zip', - 'addresses_url': 'https://c.lakecountyfl.gov/ftp/GIS/GisDownloads/Shapefiles/Addresspoints.zip', - 'paths_url': '', - }, { 'id': 'sumter', 'name': 'Sumter County', 'state': 'Florida', - 'color': '#17a2b8', + 'color': '#28a745', 'roads_url': 'https://www.arcgis.com/sharing/rest/content/items/9177e17c72d3433aa79630c7eda84add/data', 'addresses_url': 'https://www.arcgis.com/sharing/rest/content/items/c75c5aac13a648968c5596b0665be28b/data', 'paths_url': 'upload', }, + { + 'id': 'lake', + 'name': 'Lake County', + 'state': 'Florida', + 'color': '#17a2b8', + 'roads_url': 'https://c.lakecountyfl.gov/ftp/GIS/GisDownloads/Shapefiles/Streets.zip', + 'addresses_url': 'https://c.lakecountyfl.gov/ftp/GIS/GisDownloads/Shapefiles/Addresspoints.zip', + 'paths_url': '', + }, ] def _ensure_counties_file(): diff --git a/web/static/map.js b/web/static/map.js index fb63a94..7c43d93 100644 --- a/web/static/map.js +++ b/web/static/map.js @@ -1160,7 +1160,6 @@ document.addEventListener('DOMContentLoaded', function() { // Mobile hamburger menu toggle const hamburgerButton = document.getElementById('hamburgerButton'); - const closeButton = document.getElementById('closeButton'); const controls = document.getElementById('controls'); const overlay = document.getElementById('overlay'); @@ -1182,7 +1181,6 @@ document.addEventListener('DOMContentLoaded', function() { window.closeMobileControls = closeControls; hamburgerButton.addEventListener('click', toggleControls); - closeButton.addEventListener('click', closeControls); overlay.addEventListener('click', closeControls); // Layer toggles diff --git a/web/templates/index.html b/web/templates/index.html index 9d382bb..965e483 100644 --- a/web/templates/index.html +++ b/web/templates/index.html @@ -122,7 +122,6 @@ background: white; border-radius: 8px; box-shadow: 0 1px 3px rgba(0,0,0,0.07); - overflow: hidden; } .wf-title { diff --git a/web/templates/map.html b/web/templates/map.html index bdf9598..f471646 100644 --- a/web/templates/map.html +++ b/web/templates/map.html @@ -199,34 +199,12 @@ transform: rotate(-45deg) translate(6px, -6px); } - .close-button { - display: none; - position: absolute; - top: 10px; - right: 10px; - background: transparent; - border: none; - font-size: 24px; - cursor: pointer; - padding: 5px; - line-height: 1; - color: #666; - } - - .close-button:hover { - color: #333; - } - /* Mobile styles */ @media (max-width: 768px) { .hamburger-button { display: flex; } - .close-button { - display: block; - } - .controls { position: fixed; top: 0; @@ -276,30 +254,23 @@ cursor: crosshair !important; } - /* Back button */ - .back-button { - position: absolute; - top: 10px; - left: 10px; - z-index: 1000; - padding: 6px 12px; + .btn-back { + display: block; + margin-bottom: 12px; + padding: 5px 10px; background: #1a1a2e; color: #ddd; - border: none; - border-radius: 5px; + border-radius: 4px; font-size: 12px; font-weight: 600; - cursor: pointer; text-decoration: none; - display: inline-block; - box-shadow: 0 2px 6px rgba(0,0,0,0.3); + text-align: center; } - .back-button:hover { background: #2d2d4e; color: #fff; } + .btn-back:hover { background: #2d2d4e; color: #fff; }
- ← Back + ← Back

Layer Controls (top to bottom)