Files
sanasto-wiki/app/controllers/admin/dashboard_controller.rb
Runar Ingebrigtsen 530021960e
CI / scan_ruby (push) Failing after 12s
CI / scan_js (push) Successful in 11s
CI / lint (push) Failing after 19s
CI / test (push) Successful in 34s
add entry requests, invite new users
2026-01-30 01:28:53 +01:00

33 lines
1.2 KiB
Ruby

class Admin::DashboardController < Admin::BaseController
def index
@user_count = User.count
@contributor_count = User.contributor.count
@reviewer_count = User.reviewer.count
@admin_count = User.admin.count
@entry_count = Entry.count
@verified_count = Entry.where(verified: true).count
@unverified_count = @entry_count - @verified_count
@pending_suggestions_count = SuggestedMeaning.pending.count
@accepted_suggestions_count = SuggestedMeaning.accepted.count
@rejected_suggestions_count = SuggestedMeaning.rejected.count
@requested_entries_count = Entry.requested.count
@comment_count = Comment.count
@recent_users = User.order(created_at: :desc).limit(5)
@recent_entries = Entry.order(created_at: :desc).limit(5)
@pending_invitations = User.where.not(invitation_token: nil)
.where(invitation_accepted_at: nil)
.where("invitation_sent_at > ?", 14.days.ago)
.count
@language_completion = supported_languages.index_with do |language|
next 0 if @entry_count.zero?
(Entry.where.not(language.code => [ nil, "" ]).count * 100.0 / @entry_count).round
end
end
end