31 lines
		
	
	
		
			684 B
		
	
	
	
		
			Ruby
		
	
	
	
		
		
			
		
	
	
			31 lines
		
	
	
		
			684 B
		
	
	
	
		
			Ruby
		
	
	
	
| 
								 | 
							
								module OrbitModel
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  module LanguageRestrict
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    def self.included(base)
							 | 
						||
| 
								 | 
							
								      base.class_eval do
							 | 
						||
| 
								 | 
							
								        scope :available_for_lang, ->(locale){ where("available_for_#{locale}".to_sym => true) }
							 | 
						||
| 
								 | 
							
								        before_save :update_available_language
							 | 
						||
| 
								 | 
							
								        send :include, InstanceMethods
							 | 
						||
| 
								 | 
							
								      end
							 | 
						||
| 
								 | 
							
								    end
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    module InstanceMethods
							 | 
						||
| 
								 | 
							
								      
							 | 
						||
| 
								 | 
							
								      private
							 | 
						||
| 
								 | 
							
								  
							 | 
						||
| 
								 | 
							
								      def update_available_language
							 | 
						||
| 
								 | 
							
								        VALID_LOCALES.each  do |locale|
							 | 
						||
| 
								 | 
							
								          if (title_translations[locale].blank? rescue true)
							 | 
						||
| 
								 | 
							
								            self["available_for_#{locale}".to_sym] = false 
							 | 
						||
| 
								 | 
							
								          else
							 | 
						||
| 
								 | 
							
								            self["available_for_#{locale}".to_sym] = true
							 | 
						||
| 
								 | 
							
								          end
							 | 
						||
| 
								 | 
							
								        end
							 | 
						||
| 
								 | 
							
								      end
							 | 
						||
| 
								 | 
							
								      
							 | 
						||
| 
								 | 
							
								    end
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								  end
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								end
							 |