Sha256: 5b58ed4c3acbcab713425a4117a904f90f05a132d28e9321ea42d7c58a87bee0
Contents?: true
Size: 993 Bytes
Versions: 2
Compression:
Stored size: 993 Bytes
Contents
require 'peoplefinder' module Peoplefinder::Concerns::Completion extend ActiveSupport::Concern included do COMPLETION_SCORE_FIELDS = [ :given_name, :surname, :email, :primary_phone_number, :location, :description, :groups, :image ] def completion_score_fields fields = COMPLETION_SCORE_FIELDS if no_phone fields -= [:primary_phone_number] end fields end scope :inadequate_profiles, lambda { where(" COALESCE(image,'') = '' OR COALESCE(location,'') = '' OR (no_phone != true AND COALESCE(primary_phone_number,'') = '' ) " ).order(:email) } def completion_score completed = completion_score_fields.map { |f| send(f).present? } (100 * completed.select { |f| f }.length) / completion_score_fields.length end def incomplete? completion_score < 100 end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
peoplefinder-0.1.1 | app/models/peoplefinder/concerns/completion.rb |
peoplefinder-0.1.0 | app/models/peoplefinder/concerns/completion.rb |