Overview

Namespaces

  • MvcCore
    • Ext
      • Auth
        • Virtual
      • Debug
        • Tracy
      • Form
        • Core
        • Validators
      • Request
      • Router
        • Lang
      • View
        • Helpers
  • None

Classes

  • Base
  • Configuration
  • Field
  • FieldGroup
  • Helpers
  • Validator
  • View

Exceptions

  • Exception
  • Overview
  • Namespace
  • Class
  • Tree

Class Configuration

MvcCore\Ext\Form\Core\Base
Extended by MvcCore\Ext\Form\Core\Configuration

Direct known subclasses

MvcCore\Ext\Form

Indirect known subclasses

MvcCore\Ext\Auth\SignInForm, MvcCore\Ext\Auth\SignOutForm, MvcCore\Ext\Auth\Virtual\Form
Abstract
Namespace: MvcCore\Ext\Form\Core
Located at ext-form/src/MvcCore/Ext/Form/Core/Configuration.php
Methods summary
public static
# AddCsrfErrorHandler( callable $handler )

Add cross site request forgery error handler. By CSRF error by submitting process there shoud be called queue of those handlers, for example to deauthenticate the user or anything else to secure your app more.

Add cross site request forgery error handler. By CSRF error by submitting process there shoud be called queue of those handlers, for example to deauthenticate the user or anything else to secure your app more.

Parameters

$handler
public MvcCore\Ext\Form
# AddCss( string $cssFile = '' )

Add supporting css files.

Add supporting css files.

Parameters

$cssFile
supporting css file relative path

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# AddCssClass( string $cssClass = '' )

Add css class (or classes separated by space) and add new value(s) after previous css class(es) attribute values. Value is used for standard css class attribute for HTML form tag.

Add css class (or classes separated by space) and add new value(s) after previous css class(es) attribute values. Value is used for standard css class attribute for HTML form tag.

Parameters

$cssClass

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# AddJs( string $jsFile = '', string $jsClass = 'MvcCoreForm.FieldType', array $jsConstructorParams = array() )

Add supporting javascript files configuration.

Add supporting javascript files configuration.

Parameters

$jsFile
supporting javascript file relative path
$jsClass
supporting javascript full class name inside supporting file
$jsConstructorParams
supporting javascript constructor params

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetAction( string $url = '' )

Set form submitting url value. Should be relative or absolute, anything tn complete classic html form attribute action.

Set form submitting url value. Should be relative or absolute, anything tn complete classic html form attribute action.

Parameters

$url

Returns

MvcCore\Ext\Form

Requires

public MvcCore\Ext\Form
# SetAttributes( array $attributes = array() )

Set form html element additional attributes. To add any other attribute for html

<

form> element, set here key/value array, keys will be used as attribute names, values as attribute values, simple. All previously configured additional attributes will be replaced by this function call.

Set form html element additional attributes. To add any other attribute for html

<

form> element, set here key/value array, keys will be used as attribute names, values as attribute values, simple. All previously configured additional attributes will be replaced by this function call.

Parameters

$attributes

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetCss( array $cssFiles = array() )

Set supporting css files. All previously configured supporting css files will be replaced. Set it as array with all necessary css file paths to add into html response after form is rendered by contained fields. Every record in this field has defined: - supporting css file relative path

Set supporting css files. All previously configured supporting css files will be replaced. Set it as array with all necessary css file paths to add into html response after form is rendered by contained fields. Every record in this field has defined: - supporting css file relative path

Parameters

$cssFiles

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetCssClass( string $cssClass = '' )

Set form html element css class attribute value. To specify more css classes - add more strings separated by space and overwrite any previous css class attribute value. Value is used for standard css class attribute for HTML form tag.

Set form html element css class attribute value. To specify more css classes - add more strings separated by space and overwrite any previous css class attribute value. Value is used for standard css class attribute for HTML form tag.

Parameters

$cssClass

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetCssRenderer( callable $cssRenderer )

Set css external files renderer. If any callable is set, it has to accept first param to be SplFileInfo about extenal support css file. Css renderer must add supporting css file only once into html output result in any custom way, it is it's responsibility.

Set css external files renderer. If any callable is set, it has to accept first param to be SplFileInfo about extenal support css file. Css renderer must add supporting css file only once into html output result in any custom way, it is it's responsibility.

Parameters

$cssRenderer

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetDefaults( array $defaults = array(), boolean $keysInsensitive = FALSE )

Set multiple fields values by key/value array. For each key in $defaults array, library try to find form control with the same name as array key and that control value is set to array value. Only data with existing fields by keys are setted into field values. Values are setted by keys keys sensitively by default.

Set multiple fields values by key/value array. For each key in $defaults array, library try to find form control with the same name as array key and that control value is set to array value. Only data with existing fields by keys are setted into field values. Values are setted by keys keys sensitively by default.

