require_dependency 'person' class Person settings_items :area_interest, :type => :string, :default => "" settings_items :percentage_incomplete, :type => :string, :default => "" attr_accessible :area_interest attr_accessible :percentage_incomplete scope :search, lambda { |name="", state="", city="", email=""| like_sql = "" values = [] unless name.nil? and name.blank? like_sql << "name ILIKE ? AND " values << "%#{name}%" end unless state.nil? and state.blank? like_sql << "data ILIKE ? AND " values << "%:state: %#{state}%" end unless city.nil? and city.blank? like_sql << "data ILIKE ? AND " values << "%:city: %#{city}%" end unless email.nil? and email.blank? like_sql << "email ILIKE ? AND " values << "%#{email}%" end like_sql = like_sql[0..like_sql.length-5] { :joins => :user, :conditions=>[like_sql, *values] } } def institutions institutions = [] unless self.user.institutions.nil? self.user.institutions.each do |institution| institutions << institution.name end end institutions end def secondary_email self.user.secondary_email unless self.user.nil? end def secondary_email= value self.user.secondary_email = value unless self.user.nil? end def software? false end end