2023-04-25 17:06:14 +02:00
from django import forms
2024-02-25 20:02:20 +01:00
from . models import Skill , Routine , RoutineSkill , Passe
2023-04-25 17:06:14 +02:00
class SkillForm ( forms . ModelForm ) :
class Meta :
model = Skill
fields = ( " informations " , )
widgets = {
" informations " : forms . Textarea (
attrs = {
" class " : " form-control " ,
" placeholder " : " Informations about the skill : attention point, methodology, biomecanics, … " , # pylint: disable=line-too-long
}
) ,
}
2023-05-16 12:58:11 +02:00
class CombinationForm ( forms . ModelForm ) :
2023-04-25 17:06:14 +02:00
class Meta :
model = Routine
fields = (
" long_label " ,
" short_label " ,
" difficulty " ,
" level " ,
" is_active " ,
2024-02-06 11:00:21 +01:00
" is_routine " ,
" is_competitive " ,
2023-04-25 17:06:14 +02:00
" informations " ,
)
widgets = {
" long_label " : forms . TextInput (
attrs = { " class " : " form-control " , " placeholder " : " Routine ' s long name " }
) ,
" short_label " : forms . TextInput (
attrs = { " class " : " form-control " , " placeholder " : " Routine ' s short name " }
) ,
2024-02-06 11:00:21 +01:00
# "is_routine": form.,
# "is_competitive": form.,
2023-04-25 17:06:14 +02:00
" informations " : forms . Textarea (
attrs = {
" class " : " form-control " ,
" placeholder " : " Informations about the psychological state of mind : context (why, where, …), possible consequencies, … " , # pylint: disable=line-too-long
}
) ,
" difficulty " : forms . HiddenInput ( ) ,
" level " : forms . HiddenInput ( ) ,
" is_active " : forms . HiddenInput ( ) ,
}
2023-05-16 12:58:11 +02:00
class CombinationSkillForm ( forms . ModelForm ) :
2023-04-25 17:06:14 +02:00
class Meta :
model = RoutineSkill
fields = (
" routine " ,
" skill " ,
" rank " ,
)
widgets = {
" routine " : forms . HiddenInput ( ) ,
" skill " : forms . HiddenInput ( ) ,
" rank " : forms . NumberInput ( ) ,
}
2024-02-25 20:02:20 +01:00
class PasseForm ( forms . ModelForm ) :
class Meta :
model = Passe
2024-02-29 16:20:29 +01:00
fields = ( " label " , " educatives " , " regexp " , " informations " )
2024-02-25 20:02:20 +01:00
widgets = {
" label " : forms . TextInput (
attrs = {
" class " : " form-control " ,
" placeholder " : " Label (not mandatory) " ,
" maxlength " : 30 ,
}
) ,
" regexp " : forms . TextInput (
attrs = { " class " : " form-control " , " placeholder " : " [2-8] " }
) ,
" informations " : forms . Textarea (
attrs = {
" class " : " form-control " ,
" placeholder " : " Informations about the passe… " , # pylint: disable=line-too-long
}
) ,
2024-02-29 16:20:29 +01:00
" educatives " : forms . HiddenInput ( ) ,
2024-02-25 20:02:20 +01:00
}
educative_related = forms . CharField (
required = False ,
widget = forms . TextInput (
attrs = {
" class " : " form-control " ,
" placeholder " : " Searching educative " ,
" data-ref " : " #id_educative " ,
}
) ,
)
2024-02-29 16:20:29 +01:00
# "repetition": forms.NumberInput(
# attrs={
# "class": "form-control",
# "placeholder": "x",
# "min": "0",
# "max": "1000",
# "step": "1",
# }
# ),
2024-03-09 08:06:21 +01:00
def clean_regexp ( self ) :
""" """
cleaned_data = self . clean ( )
regexp = cleaned_data . get ( " regexp " )
if not Passe . is_valid_regexp ( regexp , None , None ) :
self . add_error ( " regexp " , " Entered regexp not valid. " )
return regexp