Parameters

$defaults
key value array with data to set as values into fields by keys
$keysInsensitive
if true, set up properties from $data with case insensivity

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetEnctype( string $enctype = '' )

Set form enctype attribute - how the form values should be encoded when submitting it to the server. 'application/x-www-form-urlencoded' by default, it means all form values will be encoded to key1=value1&key2=value2... string.

Set form enctype attribute - how the form values should be encoded when submitting it to the server. 'application/x-www-form-urlencoded' by default, it means all form values will be encoded to key1=value1&key2=value2... string.

Parameters

$enctype

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetErrorsRenderMode( mixed $errorsRenderMode = \MvcCore\Ext\Form::ERROR_RENDER_MODE_ALL_TOGETHER )

Set errors rendering mode, by default configured as string: 'all-together', It means all errors are rendered naturaly at form begin together in one html div.errors element. If you are using custom template for form - you have to call after form beginning: $this->RenderErrors(); to get all errors into template.

Set errors rendering mode, by default configured as string: 'all-together', It means all errors are rendered naturaly at form begin together in one html div.errors element. If you are using custom template for form - you have to call after form beginning: $this->RenderErrors(); to get all errors into template.

Parameters

$errorsRenderMode

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetErrorUrl( string $url = '' )

Set error url string, relative or absolute, to specify, where user will be redirected after form will not be submitted successfully. It's not required to use \MvcCore\Ext\Form like this, but if you want to use method $form->RedirectAfterSubmit(); at the end of custom Submit method implementation, you need to specify at least success and error url strings.

Set error url string, relative or absolute, to specify, where user will be redirected after form will not be submitted successfully. It's not required to use \MvcCore\Ext\Form like this, but if you want to use method $form->RedirectAfterSubmit(); at the end of custom Submit method implementation, you need to specify at least success and error url strings.

Parameters

$url

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetFieldsDefaultRenderMode( string $fieldsDefaultRenderMode = \MvcCore\Ext\Form::FIELD_RENDER_MODE_NORMAL )

Det default control/label rendering mode for each form control/label. Default configured value by default is string 'normal', it means label will be rendered before control, only for checkbox and radio button label will be rendered after control.

Det default control/label rendering mode for each form control/label. Default configured value by default is string 'normal', it means label will be rendered before control, only for checkbox and radio button label will be rendered after control.

Parameters

$fieldsDefaultRenderMode

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetId( string $id = '' )

Set form id, required to configure. Form Id us used to identify session data, error messages, csrf tokens, html form attribute id value and much more.

Set form id, required to configure. Form Id us used to identify session data, error messages, csrf tokens, html form attribute id value and much more.

Parameters

$id

Returns

MvcCore\Ext\Form

Requires

public MvcCore\Ext\Form
# SetJs( array $jsFilesClassesAndConstructorParams = array() )

Set supporting javascript files configuration. All previously configured supporting javascripts will be replaced. Set it as array with all necessary javascript contructors and file paths to add into html response after form is rendered by contained fields. Every record in this field has to be defined as array with: 0 - string - supporting javascript file relative path 1 - string - supporting javascript full class name inside supporting file 2 - array - supporting javascript constructor params

Set supporting javascript files configuration. All previously configured supporting javascripts will be replaced. Set it as array with all necessary javascript contructors and file paths to add into html response after form is rendered by contained fields. Every record in this field has to be defined as array with: 0 - string - supporting javascript file relative path 1 - string - supporting javascript full class name inside supporting file 2 - array - supporting javascript constructor params

Parameters

$jsFilesClassesAndConstructorParams

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetJsRenderer( callable $jsRenderer )

Set javascript external files renderer. If any callable is set, it has to accept first param to be SplFileInfo about extenal supporting javascript file. Javascript renderer has to add supporting javascript file only once into html output result in any custom way, it is it's responsibility.

Set javascript external files renderer. If any callable is set, it has to accept first param to be SplFileInfo about extenal supporting javascript file. Javascript renderer has to add supporting javascript file only once into html output result in any custom way, it is it's responsibility.

Parameters

$jsRenderer

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetLang( string $lang = '' )

Set $form->Lang, usualy used to complete optional translator language argument automaticly. If you are operating in multilanguage project and you want to use translator in \MvcCore\Ext\Form, set $form->Lang property to desired language code you want to translate every visible text into it. Use this property with $form->Translator and $form->Translate properties;

Set $form->Lang, usualy used to complete optional translator language argument automaticly. If you are operating in multilanguage project and you want to use translator in \MvcCore\Ext\Form, set $form->Lang property to desired language code you want to translate every visible text into it. Use this property with $form->Translator and $form->Translate properties;

Parameters

$lang

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetLocale( string $locale = '' )

Set $form->Locale, usualy used to create proper validator for zip codes, currencies etc... If you are operating in multilanguage project and you want to use form field validators for locale specific needs in \MvcCore\Ext\Form, set $form->Locale property to desired international locale code you want to use proper validator functionality.

