Coverage for vocabs/forms.py: 68%

59 statements  

« prev     ^ index     » next       coverage.py v7.5.3, created at 2024-06-10 15:48 +0000

1from dal import autocomplete 

2from django import forms 

3from crispy_forms.helper import FormHelper 

4from crispy_forms.layout import Submit 

5from .models import SkosConcept, SkosConceptScheme, SkosLabel 

6 

7 

8class GenericFilterFormHelper(FormHelper): 

9 def __init__(self, *args, **kwargs): 

10 super(GenericFilterFormHelper, self).__init__(*args, **kwargs) 

11 self.helper = FormHelper() 

12 self.form_class = "genericFilterForm" 

13 self.form_method = "GET" 

14 self.add_input(Submit("Filter", "search")) 

15 

16 

17class UploadFileForm(forms.Form): 

18 file = forms.FileField() 

19 

20 def __init__(self, *args, **kwargs): 

21 super(UploadFileForm, self).__init__(*args, **kwargs) 

22 self.helper = FormHelper() 

23 self.helper.form_tag = True 

24 self.helper.form_class = "form-horizontal" 

25 self.helper.label_class = "col-md-3" 

26 self.helper.field_class = "col-md-9" 

27 self.helper.add_input( 

28 Submit("submit", "import"), 

29 ) 

30 

31 

32class SkosConceptForm(forms.ModelForm): 

33 class Meta: 

34 model = SkosConcept 

35 fields = "__all__" 

36 widgets = { 

37 "label": autocomplete.ModelSelect2Multiple( 

38 url="vocabs-ac:skoslabel-autocomplete" 

39 ), 

40 "skos_broader": autocomplete.ModelSelect2Multiple( 

41 url="vocabs-ac:skosconcept-autocomplete" 

42 ), 

43 "skos_narrower": autocomplete.ModelSelect2Multiple( 

44 url="vocabs-ac:skosconcept-autocomplete" 

45 ), 

46 "skos_related": autocomplete.ModelSelect2Multiple( 

47 url="vocabs-ac:skosconcept-autocomplete" 

48 ), 

49 "skos_broadmatch": autocomplete.ModelSelect2Multiple( 

50 url="vocabs-ac:skosconcept-autocomplete" 

51 ), 

52 "skos_exactmatch": autocomplete.ModelSelect2Multiple( 

53 url="vocabs-ac:skosconcept-autocomplete" 

54 ), 

55 "scheme": autocomplete.ModelSelect2Multiple( 

56 url="vocabs-ac:skosconceptscheme-autocomplete" 

57 ), 

58 } 

59 

60 def __init__(self, *args, **kwargs): 

61 super(SkosConceptForm, self).__init__(*args, **kwargs) 

62 self.helper = FormHelper() 

63 self.helper.form_tag = True 

64 self.helper.form_class = "form-horizontal" 

65 self.helper.label_class = "col-md-3" 

66 self.helper.field_class = "col-md-9" 

67 self.helper.add_input( 

68 Submit("submit", "save"), 

69 ) 

70 

71 

72class SkosConceptSchemeForm(forms.ModelForm): 

73 class Meta: 

74 model = SkosConceptScheme 

75 fields = "__all__" 

76 

77 def __init__(self, *args, **kwargs): 

78 super(SkosConceptSchemeForm, self).__init__(*args, **kwargs) 

79 self.helper = FormHelper() 

80 self.helper.form_tag = True 

81 self.helper.form_class = "form-horizontal" 

82 self.helper.label_class = "col-md-3" 

83 self.helper.field_class = "col-md-9" 

84 self.helper.add_input( 

85 Submit("submit", "save"), 

86 ) 

87 

88 

89class SkosLabelForm(forms.ModelForm): 

90 class Meta: 

91 model = SkosLabel 

92 fields = "__all__" 

93 

94 def __init__(self, *args, **kwargs): 

95 super(SkosLabelForm, self).__init__(*args, **kwargs) 

96 self.helper = FormHelper() 

97 self.helper.form_tag = True 

98 self.helper.form_class = "form-horizontal" 

99 self.helper.label_class = "col-md-3" 

100 self.helper.field_class = "col-md-9" 

101 self.helper.add_input( 

102 Submit("submit", "save"), 

103 )