ensure valid excel worksheet names
This commit is contained in:
parent
045501ae50
commit
9714b607aa
2 changed files with 6 additions and 4 deletions
|
@ -73,10 +73,12 @@ class ProcedureExportService
|
||||||
{ instances: table.last, sheet_name: table.first }
|
{ instances: table.last, sheet_name: table.first }
|
||||||
end.merge(DEFAULT_STYLES)
|
end.merge(DEFAULT_STYLES)
|
||||||
|
|
||||||
# transliterate: convert to ASCII characteres
|
# transliterate: convert to ASCII characters
|
||||||
# to ensure truncate respects 30 bytes
|
# to ensure truncate respects 30 bytes
|
||||||
options[:sheet_name] = I18n.transliterate(options[:sheet_name], '')
|
# /\*?[] are invalid Excel worksheet characters
|
||||||
.truncate(30, omission: '')
|
options[:sheet_name] = I18n.transliterate(
|
||||||
|
ActiveStorage::Filename.new(options[:sheet_name].delete('[]*?')).sanitized, '', locale: :en
|
||||||
|
).truncate(30, omission: '')
|
||||||
|
|
||||||
options
|
options
|
||||||
end
|
end
|
||||||
|
|
|
@ -359,7 +359,7 @@ describe ProcedureExportService do
|
||||||
context 'with long libelle composed of utf8 characteres' do
|
context 'with long libelle composed of utf8 characteres' do
|
||||||
before do
|
before do
|
||||||
procedure.types_de_champ.each do |c|
|
procedure.types_de_champ.each do |c|
|
||||||
c.update!(libelle: "#{c.id} - éééé ééé ééé ééééééé ééééééé ééééééé éééééééé. ééé éé éééééééé éé ééé. ééééé éééééééé ééé ééé.")
|
c.update!(libelle: "#{c.id} - éééé ééé ééé ééééééé ???? ééééééé éééééééé. ééé éé éééééééé éé ééé. ééééé éééééééé ééé ééé.")
|
||||||
end
|
end
|
||||||
champ_repetition.champs.each do |c|
|
champ_repetition.champs.each do |c|
|
||||||
c.type_de_champ.update!(libelle: "#{c.id} - Quam rem nam maiores numquam dolorem nesciunt. Cum et possimus et aut. Fugit voluptas qui qui.")
|
c.type_de_champ.update!(libelle: "#{c.id} - Quam rem nam maiores numquam dolorem nesciunt. Cum et possimus et aut. Fugit voluptas qui qui.")
|
||||||
|
|
Loading…
Reference in a new issue