Super street corner locator!
[bus.git] / maxious-canberra-transit-feed / 02-tidytimepoints.rb
blob:a/maxious-canberra-transit-feed/02-tidytimepoints.rb -> blob:b/maxious-canberra-transit-feed/02-tidytimepoints.rb
require 'rubygems' require 'rubygems'
require 'pp' require 'pp'
require 'yaml' require 'yaml'
Dir.chdir("output") Dir.chdir("output")
   
def getTimePoints() def getTimePoints()
$time_points = [] $time_points = []
$time_points_sources = Hash.new([]) $time_points_sources = Hash.new([])
Dir.glob("*.yml") { |file| Dir.glob("*.yml") { |file|
timetable = YAML::load_file(file) timetable = YAML::load_file(file)
$time_points = $time_points | timetable["time_points"] $time_points = $time_points | timetable["time_points"]
timetable["time_points"].each do |timepoint| timetable["time_points"].each do |timepoint|
$time_points_sources[timepoint] = $time_points_sources[timepoint] | [ file ] $time_points_sources[timepoint] = $time_points_sources[timepoint] | [ file ]
end end
} }
end end
   
getTimePoints() getTimePoints()
pp $time_points.sort! pp $time_points.sort!
#pp $time_points_sources.sort #pp $time_points_sources.sort
   