Set $form->Locale, usualy used to create proper validator for zip codes, currencies etc... If you are operating in multilanguage project and you want to use form field validators for locale specific needs in \MvcCore\Ext\Form, set $form->Locale property to desired international locale code you want to use proper validator functionality.

Parameters

$locale

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetMethod( string $method = '' )

Set form http submitting method. 'post' by default.

Set form http submitting method. 'post' by default.

Parameters

$method

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetNextStepUrl( string $url = '' )

Set next step url string, relative or absolute, to specify, where user will be redirected after form will be submitted successfully and submit button will be recognized to switch $form->Result value to value 2, which means next step redirection after successfull submit. This functionality to switch to value 2 is up to you. This field is designed only for you as empty. It's not required to use \MvcCore\Ext\Form like this, but if you want to use method $form->RedirectAfterSubmit(); at the end of custom Submit method implementation, and you want to go to next step by one button or stay in the same page by another form submit button, this is very good and comfortable pattern.

Set next step url string, relative or absolute, to specify, where user will be redirected after form will be submitted successfully and submit button will be recognized to switch $form->Result value to value 2, which means next step redirection after successfull submit. This functionality to switch to value 2 is up to you. This field is designed only for you as empty. It's not required to use \MvcCore\Ext\Form like this, but if you want to use method $form->RedirectAfterSubmit(); at the end of custom Submit method implementation, and you want to go to next step by one button or stay in the same page by another form submit button, this is very good and comfortable pattern.

Parameters

$url

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetRequired( boolean $required = TRUE )

Default required attribute for all fields in form. It this global required setter is configured to TRUE, every field with no required configuration after adding into form instance is configured automaticly by this efault property as required. Default values is FALSE, means not required fields in all forms by default.

Default required attribute for all fields in form. It this global required setter is configured to TRUE, every field with no required configuration after adding into form instance is configured automaticly by this efault property as required. Default values is FALSE, means not required fields in all forms by default.

Parameters

$required

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetSuccessUrl( string $url = '' )

Set success url string, relative or absolute, to specify, where user will be redirected after form will be submitted successfully. It's required to use \MvcCore\Ext\Form like this, but if you want to use method $form->RedirectAfterSubmit();, at the end of custom Submit method implementation, you need to specify at least success and error url strings.

Set success url string, relative or absolute, to specify, where user will be redirected after form will be submitted successfully. It's required to use \MvcCore\Ext\Form like this, but if you want to use method $form->RedirectAfterSubmit();, at the end of custom Submit method implementation, you need to specify at least success and error url strings.

Parameters

$url

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetTemplatePath( string $path = '' )

Set form custom template relative path without .phtml extension. By default $form->TemplatePath is an empty string, which means there will be used no template and form will be rendered naturaly, one field by one without any breaking line html element. If there is any path defined, it has to be defined relatively from directory '/App/Views/Scripts' to desired template.

Set form custom template relative path without .phtml extension. By default $form->TemplatePath is an empty string, which means there will be used no template and form will be rendered naturaly, one field by one without any breaking line html element. If there is any path defined, it has to be defined relatively from directory '/App/Views/Scripts' to desired template.

Parameters

$path

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetTemplateTypePath( string $typePath = '' )

Set $form->TemplateTypePath property, where current form templates will be located. By default, all form templates are located in '/App/Views/Scripts', if you want to change it, you can set this property for example to 'Forms' to define base directory for form templates to /App/Views/Forms' or by defining this property to '../Forms' to '/App/Forms' etc...

Set $form->TemplateTypePath property, where current form templates will be located. By default, all form templates are located in '/App/Views/Scripts', if you want to change it, you can set this property for example to 'Forms' to define base directory for form templates to /App/Views/Forms' or by defining this property to '../Forms' to '/App/Forms' etc...

Parameters

$typePath

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetTranslate( boolean $translate = TRUE )

Set TRUE to translate everything visible in form. Control placeholders, label texts and error messages. If you are configuring your form to be translated, there is also necessary to set $form->Translator callable to translate everything with it by method $form->SetTranslator();. Default values is NULL, means no translations will be processed it no Translator callable is set.

Set TRUE to translate everything visible in form. Control placeholders, label texts and error messages. If you are configuring your form to be translated, there is also necessary to set $form->Translator callable to translate everything with it by method $form->SetTranslator();. Default values is NULL, means no translations will be processed it no Translator callable is set.

Parameters

$translate

Returns

MvcCore\Ext\Form
public MvcCore\Ext\Form
# SetTranslator( callable $translator = null )

Set translator callable to translate everything visible in form. Handler is necessary to design with first param to be a translation key, second param to be a language code and ahdler has to return translated string result. This property is optional to configure but if it is configured to any callable, everything in form will be translated, except fields strictly defined to not translate. Default values is NULL, means no translations will be processed.

