Turn contest dashboard into tabs for easier navigation
Some checks failed
CI / scan_ruby (push) Successful in 20s
CI / scan_js (push) Successful in 14s
CI / lint (push) Successful in 13s
CI / test (push) Failing after 50s

This commit is contained in:
sto
2025-11-13 12:06:12 +01:00
parent 0f31265f7b
commit 97ea17b7c2
17 changed files with 265 additions and 239 deletions

View File

@@ -1,9 +1,2 @@
class CompletionPolicy < ContestPolicy
def index?
false
end
def show?
false
end
end

View File

@@ -1,30 +1,38 @@
class ContestPolicy < ApplicationPolicy
def owner_or_admin
if record == :contest
true
else
record.user.id == user.id || user.admin?
end
end
def index?
true
owner_or_admin
end
def show?
record.user.id == user.id || user.admin?
owner_or_admin
end
def new?
true
owner_or_admin
end
def create?
true
owner_or_admin
end
def convert?
record.user.id == user.id || user.admin?
owner_or_admin
end
def convert_csv?
record.user.id == user.id || user.admin?
owner_or_admin
end
def edit?
record.user.id == user.id || user.admin?
owner_or_admin
end
def settings_general_edit?
@@ -48,23 +56,27 @@ class ContestPolicy < ApplicationPolicy
end
def finalize_import?
record.user.id == user.id || user.admin?
owner_or_admin
end
def update?
record.user.id == user.id || user.admin?
owner_or_admin
end
def destroy?
record.user.id == user.id || user.admin?
owner_or_admin
end
def import?
record.user.id == user.id || user.admin?
owner_or_admin
end
def export?
record.user.id == user.id || user.admin?
owner_or_admin
end
def upload_csv?
owner_or_admin
end
def offline?
@@ -94,8 +106,4 @@ class ContestPolicy < ApplicationPolicy
def scoreboard?
record.public
end
def upload_csv?
record.user.id == user.id || user.admin?
end
end

View File

@@ -1,9 +1,2 @@
class ContestantPolicy < ContestPolicy
def index?
false
end
def show?
false
end
end

View File

@@ -1,9 +1,2 @@
class PuzzlePolicy < ContestPolicy
def index?
false
end
def show?
false
end
end