4
0
mirror of https://git.coop/cotech/website.git synced 2025-06-26 16:40:52 +00:00

Geocode Coop addresses to lat & long for map

This commit is contained in:
James Mead
2018-11-30 16:56:07 +00:00
parent 8780eca301
commit 3c80693d67
12 changed files with 41 additions and 16 deletions

View File

@ -0,0 +1,21 @@
require 'bundler/setup'
require 'yaml'
require 'geocoder'
Geocoder.configure(lookup: :nominatim)
root_path = Pathname.new(__dir__).join('..')
Dir[root_path.join('_coops/*.md')].each do |path|
content = File.read(path)
body = content.split("\n").reverse.take_while { |l| l != "---" }.reverse.join("\n")
metadata = YAML.safe_load(content)
address = metadata['address']
latitude, longitude = Geocoder.coordinates(address, params: { region: 'uk' })
metadata['latitude'] ||= latitude
metadata['longitude'] ||= longitude
frontmatter = YAML.dump(metadata)
File.write(path, frontmatter + "---" + "\n" + body)
end