Add some friendly name/duplicate subsitution rules
[bus.git] / maxious-canberra-transit-feed / substitutetimepoints.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
require 'rubygems'
require 'pp'
require 'yaml'
 
time_points = []
time_points_sources = Hash.new([])
Dir.chdir("output")
Dir.glob("*.yml") { |file|
        timetable = YAML::load_file(file)
        time_points = time_points | timetable["time_points"]
        timetable["time_points"].each do |timepoint| 
                time_points_sources[timepoint] = time_points_sources[timepoint] | [ file ]
        end
}
pp time_points.sort!
#pp time_points_sources.sort
 
time_point_corrections = {"North Lynehamham" => "North Lyneham",
                          "Lathlain St Platform 2" => "Lathlain St Bus Station - Platform 2",
                          "Lathlain St Sation - Platform 5" => "Lathlain St Bus Station - Platform 5",
                          "Lathlain Steet Station" => "Lathlain St Bus Station",
                          "Lathlain St - 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 - Platform 1" => "Lathlain St Bus Station - Platform 1",
                          "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 4" => "Lathlain St Bus Station - Platform 4",
                          "Lathlain St Station - Platform 5" => "Lathlain St Bus Station - Platform 5",
                          "Lathlain St Station - Platform 6" => "Lathlain St Bus Station - Platform 6",
                          "Manuka Captain Cook" => "Manuka, Captain Cook",
                          "Flemington Rd, Sandford St" => "Flemington Rd/Sandford St",
                          "Erindale Centre / - Sternberg Crescent" => "Erindale Drive/Sternberg",
                          "Canberra Hospita" => "Canberra Hospital",
                          "Cohen Str Station - Platform 1" => "Cohen St Bus Station - Platform 1",
                          "Cohen Street Station" => "Cohen St Bus Station",
                          "Cohen Street Station - Platform 2" => "Cohen St Bus Station - Platform 2",
                          "Cohn St Station - Platform 3" => "Cohen St Bus Station - Platform 3",
                          "Cohen St Station" => "Cohen St Bus Station",
                          "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 3" => "Cohen St Bus Station - Platform 3",
                          "Cohen St Station - Platform 4" => "Cohen St Bus Station - Platform 4",
                          "Cohen St Station - Platform 5" => "Cohen St Bus Station - Platform 5",
                          "City - Platform 7" => "City Interchange - Platform 7",
                          "Cameron Avenue Station" => "Cameron Ave Bus Station",
                          "Cameron Avenue Station - Platform 2" => "Cameron Ave Bus Station - Platform 2",
                          "Cameron Avenue Station - Platform 3" => "Cameron Ave Bus Station - Platform 3",
                          "Cameron Ave Station" => "Cameron Ave Bus Station",
                          "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 3" => "Cameron Ave Bus Station - Platform 3",
                          "Cameron Ave Station - Platform 4" => "Cameron Ave Bus Station - Platform 4",
                          "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"
                          "Newcastle Street after Isa St" => "Newcastle / Isa Street Fyshwick",
                          "National Circ/Canberra Ave" => "National Circuit / Canberra Ave",
                        }
time_point_corrections.each do |wrong, right|
        time_points_sources[wrong].each do |wrongfile|
                badtimetable = YAML::load_file(wrongfile)
                badentrynumber = badtimetable["time_points"].index wrong
                badtimetable["time_points"][badentrynumber] = right
                puts "Corrected '" + wrong + "' to '" + right + "' in " + wrongfile
                File.open(wrongfile, "w") do |f|
                        f.write badtimetable.to_yaml
                end
        end
end