diff --git a/app/assets/images/pictograms/lock-reset.svg b/app/assets/images/pictograms/lock-reset.svg
new file mode 100644
index 0000000..4744494
--- /dev/null
+++ b/app/assets/images/pictograms/lock-reset.svg
@@ -0,0 +1 @@
+
diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb
index d2d4ed8..f3f9825 100644
--- a/app/helpers/application_helper.rb
+++ b/app/helpers/application_helper.rb
@@ -32,12 +32,9 @@ module ApplicationHelper
end
def image_link_to(name, image = nil, options = nil, html_options = nil)
+ return "" if html_options.delete(:unless_current) && (url_for(options) == request.path)
+
name = svg_tag("pictograms/#{image}.svg#icon") + name if image
- if html_options.delete(:hide)
- # NOTE: current_path? does not work for POST
- visibility = (url_for(options) == request.path) ? 'hidden' : 'visible'
- html_options.merge!(style: "visibility: #{visibility}") { |k, v1, v2| v1 + v2 }
- end
link_to name, options, html_options
end
diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb
index 324f0c6..7fbc3a8 100644
--- a/app/views/layouts/application.html.erb
+++ b/app/views/layouts/application.html.erb
@@ -16,9 +16,11 @@
<%= image_link_to t(:sign_out), "logout", destroy_user_session_path,
data: { turbo_method: :delete } %>
<% else %>
- <%= image_link_to t(:sign_in), "login", new_user_session_path, hide: true %>
<%= image_link_to t(:register), "account-plus-outline", new_user_registration_path,
- hide: true %>
+ unless_current: true %>
+ <%= image_link_to t(:recover_password), "lock-reset", new_user_password_path,
+ unless_current: true %>
+ <%= image_link_to t(:sign_in), "login", new_user_session_path, unless_current: true %>
<% end %>
diff --git a/app/views/users/shared/_links.html.erb b/app/views/users/shared/_links.html.erb
index dbb59c3..2caf1bd 100644
--- a/app/views/users/shared/_links.html.erb
+++ b/app/views/users/shared/_links.html.erb
@@ -2,10 +2,6 @@
<%= link_to "Log in", new_session_path(resource_name) %>
<% end %>
-<%- if devise_mapping.recoverable? && controller_name != 'passwords' && controller_name != 'registrations' %>
- <%= link_to "Forgot your password?", new_password_path(resource_name) %>
-<% end %>
-
<%- if devise_mapping.confirmable? && controller_name != 'confirmations' %>
<%= link_to "Didn't receive confirmation instructions?", new_confirmation_path(resource_name) %>
<% end %>
diff --git a/config/locales/en.yml b/config/locales/en.yml
index 324e794..b285d8d 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -11,3 +11,4 @@ en:
register: "Register"
sign_in: "Sign in"
sign_out: "Sign out"
+ recover_password: "Recover password"