Set translator callable to translate everything visible in form. Handler is necessary to design with first param to be a translation key, second param to be a language code and ahdler has to return translated string result. This property is optional to configure but if it is configured to any callable, everything in form will be translated, except fields strictly defined to not translate. Default values is NULL, means no translations will be processed.

Parameters

$translator
$handler

Returns

MvcCore\Ext\Form
Methods inherited from MvcCore\Ext\Form\Core\Base
absolutizeAssetPath(), cleanUpRenderIfNecessary(), completeAssets(), getRequestPath(), prepareRenderIfNecessary(), renderAssetFile(), submitField(), submitFields()
Constants summary
string METHOD_GET

Form http submitting method ('get').

Form http submitting method ('get').

# 'get'
string METHOD_POST

Form http submitting method ('post').

Form http submitting method ('post').

# 'post'
string METHOD_HEAD

Form http submitting method ('head').

Form http submitting method ('head').

# 'head'
string METHOD_PUT

Form http submitting method ('put').

Form http submitting method ('put').

# 'put'
string METHOD_PATCH

Form http submitting method ('patch').

Form http submitting method ('patch').

# 'patch'
string METHOD_TRACE

Form http submitting method ('trace').

Form http submitting method ('trace').

# 'trace'
string METHOD_OPTIONS

Form http submitting method ('options').

Form http submitting method ('options').

# 'options'
string METHOD_CONNECT

Form http submitting method ('connect').

Form http submitting method ('connect').

# 'connect'
string METHOD_DELETE

Form http submitting method ('delete').

Form http submitting method ('delete').

# 'delete'
string ENCTYPE_URLENCODED

Form enctype attribute value 'application/x-www-form-urlencoded', By submitting - all form values will be encoded to key1=value1&key2=value2&... string. This enctype type is used for all \MvcCore\Ext\Form(s) by default.

Form enctype attribute value 'application/x-www-form-urlencoded', By submitting - all form values will be encoded to key1=value1&key2=value2&... string. This enctype type is used for all \MvcCore\Ext\Form(s) by default.

# 'application/x-www-form-urlencoded'
string ENCTYPE_MULTIPART

Form enctype attribute value 'multipart/form-data', By submitting - no characters will be encoded. This value is required when you are using forms that have a file upload control.

Form enctype attribute value 'multipart/form-data', By submitting - no characters will be encoded. This value is required when you are using forms that have a file upload control.

# 'multipart/form-data'
string ENCTYPE_PLAINTEXT

Form enctype attribute value 'application/x-www-form-urlencoded', By submitting - spaces will be converted to "+" symbols, but no special characters will be encoded.

Form enctype attribute value 'application/x-www-form-urlencoded', By submitting - spaces will be converted to "+" symbols, but no special characters will be encoded.

# 'text/plain'
string HTML_IDS_DELIMITER

Html id attributes delimiter, used for form controls to complete it's ids as _

Html id attributes delimiter, used for form controls to complete it's ids as _

# '_'
string EQUAL

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':equal'
string NOT_EQUAL

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':notEqual'
string REQUIRED

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':required'
string INVALID_FORMAT

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':invalidFormat'
string INVALID_CHARS

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':invalidChars'
string EMPTY_CONTENT

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':empty'
string CSRF

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':csrf'
string MIN_LENGTH

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':minLength'
string MAX_LENGTH

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':maxLength'
string LENGTH

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':length'
string EMAIL

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':email'
string URL

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':url'
string NUMBER

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':number'
string INTEGER

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':integer'
string FLOAT

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':float'
string DATE

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':date'
string DATE_TO_LOW

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':dateToLow'
string DATE_TO_HIGH

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':dateToHigh'
string TIME

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':time'
string TIME_TO_LOW

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':timeToLow'
string TIME_TO_HIGH

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':timeToHigh'
string DATETIME

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':datetime'
string PHONE

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':phone'
string ZIP_CODE

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':zipCode'
string TAX_ID

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':taxId'
string VAT_ID

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':varId'
string GREATER

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':greater'
string LOWER

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':lower'
string RANGE

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':range'
string MAX_FILE_SIZE

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':fileSize'
string MAX_POST_SIZE

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':maxPostSize'
string IMAGE

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':image'
string MIME_TYPE

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':mimeType'
string VALID

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':valid'
string CHOOSE_MIN_OPTS

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':chooseMinOpts'
string CHOOSE_MAX_OPTS

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':chooseMaxOpts'
string CHOOSE_MIN_OPTS_BUBBLE

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':chooseMinOptsBubble'
string CHOOSE_MAX_OPTS_BUBBLE

Constants used internaly and mostly in validator classes to specify proper error message index.

Constants used internaly and mostly in validator classes to specify proper error message index.

