metadata_presenter 2.19.3 → 2.19.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2279ffc71300e31a078526283d51dd9264d7b6dc8912e714758ea099a0f4b261
4
- data.tar.gz: d1288a6835ee16441c6d267d9ac97c23178b63474b9b5b26100fd2bb93ab6836
3
+ metadata.gz: 287793ad62c89ad266e3c05508365cf24bcd5269d4c08e28f9a631aa50f5762a
4
+ data.tar.gz: 885cc9f6bc43d4d1bd86ba1fb376d1994905000e4f14bfe7173076db7d531633
5
5
  SHA512:
6
- metadata.gz: 0ed0cc7cb93eb72ce9708daf8dbde6f4a39d40a1bc94bf55900f807debe21c78d7674e89b2385301771bbaf9a7a31a3721345f3f893a53b118cffc0918913ac9
7
- data.tar.gz: b6e2ec8a129bd962d64dc8b28811a9792d2f8458eb042cca80513647288102c7ec8050dfce3c694328273f658ccbb7a98d2b33ffb2085c7b2b72cac9be29fbd1
6
+ metadata.gz: c3ab0c526f54ea3d22925baa1da1b4260deceb51bbd720695635b55ff3629116f0a93479fc8118e83bef39cc8ccd52bb718a1128fa573ad851247597e1c04821
7
+ data.tar.gz: '024489fcbd77662977c8684f2949fcd1b4bc5126e7933feba40a6acd689f12a63de3ad112a8eb92a00113c77979c0fcba90f6c65f05e6e6a1eda9d607f02546b'
@@ -42,10 +42,12 @@ module MetadataPresenter
42
42
  return {} unless file_details
43
43
 
44
44
  if file_details.is_a?(Hash) || file_details.is_a?(ActionController::Parameters)
45
- file_details.merge('original_filename' => sanitize(file_details['original_filename']))
45
+
46
+ file_details.merge('original_filename' => sanitize(filename(file_details['original_filename'])))
47
+
46
48
  else
47
49
  {
48
- 'original_filename' => sanitize(file_details.original_filename),
50
+ 'original_filename' => sanitize(filename(file_details.original_filename)),
49
51
  'content_type' => file_details.content_type,
50
52
  'tempfile' => file_details.tempfile.path.to_s
51
53
  }
@@ -67,5 +69,13 @@ module MetadataPresenter
67
69
  sanitize(answers["#{component_id}(#{segment})"])
68
70
  end
69
71
  end
72
+
73
+ private
74
+
75
+ def filename(path)
76
+ return sanitize(path) if path.nil?
77
+
78
+ sanitize(path).gsub(/&gt;/, '').gsub(/&lt;/, '').delete('>"[]{}*?:|]/<').delete('\\')
79
+ end
70
80
  end
71
81
  end
@@ -3,7 +3,6 @@
3
3
  <span class="govuk-hint" id="answers-dog-picture-upload-1-hint" data-fb-default-text="<%= default_text('upload_hint') %>">
4
4
  <%= component.hint.present? ? component.hint : default_text('upload_hint') %>
5
5
  </span>
6
-
7
6
  <p><%= @page_answers.send(component.id)['original_filename'] %></p>
8
7
 
9
8
  <p>
@@ -1,3 +1,3 @@
1
1
  module MetadataPresenter
2
- VERSION = '2.19.3'.freeze
2
+ VERSION = '2.19.4'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metadata_presenter
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.19.3
4
+ version: 2.19.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - MoJ Forms
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-05-11 00:00:00.000000000 Z
11
+ date: 2023-05-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: govuk_design_system_formbuilder