* Add moderator role and add pundit policies for admin actions * Add rake task for turning user into mod and revoking it again * Fix handling of unauthorized exception * Deliver new report e-mails to staff, not just admins * Add promote/demote to admin UI, hide some actions conditionally * Fix unused i18n
		
			
				
	
	
		
			23 lines
		
	
	
	
		
			426 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
	
		
			426 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| # frozen_string_literal: true
 | |
| 
 | |
| module Authorization
 | |
|   extend ActiveSupport::Concern
 | |
| 
 | |
|   include Pundit
 | |
| 
 | |
|   def pundit_user
 | |
|     current_account
 | |
|   end
 | |
| 
 | |
|   def authorize(*)
 | |
|     super
 | |
|   rescue Pundit::NotAuthorizedError
 | |
|     raise Mastodon::NotPermittedError
 | |
|   end
 | |
| 
 | |
|   def authorize_with(user, record, query)
 | |
|     Pundit.authorize(user, record, query)
 | |
|   rescue Pundit::NotAuthorizedError
 | |
|     raise Mastodon::NotPermittedError
 | |
|   end
 | |
| end
 |