def __init__(self, sortable_fields, *args, **kwargs): """Initialize the form.""" super().__init__(*args, **kwargs) self.fields['sort'].choices = prepare_choices(sortable_fields) self.helper = FormHelper() self.helper.form_method = 'get' self.helper.form_class = 'form-inline my-3' self.helper.layout = Layout( Field('sort', 'descending', 'search'), ButtonHolder( Submit('', _("Apply")), HTML( """ <a class="btn btn-light" href="{0}" role="button">{1}</a> """.format('{{ request.path }}', _("Reset")), ), ), )
def __init__(self, *args, **kwargs): pk = kwargs['pk'] kwargs.pop('pk') super(PostModForm, self).__init__(*args, **kwargs) self.helper = FormHelper() self.helper.error_text_inline = False self.helper.help_text_inline = True self.helper.form_action = reverse("post-moderation", kwargs=dict(pk=pk)) self.helper.layout = Layout( Fieldset( 'Select moderation option', 'action', 'comment', 'dupe', ), ButtonHolder(Submit('submit', 'Submit')))
def __init__(self, user, *args, **kwargs): super(ChangeUserForm, self).__init__(*args, **kwargs) self.helper = FormHelper() self.helper.form_class = 'content-wrapper' self.helper.form_method = 'post' self.previous_email = user.email self.previous_username = user.username self.fields['options'].initial = '' if user.profile and user.profile.show_email: self.fields['options'].initial += 'show_email' self.helper.layout = Layout( Field('username', value=user.username), Field('email', value=user.email), Field('options'), ButtonHolder(StrictButton(_('Enregistrer'), type='submit'), ), )
def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.helper = FormHelper() self.helper.form_method = "post" self.helper.form_class = "newitem" self.helper.form_show_labels = False self.helper.form_show_errors = False self.helper.layout = Layout( Div("note"), ButtonHolder( Submit("submit", "Submit", css_class="btn btn-primary col-md-4"), HTML(""" <button onclick="window.location.href='{{ cancel_link }}'" class="btn btn-outline-secondary col-md-4" type="button">Cancel</button> """), ), )
def __init__(self, *args, **kwargs): super(ContainerForm, self).__init__(*args, **kwargs) self.helper = FormHelper() self.helper.form_class = 'content-wrapper' self.helper.form_method = 'post' self.helper.layout = Layout( Field('title'), Field('introduction', css_class='md-editor'), Field('conclusion', css_class='md-editor'), Field('msg_commit'), Field('last_hash'), ButtonHolder( StrictButton( _(u'Valider'), type='submit'), ) )
def __init__(self, *args, **kwargs): super(ExampleForm, self).__init__(*args, **kwargs) self.helper = FormHelper() self.helper.layout = Layout( Fieldset( 'Henry Schein One Survey', 'how_did_you_hear', 'years', 'score', 'score1', 'notes', ), ButtonHolder(Submit('submit', 'Submit', css_class='button white'))) self.helper.label_class = 'form_label' self.helper.form_id = 'id-exampleForm' self.helper.form_class = 'blueForms' self.helper.form_method = 'post' self.helper.form_action = 'submit_survey'
def __init__(self, *args, **kwargs): self.helper = FormHelper() self.helper.form_class = 'form-horizontal' self.helper.label_class = 'col-lg-2' self.helper.field_class = 'col-lg-8' self.helper.layout = Layout( 'key', 'data_type', 'value', 'value_number', 'value_boolean', 'task_argument', 'task_name', 'prompt_me_for_input', 'sensitive_value', ButtonHolder( Submit('submit', '%s Configuration' % self.button_prefix, css_class='btn'))) super(ConfigurationUpdateForm, self).__init__(*args, **kwargs) self.fields['data_type'].required = True self.fields['value_boolean'].coerce = lambda x: x == 'True'
def __init__(self, *args, **kwargs): super(UserProfileForm, self).__init__(*args, **kwargs) self.helper = FormHelper() self.helper.layout = Layout( Field("first_name"), Field("last_name"), InlineRadios("gender", required=True), PrependedText("phone", "+88", active=True), Field("birthday"), Field("area"), Field("city"), Field("country"), HTML(""" <label>Passion Sport (Select All That Apply)*</label> """), Field( Div("sport", css_class="form-sport form-group", required=True), Field("communication")), ButtonHolder( Submit("submit", "Submit", css_class="btn btn-block btn-primary")))
def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.helper = FormHelper() self.helper.layout = Layout( Fieldset( "", Div( "username", "email", "password1", "password2", "captcha", css_id="register-form", ), ), ButtonHolder(Submit("submit", "Sign up", css_class="button white")), )
def __init__(self, user, pin_id, *args, **kwargs): super(PinPinForm, self).__init__(*args, **kwargs) self.fields['board'].queryset = Board.objects.filter(user=user) self.helper = FormHelper() self.helper.form_id = 'pin_pin_form' self.helper.form_method = 'post' self.helper.form_action = 'pin_pin/'+pin_id+'/' self.helper.layout = Layout( Fieldset( 'Choose the board that you want to pin on', 'board' ), ButtonHolder( Submit('submit', 'Pin Pin', css_class='btn-default'), HTML('<button class="btn btn-default" id="pincancel" data-pinid=pin_id' ' data-dismiss="modal">Cancel</button>') ) )
def __init__(self, user, *args, **kwargs): super().__init__(*args, **kwargs) self.helper = FormHelper() self.helper.form_class = "content-wrapper" self.helper.form_method = "post" self.previous_email = user.email self.previous_username = user.username self.fields["options"].initial = "" if user.profile and user.profile.show_email: self.fields["options"].initial += "show_email" self.helper.layout = Layout( Field("username", value=user.username), Field("email", value=user.email), Field("options"), ButtonHolder(StrictButton(_("Enregistrer"), type="submit"), ), )
def __init__(self, *args, **kwargs): self.helper = FormHelper() self.helper.form_class = 'form-horizontal' self.helper.label_class = 'col-lg-2' self.helper.field_class = 'col-lg-10' self.helper.form_method = 'post' self.helper.layout = Layout( Fieldset( ("Create a transcript"), 'datapoint', 'name', Field('text', data_provide="markdown", rows="25"), ), ButtonHolder( Submit('save', ('Create transcript'), css_class='btn btn-primary pull-right'), ) ) super(TranscriptCreationForm, self).__init__(*args, **kwargs)
def __init__(self, *args, **kwargs): self.helper = FormHelper(self) self.helper.form_id = 'id_new_event' self.helper.form_class = 'well' self.helper.form_method = 'post' self.helper.layout = Layout( Fieldset('event_name'), Fieldset('date'), Fieldset('date_end'), Fieldset('time_start'), Fieldset('end_time'), Fieldset('location'), Fieldset('city'), Fieldset('state'), Fieldset('zip_code'), Fieldset('guests'), Fieldset('description'), Fieldset('template'), ButtonHolder( Submit('submit', 'Submit', css_class='btn btn-primary'))) super(NewEventForm, self).__init__(*args, **kwargs) class Meta: model = models.NewEvent
def __init__(self, *args, **kwargs): self.request = kwargs.pop('request') super(EmailForm, self).__init__(*args, **kwargs) self.fields['template'].queryset = models.Template.objects.filter( user=self.request.user) self.helper = FormHelper() self.helper.form_class = 'col-md-9 col-md-offset-1' self.helper.layout = Layout( 'name', 'email', 'subject', 'template', 'attachment', 'content', ButtonHolder( Submit('send', 'Send', css_class='btn btn-block btn-default') ) )
def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.helper = FormHelper(self) self.helper.layout = Layout( TabHolder( Tab( "Information", *common_information_items, "display_forum_link", "disclaimer", ), Tab("Images", "banner", *common_images_items), Tab("Event", *event_items), Tab("Registration", *registration_items), Tab("Automated Evaluation", "use_evaluation", "use_teams"), ), ButtonHolder(Submit("save", "Save")), )
def __init__(self, *args, **kwargs): super(RegistrationForm, self).__init__(*args, **kwargs) self.helper = FormHelper() self.helper.form_class = 'form-horizontal' self.helper.label_class = 'col-md-2' self.helper.field_class = 'col-md-8' self.helper.layout = Layout( 'username', 'first_name', 'last_name', 'email', 'password1', 'password2', ButtonHolder( Submit('register', 'Register', css_class='btn-primary') ) )
def __init__(self, *args, **kwargs): super(MetaDataJobForm, self).__init__(*args, **kwargs) self.helper = helper() self.helper.form_method = 'post' self.helper.field_class = 'col-md-6 col-md-offset-1' self.helper.layout = Layout( Fieldset( '', Div( Field('input_dir', css_class='form-control'), Field('output_dir', css_class='form-control'), ), Div( Field('datatype'), Field('processor'), Field('target_os'), ), ), ButtonHolder(Submit('submit', 'Submit')))
def __init__(self, *args, **kwargs): super(SignupForm, self).__init__(*args, **kwargs) self.helper = FormHelper() self.helper.layout = Layout( Div( 'first_name', 'last_name', 'state', 'email', 'password1', 'password2', 'opt_in' ), ButtonHolder( Submit('submit', 'Sign Up', css_class='button button-3d button-large button-brand nomargin') ) )
def __init__(self, *args, **kwargs): super(ProfileUpdateForm, self).__init__(*args, **kwargs) if self.instance: self.fields['email'].initial = self.instance.user.email self.fields['name'].initial = self.instance.user.name self.helper = FormHelper() self.helper.layout = Layout( 'name', 'email', 'phone', 'about', CustomFileInput('image'), ButtonHolder( Submit('submit', 'Save Changes', css_class='btn btn-success btn-block') ) )
def __init__(self, *args, **kwargs): super(StudentUpdateForm, self).__init__(*args, **kwargs) self.helper = FormHelper() self.helper.form_action = reverse('students_edit',kwargs={'pk': kwargs['instance'].id}) self.helper.form_method ='POST' self.helper.form_class = 'form-horizontal' self.helper.help_text_inline = True self.helper.label_class = 'col-sm-2 control-label' self.helper.field_class = 'col-sm-10' self.helper.layout = Layout( Fieldset('', 'first_name', 'last_name', 'middle_name', 'birthday', 'ticket', 'student_group', 'photo', 'notes'), ButtonHolder( Submit('save_button', u'Зберегти', css_class='btn btn-primary'), Submit('cancel_button', u'Скасувати', css_class='btn btn-link')))
def __init__(self, *args, **kwargs): super(ProtectForm, self).__init__(*args, **kwargs) self.helper = FormHelper self.helper.form_method = 'post' self.helper.form_action = 'protect/' self.helper.form_style = 'inline' self.helper.label_class = 'left' self.helper.field_class = 'left' self.helper.field_template = 'field.html' self.helper.use_custom_control = True self.helper.layout = Layout( Fieldset( 'Datenbank vor Löschen schützen', 'db_name', 'server', 'instance', 'reason', ), ButtonHolder(Submit('submit', 'Senden')))
def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.helper = FormHelper(self) self.helper.layout = Layout( TabHolder( Tab( "Information", "short_name", "homepage", *common_information_items, ), Tab("Images", *common_images_items), Tab("Event", *event_items), Tab("Data", *data_items), Tab("Publication", *publication_items), ), ButtonHolder(Submit("save", "Save")), )
def __init__(self, *args, **kwargs): super(UserEditForm, self).__init__(*args, **kwargs) self.helper = FormHelper() self.helper.error_text_inline = False self.helper.help_text_inline = True self.helper.layout = Layout( Fieldset( 'Update your profile', 'name', 'email', 'location', 'website', 'scholar', 'message_prefs', Field('my_tags'), 'info', ), ButtonHolder(Submit('submit', 'Submit')))
def __init__(self, *args, **kwargs): super(RecipeForm, self).__init__(*args, **kwargs) self.helper = FormHelper() self.helper.form_tag = True self.helper.label_class = 'create-label' self.helper.field_class = 'form-control' self.helper.layout = Layout( Div( Field('name', css_class='form-control'), Field('source', css_class='form-control'), Field('tags', css_class='form-control'), Fieldset('Dodaj składniki', Formset('ingredients'), css_class='form-control'), HTML("<br>"), ButtonHolder(Submit('submit', 'Zapisz')), ))
def __init__(self, *args, **kwargs): super(SamplesForm, self).__init__(*args, **kwargs) self.helper = FormHelper() self.helper.layout = Layout( Div( Field('fluid', wrapper_class='col-md-2',css_class='form-control'), Field('sex', wrapper_class='col-md-2',css_class='form-control'), Field('healthy', wrapper_class='col-md-2',css_class='form-control'), Field('extraction', wrapper_class='col-md-2',css_class='form-control'), Field('library', wrapper_class='col-md-2',css_class='form-control'), Field('exosome', wrapper_class='col-md-2',css_class='form-control'), ButtonHolder( # Submit('submit', 'RUN', css_class='btn btn-primary', onclick="alert('Neat!'); return true") Submit('submit', 'FILTER', onclick="$('#loadpage').show(); $('#divPageContent').hide();", css_class='btn btn-primary btn-form') # onsubmit="alert('Neat!'); return false") ), css_class='form-row') )
def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.helper = FormHelper() self.helper.layout = Layout( Fieldset( "", Div( Field("action", value="upload", type="hidden"), Field("file", css_id="file-upload", name="file_upload"), css_id="file-upload-form", ), ), ButtonHolder( Submit( "submit", "Submit", css_class="btn btn-danger", css_id="file-button" ) ), )
def __init__(self, project=None, *args, **kwargs): super(ReportForm, self).__init__(*args, **kwargs) self.project_instance = project # Limit the list to just projects not marked as complete active_projects = Project.objects.filter(complete=False).order_by( "start_date", "client", "project_type") if active_projects: self.fields[ "project"].empty_label = "-- Select an Active Project --" else: self.fields["project"].empty_label = "-- No Active Projects --" self.fields["project"].queryset = active_projects self.fields["project"].label_from_instance = ( lambda obj: f"{obj.start_date} {obj.client.name} {obj.project_type} ({obj.codename})" ) self.fields["docx_template"].label = "DOCX Template" self.fields["pptx_template"].label = "PPTX Template" # Design form layout with Crispy FormHelper self.helper = FormHelper() self.helper.form_show_labels = True self.helper.form_method = "post" self.helper.form_class = "newitem" self.helper.layout = Layout( "title", "project", HTML(""" <h4 class="icon file-icon">Assign Templates</h4> <hr /> """), Row( Column("docx_template", css_class="form-group col-md-6 mb-0"), Column("pptx_template", css_class="form-group col-md-6 mb-0"), css_class="form-row", ), ButtonHolder( Submit("submit", "Submit", css_class="btn btn-primary col-md-4"), HTML(""" <button onclick="window.location.href='{{ cancel_link }}'" class="btn btn-outline-secondary col-md-4" type="button">Cancel</button> """), ), )
def test_layout_composition(): form_helper = FormHelper() form_helper.add_layout( Layout( Layout( MultiField( "Some company data", "is_company", "email", css_id="multifield_info", ), ), Column( "first_name", # 'last_name', Missing a field on purpose css_id="column_name", css_class="columns", ), ButtonHolder(Submit("Save", "Save", css_class="button white"), ), Div( "password1", "password2", css_id="custom-div", css_class="customdivs", ), )) template = Template(""" {% load crispy_forms_tags %} {% crispy form form_helper %} """) c = Context({"form": SampleForm(), "form_helper": form_helper}) html = template.render(c) assert "multiField" in html assert "formColumn" in html assert 'id="multifield_info"' in html assert 'id="column_name"' in html assert 'class="formColumn columns"' in html assert 'class="buttonHolder">' in html assert 'input type="submit"' in html assert 'name="Save"' in html assert 'id="custom-div"' in html assert 'class="customdivs"' in html assert "last_name" not in html
def test_layout_composition(self): form_helper = FormHelper() form_helper.add_layout( Layout( Layout( MultiField( "Some company data", 'is_company', 'email', css_id="multifield_info", ), ), Column( 'first_name', # 'last_name', Missing a field on purpose css_id="column_name", css_class="columns", ), ButtonHolder(Submit('Save', 'Save', css_class='button white'), ), Div( 'password1', 'password2', css_id="custom-div", css_class="customdivs", ))) template = loader.get_template_from_string(u""" {% load crispy_forms_tags %} {% crispy form form_helper %} """) c = Context({'form': TestForm(), 'form_helper': form_helper}) html = template.render(c) self.assertTrue('multiField' in html) self.assertTrue('formColumn' in html) self.assertTrue('id="multifield_info"' in html) self.assertTrue('id="column_name"' in html) self.assertTrue('class="formColumn columns"' in html) self.assertTrue('class="buttonHolder">' in html) self.assertTrue('input type="submit"' in html) self.assertTrue('name="Save"' in html) self.assertTrue('id="custom-div"' in html) self.assertTrue('class="customdivs"' in html) self.assertFalse('last_name' in html)
def __init__(self, *args, **kwargs): self.request = kwargs.pop('request') super(ReferenceForm, self).__init__(*args, **kwargs) ## can exclude explicitly ## exclude = ('md5',) field_text = [ # (field_name, Field title label, Detailed field description, requiered) ('name', 'Name', 'Regular name for this reference', True), ('isolate_name', 'Isolate name', 'Isolate name for this reference', False), ('reference_fasta', 'Reference (fasta)', 'Reference file in fasta format', True), ('reference_genbank', 'Reference (genBank)', """Reference file in genBank format.<br> Locus designations in the multi-GenBank file must have the same name as in the respective fasta file.<br> If you do not upload a Genbank file, INSaFLU will annotate the upload fasta file for you""", False), ] for x in field_text: self.fields[x[0]].label = x[1] self.fields[x[0]].help_text = x[2] self.fields[x[0]].required = x[3] ## in case you have to undo to specific ID ## cancel_url = reverse('references') ## if self.instance: cancel_url = reverse('references', kwargs={'pk': self.instance.id}) self.helper = FormHelper() self.helper.form_method = 'POST' self.helper.layout = Layout( Div(Div('name', css_class="col-sm-3"), Div('isolate_name', css_class="col-sm-7"), css_class='row'), Div('reference_fasta', css_class='show-for-sr'), Div('reference_genbank', css_class='show-for-sr'), ButtonHolder( Submit('save', 'Save', css_class='btn-primary'), Button('cancel', 'Cancel', css_class='btn-secondary', onclick='window.location.href="{}"'.format( reverse('references')))))