Skip to content

Commit 811ed26

Browse files
committed
Adjusts wagtailstreamforms/wagtailstreamforms_fields.py to use new self.get_local_blocks() method
1 parent bfb9542 commit 811ed26

File tree

1 file changed

+68
-48
lines changed

1 file changed

+68
-48
lines changed

wagtailstreamforms/wagtailstreamforms_fields.py

Lines changed: 68 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
from django import forms
44
from django.utils.translation import gettext_lazy as _
55
from wagtail import blocks
6-
76
from wagtailstreamforms.conf import get_setting
87
from wagtailstreamforms.fields import BaseField, register
98

@@ -67,15 +66,18 @@ def get_options(self, block_value):
6766
options.update({"choices": choices})
6867
return options
6968

69+
def get_local_blocks(self):
70+
return [
71+
("label", blocks.CharBlock()),
72+
("help_text", blocks.CharBlock(required=False)),
73+
("required", blocks.BooleanBlock(required=False)),
74+
("empty_label", blocks.CharBlock(required=False)),
75+
("choices", blocks.ListBlock(blocks.CharBlock(label="Option"))),
76+
]
77+
7078
def get_form_block(self):
71-
return blocks.StructBlock(
72-
[
73-
("label", blocks.CharBlock()),
74-
("help_text", blocks.CharBlock(required=False)),
75-
("required", blocks.BooleanBlock(required=False)),
76-
("empty_label", blocks.CharBlock(required=False)),
77-
("choices", blocks.ListBlock(blocks.CharBlock(label="Option"))),
78-
],
79+
return self.get_form_block_class()(
80+
self.get_local_blocks(),
7981
icon=self.icon,
8082
label=self.label,
8183
)
@@ -97,14 +99,17 @@ def get_options(self, block_value):
9799
options.update({"choices": choices})
98100
return options
99101

102+
def get_local_blocks(self):
103+
return [
104+
("label", blocks.CharBlock()),
105+
("help_text", blocks.CharBlock(required=False)),
106+
("required", blocks.BooleanBlock(required=False)),
107+
("choices", blocks.ListBlock(blocks.CharBlock(label="Option"))),
108+
]
109+
100110
def get_form_block(self):
101-
return blocks.StructBlock(
102-
[
103-
("label", blocks.CharBlock()),
104-
("help_text", blocks.CharBlock(required=False)),
105-
("required", blocks.BooleanBlock(required=False)),
106-
("choices", blocks.ListBlock(blocks.CharBlock(label="Option"))),
107-
],
111+
return self.get_form_block_class()(
112+
self.get_local_blocks(),
108113
icon=self.icon,
109114
label=self.label,
110115
)
@@ -127,14 +132,17 @@ def get_options(self, block_value):
127132
options.update({"choices": choices})
128133
return options
129134

135+
def get_local_blocks(self):
136+
return [
137+
("label", blocks.CharBlock()),
138+
("help_text", blocks.CharBlock(required=False)),
139+
("required", blocks.BooleanBlock(required=False)),
140+
("choices", blocks.ListBlock(blocks.CharBlock(label="Option"))),
141+
]
142+
130143
def get_form_block(self):
131-
return blocks.StructBlock(
132-
[
133-
("label", blocks.CharBlock()),
134-
("help_text", blocks.CharBlock(required=False)),
135-
("required", blocks.BooleanBlock(required=False)),
136-
("choices", blocks.ListBlock(blocks.CharBlock(label="Option"))),
137-
],
144+
return self.get_form_block_class()(
145+
self.get_local_blocks(),
138146
icon=self.icon,
139147
label=self.label,
140148
)
@@ -157,14 +165,17 @@ def get_options(self, block_value):
157165
options.update({"choices": choices})
158166
return options
159167

168+
def get_local_blocks(self):
169+
return [
170+
("label", blocks.CharBlock()),
171+
("help_text", blocks.CharBlock(required=False)),
172+
("required", blocks.BooleanBlock(required=False)),
173+
("choices", blocks.ListBlock(blocks.CharBlock(label="Option"))),
174+
]
175+
160176
def get_form_block(self):
161-
return blocks.StructBlock(
162-
[
163-
("label", blocks.CharBlock()),
164-
("help_text", blocks.CharBlock(required=False)),
165-
("required", blocks.BooleanBlock(required=False)),
166-
("choices", blocks.ListBlock(blocks.CharBlock(label="Option"))),
167-
],
177+
return self.get_form_block_class()(
178+
self.get_local_blocks(),
168179
icon=self.icon,
169180
label=self.label,
170181
)
@@ -175,13 +186,16 @@ class CheckboxField(BaseField):
175186
icon = "tick-inverse"
176187
label = _("Checkbox field")
177188

189+
def get_local_blocks(self):
190+
return [
191+
("label", blocks.CharBlock()),
192+
("help_text", blocks.CharBlock(required=False)),
193+
("required", blocks.BooleanBlock(required=False)),
194+
]
195+
178196
def get_form_block(self):
179-
return blocks.StructBlock(
180-
[
181-
("label", blocks.CharBlock()),
182-
("help_text", blocks.CharBlock(required=False)),
183-
("required", blocks.BooleanBlock(required=False)),
184-
],
197+
return self.get_form_block_class()(
198+
self.get_local_blocks(),
185199
icon=self.icon,
186200
label=self.label,
187201
)
@@ -200,13 +214,16 @@ class SingleFileField(BaseField):
200214
icon = "doc-full-inverse"
201215
label = _("File field")
202216

217+
def get_local_blocks(self):
218+
return [
219+
("label", blocks.CharBlock()),
220+
("help_text", blocks.CharBlock(required=False)),
221+
("required", blocks.BooleanBlock(required=False)),
222+
]
223+
203224
def get_form_block(self):
204-
return blocks.StructBlock(
205-
[
206-
("label", blocks.CharBlock()),
207-
("help_text", blocks.CharBlock(required=False)),
208-
("required", blocks.BooleanBlock(required=False)),
209-
],
225+
return self.get_form_block_class()(
226+
self.get_local_blocks(),
210227
icon=self.icon,
211228
label=self.label,
212229
)
@@ -236,13 +253,16 @@ class MultiFileField(BaseField):
236253
icon = "doc-full-inverse"
237254
label = _("Files field")
238255

256+
def get_local_blocks(self):
257+
return [
258+
("label", blocks.CharBlock()),
259+
("help_text", blocks.CharBlock(required=False)),
260+
("required", blocks.BooleanBlock(required=False)),
261+
]
262+
239263
def get_form_block(self):
240-
return blocks.StructBlock(
241-
[
242-
("label", blocks.CharBlock()),
243-
("help_text", blocks.CharBlock(required=False)),
244-
("required", blocks.BooleanBlock(required=False)),
245-
],
264+
return self.get_form_block_class()(
265+
self.get_local_blocks(),
246266
icon=self.icon,
247267
label=self.label,
248268
)

0 commit comments

Comments
 (0)