time_point_corrections = {"North Lynehamham" => "North Lyneham", time_point_corrections = {"North Lynehamham" => "North Lyneham",
"Lathlain St Platform 2" => "Lathlain St Bus Station - Platform 2", "Lathlain St Platform 2" => "Lathlain St Bus Station - Platform 2",
"Lathlain St Sation - Platform 5" => "Lathlain St Bus Station - Platform 5", "Lathlain St Sation - Platform 5" => "Lathlain St Bus Station - Platform 5",
"Lathlain Steet Station" => "Lathlain St Bus Station", "Lathlain Steet Station" => "Lathlain St Bus Station",
"Lathlain St - Platform 3" => "Lathlain St Bus Station - Platform 3", "Lathlain St - Platform 3" => "Lathlain St Bus Station - Platform 3",
"Lathlain Steet Station - Platform 3" => "Lathlain St Bus Station - Platform 3", "Lathlain Steet Station - Platform 3" => "Lathlain St Bus Station - Platform 3",
"Lathlain St Station" => "Lathlain St Bus Station", "Lathlain St Station" => "Lathlain St Bus Station",
"Lathlain St Station - Platform 1" => "Lathlain St Bus Station - Platform 1", "Lathlain St Station - Platform 1" => "Lathlain St Bus Station - Platform 1",
"Lathlain St Station - Platform 2" => "Lathlain St Bus Station - Platform 2", "Lathlain St Station - Platform 2" => "Lathlain St Bus Station - Platform 2",
"Lathlain St Station - Platform 3" => "Lathlain St Bus Station - Platform 3", "Lathlain St Station - Platform 3" => "Lathlain St Bus Station - Platform 3",
"Lathlain St Station - Platform 4" => "Lathlain St Bus Station - Platform 4", "Lathlain St Station - Platform 4" => "Lathlain St Bus Station - Platform 4",
"Lathlain St Station - Platform 5" => "Lathlain St Bus Station - Platform 5", "Lathlain St Station - Platform 5" => "Lathlain St Bus Station - Platform 5",
"Lathlain St Station - Platform 6" => "Lathlain St Bus Station - Platform 6", "Lathlain St Station - Platform 6" => "Lathlain St Bus Station - Platform 6",
"Manuka Captain Cook" => "Manuka, Captain Cook", "Manuka Captain Cook" => "Manuka, Captain Cook",
"Flemington Rd, Sandford St" => "Flemington Rd/Sandford St", "Flemington Rd, Sandford St" => "Flemington Rd/Sandford St",
"Erindale Centre / - Sternberg Crescent" => "Erindale Drive/Sternberg", "Erindale Centre / - Sternberg Crescent" => "Erindale Drive/Sternberg",
"Canberra Hospita" => "Canberra Hospital", "Canberra Hospita" => "Canberra Hospital",
"Cohen Str Station - Platform 1" => "Cohen St Bus Station - Platform 1", "Cohen Str Station - Platform 1" => "Cohen St Bus Station - Platform 1",
"Cohen Street Station" => "Cohen St Bus Station", "Cohen Street Station" => "Cohen St Bus Station",
"Cohen Street Station - Platform 2" => "Cohen St Bus Station - Platform 2", "Cohen Street Station - Platform 2" => "Cohen St Bus Station - Platform 2",
"Cohn St Station - Platform 3" => "Cohen St Bus Station - Platform 3", "Cohn St Station - Platform 3" => "Cohen St Bus Station - Platform 3",
"Cohen St Station" => "Cohen St Bus Station", "Cohen St Station" => "Cohen St Bus Station",
"Cohen St Station - Platform 1" => "Cohen St Bus Station - Platform 1", "Cohen St Station - Platform 1" => "Cohen St Bus Station - Platform 1",
"Cohen St Station - Platform 2" => "Cohen St Bus Station - Platform 2", "Cohen St Station - Platform 2" => "Cohen St Bus Station - Platform 2",
"Cohen St Station - Platform 3" => "Cohen St Bus Station - Platform 3", "Cohen St Station - Platform 3" => "Cohen St Bus Station - Platform 3",
"Cohen St Station - Platform 4" => "Cohen St Bus Station - Platform 4", "Cohen St Station - Platform 4" => "Cohen St Bus Station - Platform 4",
"Cohen St Station - Platform 5" => "Cohen St Bus Station - Platform 5", "Cohen St Station - Platform 5" => "Cohen St Bus Station - Platform 5",
"Cohen St Station - Platform 6" => "Cohen St Bus Station - Platform 6", "Cohen St Station - Platform 6" => "Cohen St Bus Station - Platform 6",
"City - Platform 7" => "City Interchange - Platform 7", "City - Platform 7" => "City Interchange - Platform 7",
"Cameron Avenue Station" => "Cameron Ave Bus Station", "Cameron Avenue Station" => "Cameron Ave Bus Station",
"Cameron Avenue Station - Platform 1" => "Cameron Ave Bus Station - Platform 1", "Cameron Avenue Station - Platform 1" => "Cameron Ave Bus Station - Platform 1",
"Cameron Avenue Station - Platform 2" => "Cameron Ave Bus Station - Platform 2", "Cameron Avenue Station - Platform 2" => "Cameron Ave Bus Station - Platform 2",
"Cameron Avenue Station - Platform 3" => "Cameron Ave Bus Station - Platform 3", "Cameron Avenue Station - Platform 3" => "Cameron Ave Bus Station - Platform 3",
"Cameron Avenue Station - Platform 4" => "Cameron Ave Bus Station - Platform 4", "Cameron Avenue Station - Platform 4" => "Cameron Ave Bus Station - Platform 4",
"Cameron Avenue Station - Platform 5" => "Cameron Ave Bus Station - Platform 5", "Cameron Avenue Station - Platform 5" => "Cameron Ave Bus Station - Platform 5",
"Cameron Ave Station" => "Cameron Ave Bus Station", "Cameron Ave Station" => "Cameron Ave Bus Station",
"Cameron Ave Station - Platform 1" => "Cameron Ave Bus Station - Platform 1", "Cameron Ave Station - Platform 1" => "Cameron Ave Bus Station - Platform 1",
"Cameron Ave Station - Platform 2" => "Cameron Ave Bus Station - Platform 2", "Cameron Ave Station - Platform 2" => "Cameron Ave Bus Station - Platform 2",
"Cameron Ave Station - Platform 3" => "Cameron Ave Bus Station - Platform 3", "Cameron Ave Station - Platform 3" => "Cameron Ave Bus Station - Platform 3",
"Cameron Ave Station - Platform 4" => "Cameron Ave Bus Station - Platform 4", "Cameron Ave Station - Platform 4" => "Cameron Ave Bus Station - Platform 4",
"Cameron Ave Station - Platform 5" => "Cameron Ave Bus Station - Platform 5", "Cameron Ave Station - Platform 5" => "Cameron Ave Bus Station - Platform 5",
"Burton & Garranan Hall, Daley Road ANU" => "Burton & Garran Hall, Daley Road ANU", "Burton & Garranan Hall, Daley Road ANU" => "Burton & Garran Hall, Daley Road ANU",
"Burton & Garranan Hall,Daley Road ANU" => "Burton & Garran Hall, Daley Road ANU", "Burton & Garranan Hall,Daley Road ANU" => "Burton & Garran Hall, Daley Road ANU",
  "Garran/Daley Rd" => "Burton & Garran Hall, Daley Road ANU",
  "Kingstons Ave/National Crt" => "Kings Ave/National Crt",
"Newcastle Street after Isa St" => "Newcastle / Isa Street Fyshwick", "Newcastle Street after Isa St" => "Newcastle / Isa Street Fyshwick",
"National Circ/Canberra Ave" => "National Circuit / Canberra Ave", "National Circ/Canberra Ave" => "National Circuit / Canberra Ave",
  "St Clare of Conder" => "St Clare of Assisi Primary",
  "McKillop College Isabella Campus" => "MacKillop College Isabella Campus",
} }
time_point_corrections.each do |wrong, right| time_point_corrections.each do |wrong, right|
$time_points_sources[wrong].each do |wrongfile| $time_points_sources[wrong].each do |wrongfile|
badtimetable = YAML::load_file(wrongfile) badtimetable = YAML::load_file(wrongfile)
badentrynumber = badtimetable["time_points"].index wrong badentrynumber = badtimetable["time_points"].index wrong
badtimetable["time_points"][badentrynumber] = right badtimetable["time_points"][badentrynumber] = right
puts "Corrected '" + wrong + "' to '" + right + "' in " + wrongfile puts "Corrected '" + wrong + "' to '" + right + "' in " + wrongfile
File.open(wrongfile, "w") do |f| File.open(wrongfile, "w") do |f|
f.write badtimetable.to_yaml f.write badtimetable.to_yaml
end end
end end
end end
   
getTimePoints() getTimePoints()
pp $time_points.sort! pp $time_points.sort!