3
3
from django import forms
4
4
from django .utils .translation import gettext_lazy as _
5
5
from wagtail import blocks
6
-
7
6
from wagtailstreamforms .conf import get_setting
8
7
from wagtailstreamforms .fields import BaseField , register
9
8
@@ -67,15 +66,18 @@ def get_options(self, block_value):
67
66
options .update ({"choices" : choices })
68
67
return options
69
68
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
+
70
78
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 (),
79
81
icon = self .icon ,
80
82
label = self .label ,
81
83
)
@@ -97,14 +99,17 @@ def get_options(self, block_value):
97
99
options .update ({"choices" : choices })
98
100
return options
99
101
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
+
100
110
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 (),
108
113
icon = self .icon ,
109
114
label = self .label ,
110
115
)
@@ -127,14 +132,17 @@ def get_options(self, block_value):
127
132
options .update ({"choices" : choices })
128
133
return options
129
134
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
+
130
143
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 (),
138
146
icon = self .icon ,
139
147
label = self .label ,
140
148
)
@@ -157,14 +165,17 @@ def get_options(self, block_value):
157
165
options .update ({"choices" : choices })
158
166
return options
159
167
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
+
160
176
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 (),
168
179
icon = self .icon ,
169
180
label = self .label ,
170
181
)
@@ -175,13 +186,16 @@ class CheckboxField(BaseField):
175
186
icon = "tick-inverse"
176
187
label = _ ("Checkbox field" )
177
188
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
+
178
196
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 (),
185
199
icon = self .icon ,
186
200
label = self .label ,
187
201
)
@@ -200,13 +214,16 @@ class SingleFileField(BaseField):
200
214
icon = "doc-full-inverse"
201
215
label = _ ("File field" )
202
216
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
+
203
224
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 (),
210
227
icon = self .icon ,
211
228
label = self .label ,
212
229
)
@@ -236,13 +253,16 @@ class MultiFileField(BaseField):
236
253
icon = "doc-full-inverse"
237
254
label = _ ("Files field" )
238
255
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
+
239
263
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 (),
246
266
icon = self .icon ,
247
267
label = self .label ,
248
268
)
0 commit comments