aboutsummaryrefslogtreecommitdiffstats
path: root/app/models
diff options
context:
space:
mode:
authorMichel Etienne2012-10-16 13:50:32 +0200
committerMichel Etienne2012-10-16 13:50:32 +0200
commited52454d35af1456f0e1a30551b13df526ed3185 (patch)
treed95a4df274a8515f0fb8c2cb413e804977d5d317 /app/models
parent564eeb9519a3bb04d66d5eb6fcf0490b956404e5 (diff)
downloadchouette-core-ed52454d35af1456f0e1a30551b13df526ed3185.tar.bz2
add group_of_line filter and summary on lines and add clean on empty groups of lines
Diffstat (limited to 'app/models')
-rw-r--r--app/models/clean_up.rb15
-rw-r--r--app/models/clean_up_result.rb6
2 files changed, 18 insertions, 3 deletions
diff --git a/app/models/clean_up.rb b/app/models/clean_up.rb
index 5b3d346ff..a6d26d882 100644
--- a/app/models/clean_up.rb
+++ b/app/models/clean_up.rb
@@ -4,7 +4,8 @@ class CleanUp
extend ActiveModel::Naming
- attr_accessor :expected_date, :keep_lines, :keep_stops , :keep_companies, :keep_networks
+ attr_accessor :expected_date, :keep_lines, :keep_stops , :keep_companies
+ attr_accessor :keep_networks, :keep_group_of_lines
validates_presence_of :expected_date
@@ -21,7 +22,7 @@ class CleanUp
def clean
result = CleanUpResult.new
# find and remove time_tables
- tms = Chouette::TimeTable.expired_on(Date.parse(expected_date))
+ tms = Chouette::TimeTable.validity_out_from_on?(Date.parse(expected_date))
result.time_table_count = tms.size
tms.each do |tm|
tm.destroy
@@ -108,6 +109,16 @@ class CleanUp
end
end
end
+
+ # if asked remove group_of_lines without lines
+ if keep_group_of_lines == "0"
+ Chouette::GroupOfLine.find_each do |n|
+ if n.lines.size == 0
+ result.group_of_line_count += 1
+ n.destroy
+ end
+ end
+ end
result
end
diff --git a/app/models/clean_up_result.rb b/app/models/clean_up_result.rb
index 9151decaf..92f326c0f 100644
--- a/app/models/clean_up_result.rb
+++ b/app/models/clean_up_result.rb
@@ -3,7 +3,7 @@ class CleanUpResult
extend ActiveModel::Naming
attr_accessor :time_table_count,:vehicle_journey_count,:journey_pattern_count,:route_count,:line_count
- attr_accessor :stop_count,:company_count,:network_count
+ attr_accessor :stop_count,:company_count,:network_count,:group_of_line_count
def initialize()
self.time_table_count = 0
@@ -14,6 +14,7 @@ class CleanUpResult
self.stop_count = 0
self.company_count = 0
self.network_count = 0
+ self.group_of_line_count = 0
end
def persisted?
@@ -41,6 +42,9 @@ class CleanUpResult
if (network_count > 0)
a << I18n.t('clean_ups.success_n', :count => network_count.to_s)
end
+ if (group_of_line_count > 0)
+ a << I18n.t('clean_ups.success_g', :count => group_of_line_count.to_s)
+ end
if (stop_count > 0)
a << I18n.t('clean_ups.success_sa', :count => stop_count.to_s)
end