# ':chooseMaxOptsBubble'
integer RESULT_ERRORS

Form submit result state (0 - error happend). Submit was not successful,there was an error/errors.

Form submit result state (0 - error happend). Submit was not successful,there was an error/errors.

# 0
integer RESULT_SUCCESS

Form submit result state (1 - everything ok). Submit was successful, no error happend.

Form submit result state (1 - everything ok). Submit was successful, no error happend.

# 1
integer RESULT_NEXT_PAGE

Form submit result state (2 - everything ok, next step). Submit was successful, no error happend and one of submittin button is control to indicate that we can go to next step in multiple forms wizzard (typicly eshop ordering).

Form submit result state (2 - everything ok, next step). Submit was successful, no error happend and one of submittin button is control to indicate that we can go to next step in multiple forms wizzard (typicly eshop ordering).

# 2
string FIELD_RENDER_MODE_NORMAL

Control/labels rendering mode ('normal'). Label will be rendered before control, only for checkbox and radio button label will be rendered after control.

Control/labels rendering mode ('normal'). Label will be rendered before control, only for checkbox and radio button label will be rendered after control.

# 'normal'
string FIELD_RENDER_MODE_NO_LABEL

Control/labels rendering mode ('no-label'). No label will be rendered with control.

Control/labels rendering mode ('no-label'). No label will be rendered with control.

# 'no-label'
string FIELD_RENDER_MODE_LABEL_AROUND

Control/labels rendering mode ('label-around'). Label will be rendered around control.

Control/labels rendering mode ('label-around'). Label will be rendered around control.

# 'label-around'
string ERROR_RENDER_MODE_ALL_TOGETHER

Control errors rendering mode ('all-together'). All errors are rendered naturaly at form begin together in one html div element. If you are using custom template for form - you have to call after form beginning $this->RenderErrors(); to get all errors into template. This value is used as default for all \MvcCore\Ext\Form(s).

Control errors rendering mode ('all-together'). All errors are rendered naturaly at form begin together in one html div element. If you are using custom template for form - you have to call after form beginning $this->RenderErrors(); to get all errors into template. This value is used as default for all \MvcCore\Ext\Form(s).

# 'all-together'
string ERROR_RENDER_MODE_BEFORE_EACH_CONTROL

Control errors rendering mode ('before-each-control'). If there will be any error, it will be rendered as single span.errors before current form control with single or multiple span.error elements inside, by errors count for current form control. It will be rendered in natural form rendering mode without template but also in custom form rendering mode with template if you call anytime in template $field->RenderLabelAndControl(); If you will use in custom form rendering mod with template method $field->RenderControl();, there will be not rendered any error spans before control, you have to use $field->RenderErrors(); to get errors for each control.

Control errors rendering mode ('before-each-control'). If there will be any error, it will be rendered as single span.errors before current form control with single or multiple span.error elements inside, by errors count for current form control. It will be rendered in natural form rendering mode without template but also in custom form rendering mode with template if you call anytime in template $field->RenderLabelAndControl(); If you will use in custom form rendering mod with template method $field->RenderControl();, there will be not rendered any error spans before control, you have to use $field->RenderErrors(); to get errors for each control.

# 'before-each-control'
string ERROR_RENDER_MODE_AFTER_EACH_CONTROL

Control errors rendering mode ('after-each-control'). If there will be any error, it will be rendered as single span.errors after current form control with single or multiple span.error elements inside, by errors count for current form control. It will be rendered in natural form rendering mode without template but also in custom form rendering mode with template if you call anytime in template $field->RenderLabelAndControl(); If you will use in custom form rendering mod with template method $field->RenderControl();, there will be not rendered any error spans before control, you have to use $field->RenderErrors(); to get errors for each control.

Control errors rendering mode ('after-each-control'). If there will be any error, it will be rendered as single span.errors after current form control with single or multiple span.error elements inside, by errors count for current form control. It will be rendered in natural form rendering mode without template but also in custom form rendering mode with template if you call anytime in template $field->RenderLabelAndControl(); If you will use in custom form rendering mod with template method $field->RenderControl();, there will be not rendered any error spans before control, you have to use $field->RenderErrors(); to get errors for each control.

# 'after-each-control'
Properties summary
public static array $DefaultMessages

Default not translated error messages with replacements for control names and more specific info to tell the user.

Default not translated error messages with replacements for control names and more specific info to tell the user.

