Add announcements (#12662)
* Add announcements Fix #11006 * Add reactions to announcements * Add admin UI for announcements * Add unit tests * Fix issues - Add `with_dismissed` param to announcements API - Fix end date not being formatted when time range is given - Fix announcement delete causing reactions to send streaming updates - Fix announcements container growing too wide and mascot too small - Fix `all_day` being settable when no time range is given - Change text "Update" to "Announcement" * Fix scheduler unpublishing announcements before they are due * Fix filter params not being passed to announcements filter
This commit is contained in:
		
					parent
					
						
							
								81cc86bb1f
							
						
					
				
			
			
				commit
				
					
						f52c988e12
					
				
			
		
					 65 changed files with 1779 additions and 22 deletions
				
			
		
							
								
								
									
										17
									
								
								app/validators/reaction_validator.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								app/validators/reaction_validator.rb
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,17 @@ | |||
| # frozen_string_literal: true | ||||
| 
 | ||||
| class ReactionValidator < ActiveModel::Validator | ||||
|   SUPPORTED_EMOJIS = Oj.load(File.read(Rails.root.join('app', 'javascript', 'mastodon', 'features', 'emoji', 'emoji_map.json'))).keys.freeze | ||||
| 
 | ||||
|   def validate(reaction) | ||||
|     return if reaction.name.blank? || reaction.custom_emoji_id.present? | ||||
| 
 | ||||
|     reaction.errors.add(:name, I18n.t('reactions.errors.unrecognized_emoji')) unless unicode_emoji?(reaction.name) | ||||
|   end | ||||
| 
 | ||||
|   private | ||||
| 
 | ||||
|   def unicode_emoji?(name) | ||||
|     SUPPORTED_EMOJIS.include?(name) | ||||
|   end | ||||
| end | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue