32 lines
		
	
	
		
			592 B
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			32 lines
		
	
	
		
			592 B
		
	
	
	
		
			Ruby
		
	
	
	
| module OrbitModel
 | |
| 
 | |
|   module TimeFrame
 | |
| 
 | |
|     def self.included(base)
 | |
|       base.class_eval do
 | |
|         field :postdate , :type => DateTime
 | |
|         field :deadline , :type => DateTime
 | |
|         before_save :check_deadline
 | |
|         send :include, InstanceMethods
 | |
|       end
 | |
|     end
 | |
| 
 | |
|     module InstanceMethods
 | |
| 
 | |
|       def is_expired?
 | |
|         Date.today > self.deadline ? true : false  rescue false
 | |
|       end
 | |
|       
 | |
|       private
 | |
| 
 | |
|       def check_deadline
 | |
|         if(!self.deadline.nil? and (self.deadline < self.postdate ))
 | |
|           self.deadline = nil
 | |
|         end
 | |
|       end
 | |
|       
 | |
|     end
 | |
| 
 | |
|   end
 | |
| 
 | |
| end |