Sha256: e808a7f3c48c89f5337813ce8f5d9d4093aa0be230c1ab5b0cd14fddf33269fc

Contents?: true

Size: 1.37 KB

Versions: 9

Compression:

Stored size: 1.37 KB

Contents

module FatFreeCRM
  module Cloudfuji
    module EventObservers
      class AppObserver < ::Cloudfuji::EventObserver
        include FatFreeCRM::Cloudfuji::EventObservers::Base

        def app_claimed
          # Be verbose in development environment
          debug = Rails.env == 'development'

          ido_id = data.try(:[], 'ido_id')

          if user = User.find(:first, :conditions => ["email = ? OR ido_id = ?", data['email'], data['ido_id']])
            puts "Updating #{user.inspect} with incoming data #{params.inspect}" if debug
          else
            user = User.new
            puts "Creating User with incoming data #{params.inspect}" if debug
          end

          puts "Authlogic username column: #{::Authlogic::Cas.cas_username_column}=" if debug
          puts "Setting username to: #{ido_id}" if debug

          user.email      = data['email']
          # Set first and last name from email if both blank
          if user.first_name.blank? && user.last_name.blank?
            user.first_name = user.email.split('@').first
            user.last_name  = user.email.split('@').last
          end
          user.username   = ido_id
          user.deleted_at = nil
          user.admin = true
          user.send("#{::Authlogic::Cas.cas_username_column}=".to_sym, ido_id)

          puts user.inspect if debug
          user.save!
        end
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
ffcrm_cloudfuji-0.4.1 lib/fat_free_crm/cloudfuji/event_observers/app_observer.rb
ffcrm_cloudfuji-0.3.1 lib/fat_free_crm/cloudfuji/event_observers/app_observer.rb
ffcrm_cloudfuji-0.3.0 lib/fat_free_crm/cloudfuji/event_observers/app_observer.rb
ffcrm_cloudfuji-0.2.11 lib/fat_free_crm/cloudfuji/event_observers/app_observer.rb
ffcrm_cloudfuji-0.2.10 lib/fat_free_crm/cloudfuji/event_observers/app_observer.rb
ffcrm_cloudfuji-0.2.9 lib/fat_free_crm/cloudfuji/event_observers/app_observer.rb
ffcrm_cloudfuji-0.2.8 lib/fat_free_crm/cloudfuji/event_observers/app_observer.rb
ffcrm_cloudfuji-0.2.7 lib/fat_free_crm/cloudfuji/event_observers/app_observer.rb
ffcrm_cloudfuji-0.2.6 lib/fat_free_crm/cloudfuji/event_observers/app_observer.rb