From 2c33ec382d7a2bd64fca65a96477698ed3ef4b60 Mon Sep 17 00:00:00 2001
From: Pete Matsyburka
Date: Wed, 12 Nov 2025 16:44:58 +0200
Subject: [PATCH] fix device icon
---
app/views/submission_events/index.html.erb | 9 +++++----
lib/detect_browser_device.rb | 14 ++++----------
2 files changed, 9 insertions(+), 14 deletions(-)
diff --git a/app/views/submission_events/index.html.erb b/app/views/submission_events/index.html.erb
index c97f7a7d..8dec75f3 100644
--- a/app/views/submission_events/index.html.erb
+++ b/app/views/submission_events/index.html.erb
@@ -21,7 +21,6 @@
<% @submission.submission_events.order(:event_timestamp).each do |event| %>
- <% device = DetectBrowserDevice.call(event.data['ua']) %>
<% submitter = @submission.submitters.find { |e| e.id == event.submitter_id } %>
<% bg_class = event_colors[submitters_uuids.index(submitter.uuid) % event_colors.length] %>
<% submitter_name = event.event_type.include?('sms') || event.event_type.include?('phone') ? (event.data['phone'] || submitter.phone) : (submitter.name || submitter.email || submitter.phone) %>
@@ -33,9 +32,11 @@
<%= l(event.event_timestamp.in_time_zone(current_account.timezone), format: :long, locale: current_account.locale) %>
-
- <%= svg_icon("device_#{device}", class: 'w-4 h-4') %>
-
+ <% if (device = DetectBrowserDevice.call(event.data['ua'])) %>
+
+ <%= svg_icon("device_#{device}", class: 'w-4 h-4') %>
+
+ <% end %>
<% if event.event_type == 'complete_verification' %>
diff --git a/lib/detect_browser_device.rb b/lib/detect_browser_device.rb
index 64f4bf51..0240d278 100644
--- a/lib/detect_browser_device.rb
+++ b/lib/detect_browser_device.rb
@@ -27,17 +27,11 @@ module DetectBrowserDevice
/ix
def call(user_agent)
- return :mobile if mobile?(user_agent)
- return :tablet if tablet?(user_agent)
+ return if user_agent.blank?
- :desktop
- end
-
- def mobile?(user_agent)
- user_agent.to_s =~ MOBILE_USER_AGENT_REGEXP
- end
+ return 'mobile' if MOBILE_USER_AGENT_REGEXP.match?(user_agent)
+ return 'tablet' if TABLET_USER_AGENT_REGEXP.match?(user_agent)
- def tablet?(user_agent)
- user_agent.to_s =~ TABLET_USER_AGENT_REGEXP
+ 'desktop'
end
end