class WebpageInlineForm(INSPIREForm): """URL inline form.""" webpage = fields.StringField( label=_('Your Webpage'), placeholder='http://www.example.com', widget=ColumnInput(class_="col-xs-10"), widget_classes="form-control", )
class AuthorInlineForm(INSPIREForm): """Author inline form.""" name = fields.TextField( widget_classes='form-control', widget=ColumnInput(class_="col-xs-6", description="Family name, First name"), # validators=[ # validators.Required(), # ], export_key='full_name', ) affiliation = fields.TextField( autocomplete='affiliation', placeholder='Start typing for suggestions', autocomplete_limit=5, widget_classes='form-control', widget=ColumnInput(class_="col-xs-4 col-pad-0", description="Affiliation"), export_key='affiliation', )
class ExperimentsInlineForm(INSPIREForm): """Experiments inline form.""" name = fields.StringField( placeholder="Experiment. Type for suggestions", label='Experiment', widget=ColumnInput(class_="col-md-6"), widget_classes="form-control", autocomplete="experiment" ) start_year = fields.StringField( placeholder='Start Year', description=u'Format: YYYY.', widget=WrappedInput( wrapped_widget=TextInput(), wrapper='<div class="col-md-6">%(field)s</div>', ), validators=[ LessThan('end_year', message='Start year should be earlier than End year'), RegexpStopValidator( r'^(\d{4})?$', message='{} is not a valid year. Please use <i>yyyy</i> format.', ), ], widget_classes="form-control" ) end_year = fields.StringField( placeholder='End Year', description=u'Format: YYYY.', widget=WrappedInput( wrapped_widget=TextInput(), wrapper='<div class="col-md-6 col-margin-top">%(field)s</div>' ), validators=[ RegexpStopValidator( r'^(\d{4})?$', message='{} is not a valid year. Please use <i>yyyy</i> format.', ), ], widget_classes="form-control" ) current = fields.BooleanField( widget=currentCheckboxWidget )
class ExperimentsInlineForm(INSPIREForm): """Experiments inline form.""" name = fields.StringField( placeholder=_("Experiment. Type for suggestions"), label=_('Experiment'), widget=ColumnInput(class_="col-md-6"), widget_classes="form-control", autocomplete="experiment" ) start_year = fields.StringField( placeholder=_('Start Year'), description=u'Format: YYYY.', widget=WrappedInput(wrapped_widget=TextInput(), wrapper='<div class="col-md-6">%(field)s</div>' ), validators=[RegexpStopValidator( "^(\d{4})?$", message="{} is not a valid year. Please use <i>yyyy</i> format." )], widget_classes="datepicker form-control" ) end_year = fields.StringField( placeholder=_('End Year'), description=u'Format: YYYY.', widget=WrappedInput( wrapped_widget=TextInput(), wrapper='<div class="col-md-6 col-margin-top">%(field)s</div>' ), validators=[RegexpStopValidator( "^(\d{4})?$", message="{} is not a valid year. Please use <i>yyyy</i> format." )], widget_classes="datepicker form-control" ) status = fields.BooleanField( widget=currentCheckboxWidget )
class AdvisorsInlineForm(INSPIREForm): """Advisors inline form.""" name = fields.TextField( widget_classes='form-control', placeholder="Name. Type for suggestions", autocomplete='author', widget=ColumnInput(class_="col-xs-5", description=u"Family name, First name"), export_key='full_name', ) degree_types_schema = load_schema('elements/degree_type.json') degree_type_options = [(val, val.capitalize()) for val in degree_types_schema['enum']] degree_type_options.sort(key=lambda x: x[1]) degree_type = fields.SelectField( choices=degree_type_options, label='Degree Type', widget_classes="form-control", default="phd", widget=ColumnSelect(class_="col-xs-5", description=u"Degree Type"), )
class InstitutionInlineForm(INSPIREForm): """Institution inline form.""" rank_options = [ ("rank", "Rank"), ("SENIOR", "Senior (permanent)"), ("JUNIOR", "Junior (leads to Senior)"), ("STAFF", "Staff (non-research)"), ("VISITOR", "Visitor"), ("PD", "PostDoc"), ("PHD", "PhD"), ("MASTER", "Master"), ("UNDERGRADUATE", "Undergrad"), ("OTHER", "Other"), ] name = fields.StringField( widget_classes='form-control', widget=ColumnInput(class_="col-md-6"), autocomplete='affiliation', placeholder="Institution. Type for suggestions", ) rank = fields.SelectField( choices=rank_options, default="rank", widget=ColumnSelect(class_="col-md-6"), widget_classes='form-control', validators=[validators.DataRequired()], ) start_year = fields.StringField( placeholder='Start Year', description=u'Format: YYYY.', widget=WrappedInput( wrapped_widget=TextInput(), wrapper='<div class="col-md-6 col-margin-top">%(field)s</div>'), validators=[ LessThan('end_year', message='Start year should be earlier than End year'), RegexpStopValidator( r'^(\d{4})?$', message= '{} is not a valid year. Please use <i>yyyy</i> format.', ), ], widget_classes="form-control") end_year = fields.StringField( placeholder='End Year', description=u'Format: YYYY.', widget=WrappedInput( wrapped_widget=TextInput(), wrapper='<div class="col-md-6 col-margin-top">%(field)s</div>'), validators=[ RegexpStopValidator( "^(\d{4})?$", message="{} is not a valid year. Please use <i>yyyy</i> format." ) ], widget_classes="form-control") current = fields.BooleanField(widget=currentCheckboxWidget) emails = fields.FieldList(fields.HiddenField(label=''), widget_classes='hidden-list') old_emails = fields.FieldList(fields.HiddenField(label=''), widget_classes='hidden-list')
class ReportNumberInlineForm(INSPIREForm): """Repor number inline form.""" report_number = fields.TextField(label=_('Report Number'), widget=ColumnInput(class_="col-xs-10"), widget_classes="form-control")