From 7c2d00a657a9d600dcd547469ae8286104eb8090 Mon Sep 17 00:00:00 2001 From: yaemiku Date: Wed, 20 Apr 2022 18:24:13 +0200 Subject: [PATCH] [func] allow scores lookup for admins --- app/migrations/0002_auto_20220420_1823.py | 27 +++++++++++++++++++++++ app/models.py | 4 ++-- app/views.py | 2 +- 3 files changed, 30 insertions(+), 3 deletions(-) create mode 100644 app/migrations/0002_auto_20220420_1823.py diff --git a/app/migrations/0002_auto_20220420_1823.py b/app/migrations/0002_auto_20220420_1823.py new file mode 100644 index 0000000..e6fc3c2 --- /dev/null +++ b/app/migrations/0002_auto_20220420_1823.py @@ -0,0 +1,27 @@ +# Generated by Django 3.2.5 on 2022-04-20 16:23 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('app', '0001_initial'), + ] + + operations = [ + migrations.AlterModelOptions( + name='announcement', + options={'ordering': ['-created_at'], 'verbose_name': 'Ogłoszenie', 'verbose_name_plural': 'Ogłoszenia'}, + ), + migrations.AlterField( + model_name='edition', + name='scores', + field=models.FileField(blank=True, help_text='Uwaga! Wyniki muszą być zawarte w pliku .csv. Kolumny po kolei to odpowiednio: identyfikator ucznia, wynik z eliminacji, wynik z finału.', upload_to='wyniki', verbose_name='Wyniki do wczytania'), + ), + migrations.AlterField( + model_name='edition', + name='scores_available', + field=models.BooleanField(default=False, verbose_name='Wyniki dostępne dla wszystkich'), + ), + ] diff --git a/app/models.py b/app/models.py index b9ea6c8..ab9a822 100644 --- a/app/models.py +++ b/app/models.py @@ -10,14 +10,14 @@ class Edition(models.Model): active = models.BooleanField('Aktualna', default=False) submissions = models.BooleanField('Możliwość zgłoszenia drużyny', default=False) - scores_available = models.BooleanField('Wyniki dostępne', default=False) + scores_available = models.BooleanField('Wyniki dostępne dla wszystkich', default=False) scores_eliminations = models.BooleanField('Wyniki z eliminacji dostępne dla nauczycieli', default=False) entry_threshold = models.IntegerField('Próg punkowy - wejście do finału', default=0) award_threshold = models.IntegerField('Próg punktowy - wyróżnienie', default=0) laureate_threshold = models.IntegerField('Próg punktowy - tytuł laureata', default=0) - scores = models.FileField('Wyniki eliminacji', blank=True, upload_to='wyniki', help_text='Uwaga! Wyniki muszą być zawarte w pliku .csv. Kolumny po kolei to odpowiednio: identyfikator ucznia, wynik z eliminacji, wynik z finału.') + scores = models.FileField('Wyniki do wczytania', blank=True, upload_to='wyniki', help_text='Uwaga! Wyniki muszą być zawarte w pliku .csv. Kolumny po kolei to odpowiednio: identyfikator ucznia, wynik z eliminacji, wynik z finału.') first_test = models.FileField('Zadania eliminacyjne', blank=True, upload_to='eliminacje') second_test = models.FileField('Zadania finałowe', blank=True, upload_to='finaly') diff --git a/app/views.py b/app/views.py index 9d7827c..ac38b50 100644 --- a/app/views.py +++ b/app/views.py @@ -116,7 +116,7 @@ def ScoresView(request, year = None): context = { 'scores_page': 'is-active', 'year': year, - 'scores_available': edition.scores_available, + 'scores_available': edition.scores_available or request.user.is_superuser, 'editions': Edition.objects.order_by('year') }