Update bridge (DMOJ)
This commit is contained in:
parent
77e64f1b85
commit
3629369fba
34 changed files with 770 additions and 2199 deletions
|
@ -7,7 +7,7 @@ from django.contrib.auth.forms import AuthenticationForm
|
|||
from django.core.exceptions import ValidationError
|
||||
from django.core.validators import RegexValidator
|
||||
from django.db.models import Q
|
||||
from django.forms import CharField, Form, ModelForm
|
||||
from django.forms import CharField, ChoiceField, Form, ModelForm
|
||||
from django.urls import reverse_lazy
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
|
@ -69,18 +69,23 @@ class ProfileForm(ModelForm):
|
|||
|
||||
class ProblemSubmitForm(ModelForm):
|
||||
source = CharField(max_length=65536, widget=AceWidget(theme='twilight', no_ace_media=True))
|
||||
judge = ChoiceField(choices=(), widget=forms.HiddenInput(), required=False)
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
def __init__(self, *args, judge_choices=(), **kwargs):
|
||||
super(ProblemSubmitForm, self).__init__(*args, **kwargs)
|
||||
self.fields['problem'].empty_label = None
|
||||
self.fields['problem'].widget = forms.HiddenInput()
|
||||
self.fields['language'].empty_label = None
|
||||
self.fields['language'].label_from_instance = attrgetter('display_name')
|
||||
self.fields['language'].queryset = Language.objects.filter(judges__online=True).distinct()
|
||||
|
||||
if judge_choices:
|
||||
self.fields['judge'].widget = Select2Widget(
|
||||
attrs={'style': 'width: 150px', 'data-placeholder': _('Any judge')},
|
||||
)
|
||||
self.fields['judge'].choices = judge_choices
|
||||
|
||||
class Meta:
|
||||
model = Submission
|
||||
fields = ['problem', 'language']
|
||||
fields = ['language']
|
||||
|
||||
|
||||
class EditOrganizationForm(ModelForm):
|
||||
|
@ -156,4 +161,4 @@ class ContestCloneForm(Form):
|
|||
key = self.cleaned_data['key']
|
||||
if Contest.objects.filter(key=key).exists():
|
||||
raise ValidationError(_('Contest with key already exists.'))
|
||||
return key
|
||||
return key
|
Loading…
Add table
Add a link
Reference in a new issue