diff options
Diffstat (limited to 'app/models/user.rb')
| -rw-r--r-- | app/models/user.rb | 10 | 
1 files changed, 8 insertions, 2 deletions
| diff --git a/app/models/user.rb b/app/models/user.rb index 31e634415..ba166b06f 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -1,4 +1,4 @@ -class User < ActiveRecord::Base +class User < ApplicationModel    # Include default devise modules. Others available are:    # :token_authenticatable, :encryptable, :confirmable, :lockable, :timeoutable and :omniauthable, :database_authenticatable @@ -9,7 +9,7 @@ class User < ActiveRecord::Base           :recoverable, :rememberable, :trackable, :async, authentication_type    # FIXME https://github.com/nbudin/devise_cas_authenticatable/issues/53 -  # Work around :validatable, when database_authenticatable is diabled. +  # Work around :validatable, when database_authenticatable is disabled.    attr_accessor :password unless authentication_type == :database_authenticatable    # Setup accessible (or protected) attributes for your model @@ -30,6 +30,8 @@ class User < ActiveRecord::Base    scope :with_organisation, -> { where.not(organisation_id: nil) } +  scope :from_workgroup, ->(workgroup_id) { joins(:workbenches).where(workbenches: {workgroup_id: workgroup_id}) } +    # Callback invoked by DeviseCasAuthenticable::Model#authernticate_with_cas_ticket    def cas_extra_attributes=(extra_attributes) @@ -67,6 +69,10 @@ class User < ActiveRecord::Base      permissions && permissions.include?(permission)    end +  def can_monitor_sidekiq? +    has_permission?("sidekiq.monitor") +  end +    private    # remove organisation and referentials if last user of it | 
