metadata_presenter 2.17.29 → 2.17.31

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: 77ccaea3cedf89668f1fb427fee07d2be1a4c865dfa997df53dbbe73285e917f
4
- data.tar.gz: b9e5ce83746a143020817e714bcade17ec8633a8cf640798f4226d25a47236b6
3
+ metadata.gz: ebd03a0b8ab95da06e877747d9a167dfbf0ce86c0dd8dbaf9d557d2af375c675
4
+ data.tar.gz: 1b95daccf2365ca0e18144535864d42e80d64a25d4e52cce1ac6c6aa5e308b75
5
5
  SHA512:
6
- metadata.gz: 73a51171adb6ff7829c41335cbc070f4253c9e6e070264cc41dcf8605ae2f2a9e64cd75d56fb6921eabf1bc7e81c1933a5f026905cb45c40df40e4e5201c6ae5
7
- data.tar.gz: 2d893a11e82a87662cb72fe3af3e5328fc9b96a23a8cca39c596394928348d6cccaa05bccebbfc96390f9871e860a04ed6ea599eb28d5a1fd087e86d231a470a
6
+ metadata.gz: eb534bc3e0bf092396528ceed202c9615ea00276b56729e0179f82d5e22d1fd3092c15caf0491425f9ca7a94275d6b7f96d924cd364598935eb86e3f29af134c
7
+ data.tar.gz: 63da753a7b9d08593df3e78b4993886b9c3bbd80696a893dcbd2e16b303cc4eadb8e942a9e1b2bf26c2e0195da981ba4df0e110112927c9d2274afa34f664986
@@ -70,6 +70,18 @@ module MetadataPresenter
70
70
  ENV['MAINTENANCE_MODE'].present? && ENV['MAINTENANCE_MODE'] == '1'
71
71
  end
72
72
 
73
+ def external_or_relative_link(link)
74
+ uri = URI.parse(link)
75
+ return link if uri.scheme.present? && uri.host.present?
76
+
77
+ if editor_preview?
78
+ File.join(request.script_name, link)
79
+ else
80
+ link.starts_with?('/') ? link : link.prepend('/')
81
+ end
82
+ end
83
+ helper_method :external_or_relative_link
84
+
73
85
  private
74
86
 
75
87
  def not_found
@@ -100,5 +112,9 @@ module MetadataPresenter
100
112
  render 'metadata_presenter/maintenance/show'
101
113
  end
102
114
  end
115
+
116
+ def editor_preview?
117
+ URI(request.original_url).path.split('/').last == 'preview'
118
+ end
103
119
  end
104
120
  end
@@ -2,7 +2,7 @@
2
2
  <ul class="govuk-footer__inline-list">
3
3
  <% service.meta.items.each do |item| %>
4
4
  <li class="govuk-footer__inline-list-item">
5
- <a class="govuk-footer__link" href=<%= File.join(request.script_name, item.href) %>><%= item.text %></a>
5
+ <a class="govuk-footer__link" href=<%= external_or_relative_link(item.href) %>><%= item.text %></a>
6
6
  </li>
7
7
  <% end %>
8
8
  </ul>
@@ -1,3 +1,3 @@
1
1
  module MetadataPresenter
2
- VERSION = '2.17.29'.freeze
2
+ VERSION = '2.17.31'.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.17.29
4
+ version: 2.17.31
5
5
  platform: ruby
6
6
  authors:
7
7
  - MoJ Forms
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-12-16 00:00:00.000000000 Z
11
+ date: 2022-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: govuk_design_system_formbuilder