module TheCoreAbilitiesConcern

Public Instance Methods

mobilart_models_abilities(user) click to toggle source
# File lib/mobilart_models_abilities.rb, line 6
def mobilart_models_abilities user
  if user && !user.admin?
    can :scan_item_barcode
    # Caso particolare per gli utenti normali
    if user.has_role? :workers
      can [:read, :telnet_print], ChosenItem
      can :create, Timetable
      can :read, Timetable, user_id: user.id
      can :update, Timetable do |t|
        (t.user_id == user.id && t.created_at >= (Date.today - 2.days))
      end
      cannot :destroy, Timetable
      cannot :dashboard, :all
    end
  end
  # Nessuno può creare ChosenDeck e ChosenRoom e ChosenFurniture
  cannot :create, [ChosenDeck, ChosenRoom, ChosenFurniture, ChosenItem, Workflow]
  cannot :amoeba_dup, [ChosenDeck, ChosenRoom, ChosenFurniture, ChosenItem, Workflow]
  cannot :show, ChosenItem
  cannot [:edit, :destroy], [ChosenFurniture, ChosenItem]
end