Defect #8368 » timelog_helper.patch
redmine/app/helpers/timelog_helper.rb 2011-05-17 09:12:48.182807069 +0200 | ||
---|---|---|
139 | 139 |
end |
140 | 140 |
|
141 | 141 |
def report_to_csv(criterias, periods, hours) |
142 |
decimal_separator = l(:general_csv_decimal_separator) |
|
143 | ||
142 | 144 |
export = FCSV.generate(:col_sep => l(:general_csv_separator)) do |csv| |
143 | 145 |
# Column headers |
144 | 146 |
headers = criterias.collect {|criteria| l(@available_criterias[criteria][:label]) } |
... | ... | |
153 | 155 |
periods.each do |period| |
154 | 156 |
sum = sum_hours(select_hours(hours, @columns, period.to_s)) |
155 | 157 |
total += sum |
156 |
row << (sum > 0 ? "%.2f" % sum : '')
|
|
158 |
row << (sum > 0 ? ("%.2f" % sum).gsub('.',decimal_separator) : '')
|
|
157 | 159 |
end |
158 |
row << "%.2f" %total
|
|
160 |
row << ("%.2f" %total).gsub('.',decimal_separator)
|
|
159 | 161 |
csv << row |
160 | 162 |
end |
161 | 163 |
export |
162 | 164 |
end |
163 | 165 |
|
164 | 166 |
def report_criteria_to_csv(csv, criterias, periods, hours, level=0) |
167 |
decimal_separator = l(:general_csv_decimal_separator) |
|
168 |
|
|
165 | 169 |
hours.collect {|h| h[criterias[level]].to_s}.uniq.each do |value| |
166 | 170 |
hours_for_value = select_hours(hours, criterias[level], value) |
167 | 171 |
next if hours_for_value.empty? |
... | ... | |
172 | 176 |
periods.each do |period| |
173 | 177 |
sum = sum_hours(select_hours(hours_for_value, @columns, period.to_s)) |
174 | 178 |
total += sum |
175 |
row << (sum > 0 ? "%.2f" % sum : '')
|
|
179 |
row << (sum > 0 ? ("%.2f" % sum).gsub('.',decimal_separator) : '')
|
|
176 | 180 |
end |
177 |
row << "%.2f" %total
|
|
181 |
row << ("%.2f" %total).gsub('.',decimal_separator)
|
|
178 | 182 |
csv << row |
179 | 183 |
|
180 | 184 |
if criterias.length > level + 1 |