Elements 

Table of content:

The configuration of the element can be set with a table when creating the element

$form->add('my-element', 'text', array('placeholder' => 'My placeholder', 'class' => 'my-css-class'));
Copied!

Or after instanciation

$form->add('my-element', 'text');
$form->get('my-element')->with('placeholder', 'My placeholder');

Copied!

Button 

Classic html button.

You can add a button like this

$form->add('my-button', 'button', $configuration);
Copied!

Available configuration

Property Description Default value Example
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error
label label of the button   click me!
htmllabel true to output the label(s) as HTML false true (trusted labels only, never records or user input)

Captcha 

You can add a captcha like this

$form->add('my-captcha', 'captcha', $configuration);
Copied!

Available configuration

Property Description Default value Example
placeholder place holder for the html tag   Enter the code
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error
errormessage Message if the captcha is not valid Captcha is not valid Captcha is not valid

Checkbox 

You can add a checkbox like this

$form->add('my-checkbox', 'checkbox', $configuration);
Copied!

Available configuration

Property Description Default value Example
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error
items avalaible choice for checkbox   array('1' => 'Item 1', '2' => 'Item 2');
htmllabel true to output the label(s) as HTML false true (trusted labels only, never records or user input)
separator html between the choices   <br />
clausetype search clause type for each value contains contains (relation) or inList (comma separated list)

The value is the list of the checked values (stored as a comma separated list).

Checksingle 

You can add a checksingle (yes/no choice) like this

$form->add('istrue', 'checksingle', $configuration);
Copied!

Available configuration

Property Description Default value Example
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error

Color 

You can add a input color like this. Work only with html5 browser.

$form->add('my-color-field', 'color', $configuration);
Copied!

Available configuration

Property Description Default value Example
placeholder place holder for the html tag   my firstname
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error

Date 

You can add a date like this.

$form->add('birthdate', 'date', $configuration);
Copied!

The value is a \DateTime (or null). It accepts a \DateTimeInterface, a timestamp, a Y-m-d string or an array ['year' => .., 'month' => .., 'day' => ..].

Available configuration

Property Description Default value Example
class css class for the html tags   big
errorclass css class when there is an error   error
widget "choice" (3 select boxes) or "text" (date input) choice text
format-display order of the select boxes (choice widget) ymd dmy, mdy, ymd
input "timestamp" to get a timestamp as value   timestamp

With the choice widget, an empty date displays the current date.

Textdate 

A date rendered as html date input (same as the date element with widget = text). An empty value is rendered empty.

$form->add('startdate', 'textdate', $configuration);

Copied!

Time 

You can add a time like this.

$form->add('meeting', 'time', $configuration);
Copied!

The value is a hh:mm string (empty when no time is given).

Property Description Default value Example
widget "choice" (hour and minute fields) or "text" choice text
minutestep step of the proposed minutes (choice widget) 1 15

Dropdown 

You can add a checkbox like this

$form->add('my-dropdown', 'dropdown', $configuration);
Copied!

Available configuration

Property Description Default value Example
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error
items avalaible choice for checkbox   array('1' => 'Item 1', '2' => 'Item 2') or a repository result ($this->myrepo->findAll())

Email 

You can add a input email like this. Work only with html5 browser.

$form->add('my-email', 'email', $configuration);
Copied!

Available configuration

Property Description Default value Example
placeholder place holder for the html tag   my firstname
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error

hidden 

You can add a input hidden like this.

$form->add('my-hidden-field', 'hidden', $configuration);
Copied!

Available configuration

Property Description Default value Example
placeholder place holder for the html tag   my firstname
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error

Number 

You can add a input hidden like this. Work only with html5 browser.

$form->add('my-number-field', 'number', $configuration);
Copied!

Available configuration

Property Description Default value Example
placeholder place holder for the html tag   my firstname
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error
min minimum number   10
max maximum number   100
step increment step between each number 1 10

Password 

You can add a input password like this.

$form->add('my-password', 'password', $configuration);
Copied!

Available configuration

Property Description Default value Example
placeholder place holder for the html tag   my firstname
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error
encrypt if true, password is encrypt false true
fill_value if true, add current value in html false true

Radio button 

You can add a checkbox like this

$form->add('my-radiobutton', 'radio', $configuration);
Copied!

Available configuration

Property Description Default value Example
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error
items avalaible choice for checkbox   array('1' => 'Item 1', '2' => 'Item 2');
htmllabel true to output the label(s) as HTML false true (trusted labels only, never records or user input)

Range 

You can add a input hidden like this. Work only with html5 browser.

