Class: Redmine::Export::CSV::Base
- Inherits:
-
CSV
- Object
- CSV
- Redmine::Export::CSV::Base
show all
- Includes:
- I18n
- Defined in:
- lib/redmine/export/csv.rb
Class Method Summary
collapse
Instance Method Summary
collapse
Methods included from I18n
#abbr_day_name, #current_language, #day_letter, #day_name, #find_language, #format_date, #format_hours, #format_time, included, #l, #l_hours, #l_hours_short, #l_or_humanize, #languages_options, #ll, #lu, #month_name, #normalize_float, #set_language_if_valid, #valid_languages
Class Method Details
.generate(options = {}) ⇒ Object
33
34
35
36
37
38
39
40
41
42
43
44
45
|
# File 'lib/redmine/export/csv.rb', line 33
def generate(options = {}, &)
col_sep = (options[:field_separator].presence || l(:general_csv_separator))
encoding = Encoding.find(options[:encoding]) rescue Encoding.find(l(:general_csv_encoding))
str =
if encoding == Encoding::UTF_8
+"\xEF\xBB\xBF" else
(+'').force_encoding(encoding)
end
super(str, :col_sep => col_sep, :encoding => encoding, &)
end
|
Instance Method Details
#<<(row) ⇒ Object
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
# File 'lib/redmine/export/csv.rb', line 48
def <<(row)
row = row.map do |field|
case field
when String
Redmine::CodesetUtil.from_utf8(field, self.encoding.name)
when Float
@decimal_separator ||= l(:general_csv_decimal_separator)
("%.2f" % field).gsub('.', @decimal_separator)
else
field
end
end
super
end
|