33 lines
		
	
	
		
			720 B
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			720 B
		
	
	
	
		
			Ruby
		
	
	
	
class Site
 | 
						|
  
 | 
						|
  include Mongoid::Document
 | 
						|
  include Mongoid::Timestamps
 | 
						|
  
 | 
						|
  field :in_use_locales, :type => Array
 | 
						|
  field :valid_locales, :type => Array
 | 
						|
  
 | 
						|
  field :roaming_id
 | 
						|
  field :private_key, :type => Binary
 | 
						|
  field :public_key, :type => Binary
 | 
						|
  
 | 
						|
  field :school
 | 
						|
  field :department
 | 
						|
  
 | 
						|
  def generate_keys
 | 
						|
    private_key = OpenSSL::PKey::RSA.generate(2048)
 | 
						|
    self.public_key = private_key.public_key.to_s
 | 
						|
    self.private_key = private_key.to_s
 | 
						|
  end
 | 
						|
  
 | 
						|
  def registered?
 | 
						|
    !self.roaming_id.blank?
 | 
						|
  end
 | 
						|
  
 | 
						|
  def up_to_date?
 | 
						|
    p res = %x(git remote show origin)
 | 
						|
    res = res.split('rails_3_1').pop.gsub('(', '').gsub(')','').strip rescue nil
 | 
						|
    res.eql?('local out of date') ? false : true
 | 
						|
  end
 | 
						|
  
 | 
						|
end
 |