Module: Katello::Authorization::ContentView::ClassMethods

Defined in:
app/models/katello/authorization/content_view.rb

Instance Method Summary collapse

Instance Method Details

#deletableObject



40
41
42
# File 'app/models/katello/authorization/content_view.rb', line 40

def deletable
  authorized(:destroy_content_views)
end

#editableObject



36
37
38
# File 'app/models/katello/authorization/content_view.rb', line 36

def editable
  authorized(:edit_content_views)
end

#publishableObject



44
45
46
# File 'app/models/katello/authorization/content_view.rb', line 44

def publishable
  authorized(:publish_content_views)
end

#readableObject



28
29
30
# File 'app/models/katello/authorization/content_view.rb', line 28

def readable
  authorized(:view_content_views)
end

#readable?Boolean

Returns:

  • (Boolean)


32
33
34
# File 'app/models/katello/authorization/content_view.rb', line 32

def readable?
  ::User.current.can?(:view_content_views)
end

#readable_repositories(repo_ids = nil) ⇒ Object



48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'app/models/katello/authorization/content_view.rb', line 48

def readable_repositories(repo_ids = nil)
  query = Katello::Repository.all
  content_views = Katello::ContentView.readable

  if repo_ids
    query.where(:id => repo_ids)
  else
    content_views = content_views.where(:default => false)
  end

  query.joins(:content_view_version)
       .where("#{Katello::ContentViewVersion.table_name}.content_view_id" => content_views.pluck(:id))
end