# array( self::EQUAL => "Field '{0}' requires exact value: '{1}'.", self::NOT_EQUAL => "Value for field '{0}' should not be '{1}'.", self::REQUIRED => "Field '{0}' is required.", self::INVALID_FORMAT => "Field '{0}' has invalid format ('{1}').", self::INVALID_CHARS => "Field '{0}' contains invalid characters.", self::EMPTY_CONTENT => "Sent data are empty.", self::CSRF => "Form hash expired, please submit the form again.", self::MIN_LENGTH => "Field '{0}' requires at least {1} characters.", self::MAX_LENGTH => "Field '{0}' requires no more than {1} characters.", self::LENGTH => "Field '{0}' requires a value between {1} and {2} characters long.", self::EMAIL => "Field '{0}' requires a valid email address.", self::URL => "Field '{0}' requires a valid URL.", self::NUMBER => "Field '{0}' requires a valid number.", self::INTEGER => "Field '{0}' requires a valid integer.", self::FLOAT => "Field '{0}' requires a valid float number.", self::DATE => "Field '{0}' requires a valid date format: '{1}'.", self::DATE_TO_LOW => "Field '{0}' requires date higher or equal to '{1}'.", self::DATE_TO_HIGH => "Field '{0}' requires date lower or equal to '{1}'.", self::TIME => "Field '{0}' requires a valid time format: '00:00 - 23:59'.", self::TIME_TO_LOW => "Field '{0}' requires time higher or equal to '{1}'.", self::TIME_TO_HIGH => "Field '{0}' requires time lower or equal to '{1}'.", self::DATETIME => "Field '{0}' requires a valid date time format: '{1}'.", self::PHONE => "Field '{0}' requires a valid phone number.", self::ZIP_CODE => "Field '{0}' requires a valid zip code.", self::TAX_ID => "Field '{0}' requires a valid TAX ID.", self::VAT_ID => "Field '{0}' requires a valid VAR ID.", self::GREATER => "Field '{0}' requires a value greater than {1}.", self::LOWER => "Field '{0}' requires a value lower than {1}.", self::RANGE => "Field '{0}' requires a value between {1} and {2}.", self::MAX_FILE_SIZE => "The size of the uploaded file can be up to {0} bytes.", self::MAX_POST_SIZE => "The uploaded data exceeds the limit of {0} bytes.", self::IMAGE => "The uploaded file has to be image in format JPEG, GIF or PNG.", self::MIME_TYPE => "The uploaded file is not in the expected file format.", self::VALID => "Field '{0}' requires a valid option.", self::CHOOSE_MIN_OPTS => "Field '{0}' requires at least {1} chosen option(s) at minimal.", self::CHOOSE_MAX_OPTS => "Field '{0}' requires {1} of the selected option(s) at maximum.", self::CHOOSE_MIN_OPTS_BUBBLE=> "Please select at least {0} options as minimal.", self::CHOOSE_MAX_OPTS_BUBBLE=> "Please select up to {0} options at maximum.", )
public MvcCore\Controller|mixed $Controller

Controller object, always passed and required as first argument through \MvcCore\Ext\Form::__constructor($controller) method.

Controller object, always passed and required as first argument through \MvcCore\Ext\Form::__constructor($controller) method.

Requires

# null
public MvcCore\Ext\Form\Core\View|mixed $View

Form view, object container with variables from local context to render in template. Created automaticly inside \MvcCore\Ext\Form before each rendering process.

Form view, object container with variables from local context to render in template. Created automaticly inside \MvcCore\Ext\Form before each rendering process.

# NULL
public string $Id

Form id, required to configure. Used to identify session data, error messages, csrf tokens, html form attribute id value and much more.

Form id, required to configure. Used to identify session data, error messages, csrf tokens, html form attribute id value and much more.

Requires

# ''
public string $Action

Form submitting url value. Should be relative or absolute, anything to complete classic html form attribute action.

Form submitting url value. Should be relative or absolute, anything to complete classic html form attribute action.

Requires

# ''
public string $Method

Form http submitting method. 'post' by default.

Form http submitting method. 'post' by default.

# self::METHOD_POST
public string $Enctype

Form enctype attribute - how the form values should be encoded when submitting it to the server. 'application/x-www-form-urlencoded' by default, it means all form values will be encoded to key1=value1&key2=value2... string.

Form enctype attribute - how the form values should be encoded when submitting it to the server. 'application/x-www-form-urlencoded' by default, it means all form values will be encoded to key1=value1&key2=value2... string.

# self::ENCTYPE_URLENCODED
public string $Lang

Field to complete optional translator language argument automaticly. If you are operating in multilanguage project and you want to use translator in \MvcCore\Ext\Form, set this Lang property to desired language code you want to translate every visible text into it. Use this property with $form->Translator and $form->Translate properties;

Field to complete optional translator language argument automaticly. If you are operating in multilanguage project and you want to use translator in \MvcCore\Ext\Form, set this Lang property to desired language code you want to translate every visible text into it. Use this property with $form->Translator and $form->Translate properties;

# ''
public string $Locale

Field to create proper validator for zip codes, currencies etc... If you are operating in multilanguage project and you want to use form field validators for locale specific needs in \MvcCore\Ext\Form, set $form->Locale property to desired international locale code you want to use proper validator functionality.

