diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 33257be89..6dc2914f5 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -22,6 +22,7 @@ class ApplicationController < ActionController::Base :true_ability, :form_link_host, :svg_icon, + :browser_os, :turbo_native_ios?, :turbo_native_android? @@ -58,6 +59,10 @@ class ApplicationController < ActionController::Base request.session[:impersonated_user_id] = user.uuid end + def browser_os + @browser_os ||= DetectBrowserDevice.os(request.user_agent) + end + def pagy_auto(collection, **keyword_args) if current_ability.can?(:manage, :countless) pagy(:countless, collection, **keyword_args) diff --git a/app/views/shared/_mobile_app_alert.html.erb b/app/views/shared/_mobile_app_alert.html.erb new file mode 100644 index 000000000..e2bb6ca00 --- /dev/null +++ b/app/views/shared/_mobile_app_alert.html.erb @@ -0,0 +1,13 @@ +
+ + <%= t('get_the_docuseal_app_for_a_better_mobile_experience') %> + <%= link_to t('install_app'), browser_os == 'ios' ? Docuseal::APP_STORE_URL : Docuseal::GOOGLE_PLAY_URL, class: 'link font-medium', target: '_blank', rel: 'noopener noreferrer nofollow' %> + + + + + + +
diff --git a/app/views/shared/_navbar.html.erb b/app/views/shared/_navbar.html.erb index 36e165dc8..20842002d 100644 --- a/app/views/shared/_navbar.html.erb +++ b/app/views/shared/_navbar.html.erb @@ -1,4 +1,5 @@ <%= render 'shared/navbar_warning' %> +<%= render 'shared/mobile_app_alert' if signed_in? && cookies[:mobile_app_alert].blank? && (browser_os == 'ios' || browser_os == 'android') %>