diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb
index 12bc306fa..58992a4e5 100644
--- a/app/controllers/application_controller.rb
+++ b/app/controllers/application_controller.rb
@@ -19,7 +19,8 @@ class ApplicationController < ActionController::Base
:current_account,
:true_ability,
:form_link_host,
- :svg_icon
+ :svg_icon,
+ :turbo_native_ios?
impersonates :user, with: ->(uuid) { User.find_by(uuid:) }
@@ -64,6 +65,10 @@ class ApplicationController < ActionController::Base
private
+ def turbo_native_ios?
+ request.user_agent.to_s.include?('Hotwire Native iOS')
+ end
+
def with_locale(&)
return yield unless current_account
diff --git a/app/javascript/elements/emails_textarea.js b/app/javascript/elements/emails_textarea.js
index 9c0aa7f46..ea5e94460 100644
--- a/app/javascript/elements/emails_textarea.js
+++ b/app/javascript/elements/emails_textarea.js
@@ -35,7 +35,7 @@ export default class extends HTMLElement {
counter.innerText = `${count} / ${this.dataset.limit}`
}
- if (this.dataset.bulkEnabled !== 'true' && !/Hotwire Native/.test(navigator.userAgent)) {
+ if (this.dataset.bulkEnabled !== 'true' && !/Hotwire Native iOS/.test(navigator.userAgent)) {
if (!bulkMessage) {
bulkMessage = document.createElement('span')
diff --git a/app/views/accounts/show.html.erb b/app/views/accounts/show.html.erb
index a6241cb1b..b9ef9192c 100644
--- a/app/views/accounts/show.html.erb
+++ b/app/views/accounts/show.html.erb
@@ -133,7 +133,7 @@
<% end %>
<% end %>
<% account_config = AccountConfig.find_or_initialize_by(account: current_account, key: AccountConfig::ALLOW_TO_DECLINE_KEY) %>
- <% if can?(:manage, account_config) && (!turbo_native_app? || !Docuseal.multitenant? || can?(:manage, :disable_decline)) %>
+ <% if can?(:manage, account_config) && (!turbo_native_ios? || !Docuseal.multitenant? || can?(:manage, :disable_decline)) %>
<%= form_for account_config, url: account_configs_path, method: :post do |f| %>
<%= f.hidden_field :key %>
@@ -156,7 +156,7 @@
<% end %>
<% end %>
<% account_config = AccountConfig.find_or_initialize_by(account: current_account, key: AccountConfig::ALLOW_TO_DELEGATE_KEY) %>
- <% if can?(:manage, account_config) && (!turbo_native_app? || !Docuseal.multitenant? || can?(:manage, :delegate_form)) %>
+ <% if can?(:manage, account_config) && (!turbo_native_ios? || !Docuseal.multitenant? || can?(:manage, :delegate_form)) %>
<%= form_for account_config, url: account_configs_path, method: :post do |f| %>
<%= f.hidden_field :key %>
diff --git a/app/views/notifications_settings/index.html.erb b/app/views/notifications_settings/index.html.erb
index 3a65a20f3..41bc2cdf6 100644
--- a/app/views/notifications_settings/index.html.erb
+++ b/app/views/notifications_settings/index.html.erb
@@ -22,7 +22,7 @@
<% end %>
<%= render 'bcc_form', config: @bcc_config %>
- <% unless can?(:manage, :personalization_restricted) || (turbo_native_app? && !can?(:manage, :email_reminders)) %>
+ <% unless can?(:manage, :personalization_restricted) || (turbo_native_ios? && !can?(:manage, :email_reminders)) %>
<%= t('sign_request_email_reminders') %>
diff --git a/app/views/personalization_settings/show.html.erb b/app/views/personalization_settings/show.html.erb
index a78b06e6e..f039d4503 100644
--- a/app/views/personalization_settings/show.html.erb
+++ b/app/views/personalization_settings/show.html.erb
@@ -10,7 +10,7 @@
<%= render 'documents_copy_email_form' %>
<%= render 'submitter_completed_email_form' %>
- <% if !turbo_native_app? || can?(:manage, :custom_logo) %>
+ <% if !turbo_native_ios? || can?(:manage, :custom_logo) %>
<%= t('company_logo') %>
diff --git a/app/views/shared/_settings_nav.html.erb b/app/views/shared/_settings_nav.html.erb
index 2e43b1300..3a1007296 100644
--- a/app/views/shared/_settings_nav.html.erb
+++ b/app/views/shared/_settings_nav.html.erb
@@ -42,7 +42,7 @@
<%= link_to t('storage'), settings_storage_index_path, class: 'text-base hover:bg-base-300' %>
<% end %>
- <% if can?(:read, EncryptedConfig.new(key: 'submitter_invitation_sms', account: current_account)) && true_user == current_user && (!turbo_native_app? || can?(:manage, :sms_verification)) %>
+ <% if can?(:read, EncryptedConfig.new(key: 'submitter_invitation_sms', account: current_account)) && true_user == current_user && (!turbo_native_ios? || can?(:manage, :sms_verification)) %>
<%= link_to 'SMS', settings_sms_path, class: 'text-base hover:bg-base-300' %>
@@ -83,7 +83,7 @@
<% end %>
<% end %>
- <% if !Docuseal.demo? && !turbo_native_app? && can?(:manage, EncryptedConfig) && (current_user != true_user || !current_account.linked_account_account) %>
+ <% if !Docuseal.demo? && !turbo_native_ios? && can?(:manage, EncryptedConfig) && (current_user != true_user || !current_account.linked_account_account) %>
<%= content_for(:pro_link) || link_to(Docuseal.multitenant? ? console_redirect_index_path(redir: "#{Docuseal::CONSOLE_URL}/plans") : "#{Docuseal::CLOUD_URL}/sign_up?#{{ redir: "#{Docuseal::CONSOLE_URL}/on_premises" }.to_query}", class: 'text-base hover:bg-base-300', data: { turbo: false }) do %>
<%= t('plans') %>
@@ -104,7 +104,7 @@
<% end %>
<% end %>
- <% if (!Docuseal.multitenant? || can?(:manage, :saml_sso)) && can?(:read, EncryptedConfig.new(key: 'saml_configs', account: current_account)) && true_user == current_user && (!turbo_native_app? || can?(:manage, :saml_sso)) %>
+ <% if (!Docuseal.multitenant? || can?(:manage, :saml_sso)) && can?(:read, EncryptedConfig.new(key: 'saml_configs', account: current_account)) && true_user == current_user && (!turbo_native_ios? || can?(:manage, :saml_sso)) %>
<%= link_to 'SSO', settings_sso_index_path, class: 'text-base hover:bg-base-300' %>
diff --git a/app/views/submissions/_send_sms_button.html.erb b/app/views/submissions/_send_sms_button.html.erb
index 7e18fed02..26d90f80b 100644
--- a/app/views/submissions/_send_sms_button.html.erb
+++ b/app/views/submissions/_send_sms_button.html.erb
@@ -1,4 +1,4 @@
-<% unless turbo_native_app? %>
+<% unless turbo_native_ios? %>