$form->add('my-range-field', 'range', $configuration);
Copied!

Available configuration

Property Description Default value Example
placeholder place holder for the html tag   my firstname
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error
min minimum number   10
max maximum number   100
step increment step between each number 1 10

Radio button 

You can add a rating element like this

$form->add('my-rating', 'rating', $configuration);
Copied!

Available configuration

Property Description Default value Example
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error
min score min 1 10
max score max 5 50
step step between score 1 2
label label of item ★  

ReCaptcha 

You can add a recaptcha like this

$form->add('my-recaptcha', 'recaptcha', $configuration);
Copied!

Available configuration

Property Description Default value Example
publicKey Your api public key (required)    
privateKey Your api private key (required)    
onload The name of your callback function to be executed once all the dependencies have loaded. (optional)    
render Whether to render the widget explicitly. Defaults to onload, which will render the widget in the first g-recaptcha tag it finds. (optional)    
language Forces the widget to render in a specific language. Auto-detects the user's language if unspecified. (optional) Language codes: https://developers.google.com/recaptcha/docs/language en-GB    
theme The color theme of the widget (optional) light dark or light
type The type of CAPTCHA to serve (optional) image audio or image
size The size of the widget (optional) normal compact or normal
tabindex The tabindex of the widget and challenge (optional)    
callback The name of your callback function to be executed when the user submits a successful CAPTCHA response. The user's response, g-recaptcha-response, will be the input for your callback function. (optional)    
expired-callback The name of your callback function to be executed when the recaptcha response expires and the user needs to solve a new CAPTCHA. (optional)    
errormessage Message if the captcha is not valid Captcha is not valid Captcha is not valid

Submit 

You can add a submit button like this

$form->add('my-button', 'submit', $configuration);
Copied!

Available configuration

Property Description Default value Example
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error
label label of the button   click me!

Tel 

An input telephone field

You can add a input tel like this

$form->add('my-tel', 'tel', $configuration);
Copied!

Available configuration

Property Description Default value Example
placeholder place holder for the html tag   Your telephone
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
datalist datalist for autocomplete   array('key-1' => 'value 1', 'key-2' => 'value 2')
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error
pattern regex for field control   ^((+d{1,3}(-| )?(?d)?(-| )?d{1,5})|((?d{2,6})?))(-| )?(d{3,4})(-| )?(d{4})(( x| ext)d{1,5}){0,1}$

Text 

An input text field

You can add a input text like this

$form->add('my-text', 'text', $configuration);
Copied!

Available configuration

Property Description Default value Example
placeholder place holder for the html tag   my firstname
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
datalist datalist for autocomplete   array('key-1' => 'value 1', 'key-2' => 'value 2')
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error

Textarea 

You can add a textarea like this

$form->add('my-textarea', 'textarea', $configuration);
Copied!

Available configuration

Property Description Default value Example
placeholder place holder for the html tag   my firstname
style css style for the html tag   width: 150px;
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error

Upload 

You can add an upload field like this

$form->add('my-file', 'upload', $configuration);
Copied!

Files are first stored outside the public path, in var/transient/ameos_form/upload/, with a random prefix (pending files are displayed by name, without link), and moved to directory with their sanitized original name when the form is valid. Files rejected by a constraint are deleted, abandoned temporary files after 24 hours.

Available configuration

Property Description Default value Example
placeholder place holder for the html tag   my firstname
style css style for the html tag   width: 150px;
title html tag title   my field title
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error
directory target upload directory (required)   fileadmin/user_upload/my_ext/
multiple if true, several files are allowed false true or false
maxSize maximum size of a file 5M 500K, 2M, 1G or a size in bytes
filename target upload file name   my-file.pdf
canoverwrite if true, overwrite existing file   true or false
show_link if true, display an link to the file   true or false

Url 

An input url field

You can add a input url like this

$form->add('my-url', 'url', $configuration);
Copied!

Available configuration

Property Description Default value Example
placeholder place holder for the html tag   Your website
style css style for the html tag   width: 150px;
disabled true if the html field is disabled false true or false
title html tag title   my field title
datalist datalist for autocomplete   array('key-1' => 'value 1', 'key-2' => 'value 2')
custom custom html attribute   customattr="customvalue"
class css class for the html tag   big
errorclass css class when there is an error   error

Custom 

You can also create your own form element.

$form->add('my-custom', 'Vendor\\Extension\\FormElements\\MyElement', $configuration)
Copied!

Your php class must implement :

Ameos\AmeosForm\Elements\ElementInterface
Copied!