Field to create proper validator for zip codes, currencies etc... If you are operating in multilanguage project and you want to use form field validators for locale specific needs in \MvcCore\Ext\Form, set $form->Locale property to desired international locale code you want to use proper validator functionality.

# ''
public string $CssClass

Form html element css class attribute value. To specify more css classes - add more strings separated by space.

Form html element css class attribute value. To specify more css classes - add more strings separated by space.

# ''
public array $Attributes

Form html element additional attributes. To add any other attribute for html

<

form> element, assert here key/value array, keys will be used as attribute names, values as attribute values, simple.

Form html element additional attributes. To add any other attribute for html

<

form> element, assert here key/value array, keys will be used as attribute names, values as attribute values, simple.

# array()
public string $SuccessUrl

Url string, relative or absolute, to specify, where user will be redirected after form will be submitted successfully. It's required to use \MvcCore\Ext\Form like this, but if you want to use method $form->RedirectAfterSubmit();, at the end of custom Submit method implementation, you need to specify at least success and error url strings.

Url string, relative or absolute, to specify, where user will be redirected after form will be submitted successfully. It's required to use \MvcCore\Ext\Form like this, but if you want to use method $form->RedirectAfterSubmit();, at the end of custom Submit method implementation, you need to specify at least success and error url strings.

# ''
public string $NextStepUrl

Url string, relative or absolute, to specify, where user will be redirected after form will be submitted successfully and submit button will be recognized to switch $form->Result value to value 2, which means next step redirection after successfull submit. This functionality to switch to value 2 is up to you. This field is designed only for you as empty. It's not required to use \MvcCore\Ext\Form like this, but if you want to use method $form->RedirectAfterSubmit(); at the end of custom Submit method implementation, and you want to go to next step by one button or stay in the same page by another form submit button, this is very good and comfortable pattern. to use it like this.

Url string, relative or absolute, to specify, where user will be redirected after form will be submitted successfully and submit button will be recognized to switch $form->Result value to value 2, which means next step redirection after successfull submit. This functionality to switch to value 2 is up to you. This field is designed only for you as empty. It's not required to use \MvcCore\Ext\Form like this, but if you want to use method $form->RedirectAfterSubmit(); at the end of custom Submit method implementation, and you want to go to next step by one button or stay in the same page by another form submit button, this is very good and comfortable pattern. to use it like this.

# ''
public string $ErrorUrl

Url string, relative or absolute, to specify, where user will be redirected after form will not be submitted successfully. It's not required to use \MvcCore\Ext\Form like this, but if you want to use method $form->RedirectAfterSubmit(); at the end of custom Submit method implementation, you need to specify at least success and error url strings.

Url string, relative or absolute, to specify, where user will be redirected after form will not be submitted successfully. It's not required to use \MvcCore\Ext\Form like this, but if you want to use method $form->RedirectAfterSubmit(); at the end of custom Submit method implementation, you need to specify at least success and error url strings.

# ''
public integer $Result

Form submit result state (by default - 1 - everything ok). Submit was successful, no error happend.

Form submit result state (by default - 1 - everything ok). Submit was successful, no error happend.

# self::RESULT_SUCCESS
public boolean $Translate

If true, every form control placeholder, label content and error message will be translated to $form->Lang value translation fraze. If false, nothing will be translated. If null, nothing configured yet. Null is for internal purposes.

If true, every form control placeholder, label content and error message will be translated to $form->Lang value translation fraze. If false, nothing will be translated. If null, nothing configured yet. Null is for internal purposes.

# NULL
public callable $Translator

Translator callable (should be closure function or array with classname/instance and method name string). First argument of callable object has to be a translation key and second argument has to be a language string ('en', 'de' ...) to translate the key into. result of callable object has to be a string - translated key to called language.

Translator callable (should be closure function or array with classname/instance and method name string). First argument of callable object has to be a translation key and second argument has to be a language string ('en', 'de' ...) to translate the key into. result of callable object has to be a string - translated key to called language.

# NULL
public boolean $Required

Default switch how to set every form control to be required by default. If you define directly any control to not be required, it will not be required. This is only value used as default for not strictly defined require values in controls.

Default switch how to set every form control to be required by default. If you define directly any control to not be required, it will not be required. This is only value used as default for not strictly defined require values in controls.

# FALSE
public MvcCore\Ext\Form\Core\Field[] $Fields

Every form control after it is added by $form->AddField() method is added under it's name into this public array fith all form fields except csrf input:hidden. Fields are rendered by order in this array.

Every form control after it is added by $form->AddField() method is added under it's name into this public array fith all form fields except csrf input:hidden. Fields are rendered by order in this array.

# array()
public array $Data

Form submited data from client. After $form->Submit() has been called, data are clean and ready to use if $form->Result is in success state.

Form submited data from client. After $form->Submit() has been called, data are clean and ready to use if $form->Result is in success state.

