Sha256: 14f9148d5ab9763022c23e912b76922e65288a9590386eb080332f4def034762

Contents?: true

Size: 1012 Bytes

Versions: 2

Compression:

Stored size: 1012 Bytes

Contents

class User
  include Mongoid::Document
  field :provider, :type => String
  field :uid, :type => String
  field :code, :type => String
  field :email, :type => String
  field :role, :type => String
  field :user, :type => String
  belongs_to :identity, :polymorphic => true, :optional => true
  has_many :xmains, :class_name => "Mindapp::Xmain"

  def has_role(role1)
    return role.upcase.split(',').include?(role1.upcase)
  end
  
  def self.from_omniauth(auth)
    where(auth.slice(:uid, :provider, :email)).first_or_create do |user|
      case auth.provider 
        when 'identity'
          identity = Identity.find auth.uid
          user.code = identity.code
          user.email = identity.email
        else
          user.email = auth.info.email
          user.uid = auth.uid
          user.provider = auth.provider
          user.code = auth.info.name
          user.role = "M"
        end
      end
    end
         
  def ma_secured?
    role.upcase.split(',').include?(ma_secured_ROLE)
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
mindapp2-0.1.1.5 lib/generators/mindapp/templates/app/models/user.rb
mindapp2-0.1.1.4 lib/generators/mindapp/templates/app/models/user.rb