* Change public accounts pages to mount the web UI * Fix handling of remote usernames in routes - When logged in, serve web app - When logged out, redirect to permalink - Fix `app-body` class not being set sometimes due to name conflict * Fix missing `multiColumn` prop * Fix failing test * Use `discoverable` attribute to control indexing directives * Fix `<ColumnLoading />` not using `multiColumn` * Add `noindex` to accounts in REST API * Change noindex directive to not be rendered by default before a route is mounted * Add loading indicator for detailed status in web UI * Fix missing indicator appearing while account is loading in web UI
		
			
				
	
	
		
			28 lines
		
	
	
		
			630 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			630 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| # frozen_string_literal: true
 | |
| 
 | |
| module WebAppControllerConcern
 | |
|   extend ActiveSupport::Concern
 | |
| 
 | |
|   included do
 | |
|     before_action :redirect_unauthenticated_to_permalinks!
 | |
|     before_action :set_app_body_class
 | |
|     before_action :set_referrer_policy_header
 | |
|   end
 | |
| 
 | |
|   def set_app_body_class
 | |
|     @body_classes = 'app-body'
 | |
|   end
 | |
| 
 | |
|   def set_referrer_policy_header
 | |
|     response.headers['Referrer-Policy'] = 'origin'
 | |
|   end
 | |
| 
 | |
|   def redirect_unauthenticated_to_permalinks!
 | |
|     return if user_signed_in?
 | |
| 
 | |
|     redirect_path = PermalinkRedirector.new(request.path).redirect_path
 | |
| 
 | |
|     redirect_to(redirect_path) if redirect_path.present?
 | |
|   end
 | |
| end
 |