# array()
public array $Errors

If any configured error happends by $form->Submit() process, it's stored in this array. Every record in this array is array with first item to be an error message string. If the error is for specific field name, there is also a second item - field name. Errors array has normal numeric keys.

If any configured error happends by $form->Submit() process, it's stored in this array. Every record in this array is array with first item to be an error message string. If the error is for specific field name, there is also a second item - field name. Errors array has normal numeric keys.

# array()
public string $FieldsDefaultRenderMode

Default control/label rendering mode for each form control/label. Default values is string 'normal', it means label will be rendered before control, only for checkbox and radio button label will be rendered after control.

Default control/label rendering mode for each form control/label. Default values is string 'normal', it means label will be rendered before control, only for checkbox and radio button label will be rendered after control.

# self::FIELD_RENDER_MODE_NORMAL
public string $ErrorsRenderMode

Errors rendering mode, by default configured as string: 'all-together', It means all errors are rendered naturaly at form begin together in one html div.errors element. If you are using custom template for form - you have to call after form beginning: $this->RenderErrors(); to get all errors into template.

Errors rendering mode, by default configured as string: 'all-together', It means all errors are rendered naturaly at form begin together in one html div.errors element. If you are using custom template for form - you have to call after form beginning: $this->RenderErrors(); to get all errors into template.

# self::ERROR_RENDER_MODE_ALL_TOGETHER
public string $TemplatePath

Form custom template relative path without .phtml extension. By default it's an empty string, which means there will be used no template and form will be rendered naturaly, one field by one without any breaking line html element. If there is any path defined, it has to be defined relatively from directory '/App/Views/Scripts' to desired template.

Form custom template relative path without .phtml extension. By default it's an empty string, which means there will be used no template and form will be rendered naturaly, one field by one without any breaking line html element. If there is any path defined, it has to be defined relatively from directory '/App/Views/Scripts' to desired template.

# ''
public string $TemplateTypePath

Property to change template type path, where form templates will be located. By default, all form templates are located in '/App/Views/Scripts', if you want to change it, you can set this property for example to 'Forms' to define base directory for form templates to /App/Views/Forms' or by defining this property to '../Forms' to '/App/Forms' etc...

Property to change template type path, where form templates will be located. By default, all form templates are located in '/App/Views/Scripts', if you want to change it, you can set this property for example to 'Forms' to define base directory for form templates to /App/Views/Forms' or by defining this property to '../Forms' to '/App/Forms' etc...

# 'Scripts'
public array $Js

Array with all necessary javascript contructors and file paths to add into html response after form is rendered by contained fields. Every record in this field has defined: - string - supporting javascript file relative path - string - supporting javascript full class name inside supporting file - array - supporting javascript constructor params

Array with all necessary javascript contructors and file paths to add into html response after form is rendered by contained fields. Every record in this field has defined: - string - supporting javascript file relative path - string - supporting javascript full class name inside supporting file - array - supporting javascript constructor params

# array()
public array $Css

Array with all necessary css file paths to add into html response after form is rendered by contained fields. Every record in this field has defined: - string - supporting javascript file relative path - string - supporting javascript full class name inside supporting file - array - supporting javascript constructor params

Array with all necessary css file paths to add into html response after form is rendered by contained fields. Every record in this field has defined: - string - supporting javascript file relative path - string - supporting javascript full class name inside supporting file - array - supporting javascript constructor params

# array()
public string $JsBaseFile

If there is necessary to add after form into html response any supported javascript, there is necessary also to add base supporting form javascript - this is relative path where it is located.

If there is necessary to add after form into html response any supported javascript, there is necessary also to add base supporting form javascript - this is relative path where it is located.

# '__MVCCORE_FORM_DIR__/mvccore-form.js'
public callable $JsRenderer

Javascript external files renderer. If any callable is set, it has to accept first param to be SplFileInfo about extenal support javascript file. Javascript renderer must add supporting javascript file only once into html output result in any custom way, it is it's responsibility.

Javascript external files renderer. If any callable is set, it has to accept first param to be SplFileInfo about extenal support javascript file. Javascript renderer must add supporting javascript file only once into html output result in any custom way, it is it's responsibility.

# NULL
public callable $CssRenderer

Css external files renderer. If any callable is set, it has to accept first param to be SplFileInfo about extenal support css file. Css renderer must add supporting css file only once into html output result in any custom way, it is it's responsibility.

Css external files renderer. If any callable is set, it has to accept first param to be SplFileInfo about extenal support css file. Css renderer must add supporting css file only once into html output result in any custom way, it is it's responsibility.

# NULL
Properties inherited from MvcCore\Ext\Form\Core\Base
$csrfErrorHandlers, $css, $cssAssetsRootDir, $initialized, $js, $jsAssetsRootDir
MvcCore API documentation generated by ApiGen