mirror of https://github.com/tootsuite/mastodon
				
				
				
			
		
			
				
	
	
		
			64 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Ruby
		
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Ruby
		
	
	
| # frozen_string_literal: true
 | |
| 
 | |
| module Admin::SettingsHelper
 | |
|   def captcha_available?
 | |
|     ENV['HCAPTCHA_SECRET_KEY'].present? && ENV['HCAPTCHA_SITE_KEY'].present?
 | |
|   end
 | |
| 
 | |
|   def login_activity_title(activity)
 | |
|     t(
 | |
|       "login_activities.#{login_activity_key(activity)}",
 | |
|       method: login_activity_method(activity),
 | |
|       ip: login_activity_ip(activity),
 | |
|       browser: login_activity_browser(activity)
 | |
|     )
 | |
|   end
 | |
| 
 | |
|   private
 | |
| 
 | |
|   def login_activity_key(activity)
 | |
|     activity.success? ? 'successful_sign_in_html' : 'failed_sign_in_html'
 | |
|   end
 | |
| 
 | |
|   def login_activity_method(activity)
 | |
|     content_tag(
 | |
|       :span,
 | |
|       login_activity_method_string(activity),
 | |
|       class: 'target'
 | |
|     )
 | |
|   end
 | |
| 
 | |
|   def login_activity_ip(activity)
 | |
|     content_tag(
 | |
|       :span,
 | |
|       activity.ip,
 | |
|       class: 'target'
 | |
|     )
 | |
|   end
 | |
| 
 | |
|   def login_activity_browser(activity)
 | |
|     content_tag(
 | |
|       :span,
 | |
|       login_activity_browser_description(activity),
 | |
|       class: 'target',
 | |
|       title: activity.user_agent
 | |
|     )
 | |
|   end
 | |
| 
 | |
|   def login_activity_method_string(activity)
 | |
|     if activity.omniauth?
 | |
|       t("auth.providers.#{activity.provider}")
 | |
|     else
 | |
|       t("login_activities.authentication_methods.#{activity.authentication_method}")
 | |
|     end
 | |
|   end
 | |
| 
 | |
|   def login_activity_browser_description(activity)
 | |
|     t(
 | |
|       'sessions.description',
 | |
|       browser: t(activity.browser, scope: 'sessions.browsers', default: activity.browser.to_s),
 | |
|       platform: t(activity.platform, scope: 'sessions.platforms', default: activity.platform.to_s)
 | |
|     )
 | |
|   end
 | |
| end
 |