Fields overview

TotalContest let you insert multiple fields to collect submission information such image, video, audio, email, name and others from end user. In this article, we will cover available field types.

Available custom fields#

  • Text: Simple text field.
  • Textarea: Text field with multiple lines.
  • Select: A drop down menu.
  • Checkbox: Choices with multiple selection.
  • Radio:¬†Choices with one selection.
  • Image: Image upload.
  • Video: Video upload/url.
  • Audio: Audio upload/url.
  • Category: Category list selection.
  • File: Generic file upload.
  • Richtext: Advanced text field with formatting controls.

Basic settings#

The basic settings are used to define field properties such name, label, default value, options and more.

Custom field basic settings
Custom field basic settings.

Name: The name of the field (i.e. email_address).

Heads up! This must be unique to avoid overlapping between fields.

Label: The title of the field (i.e. Email Address).

Default Value: The initial value of the field.

Validation rules#

Validations rules are essential to avoid spam entries and collect only validated information. These are available validation rules in TotalPoll:

Custom field validation rules
Custom field validation rules.

Filled: The field must be filled (i.e. required).

Email: The field must contain a valid email address (i.e. [email protected]).

Unique: The field value must be unique in the database.

This is a good way to prevent duplication like entering an email address twice for example.

Filter by list: Allow or deny specific words where the input of the user should satisfy.

Filters are processed in the same order as defined.

Regular expression: The field value should satisfy a regular expression.

HTML settings#

Usually, customizing plugin generated markup requires injecting some code but thanks to these settings, you're able to customize it directly from the interface.

Custom field HTML settings
Custom field HTML settings.

Field CSS Classes: You can set CSS classes of the input element (i.e. email-field form-control).

Label CSS Classes: You can set CSS classes of the label (i.e. email-label form-control-label).

Template: You can use {{label}}, {{errors}} and {{field}} variables for customizing the template. Useful for markup customization (i.e. <div class="form-group">{{label}}{{field}}{{errors}}</div>).