class FormUserSelector extends FormChoice

Class FormUserSelector

Traits

Trait FormTextboxTrait

Constants

protected REMOTE_LIST_THRESHOLD

If there is less or equal than REMOTE_LIST_THRESHOLD choices we pass all choices to frontend instead of doing remote search requests

SERIALIZE_JSON

SERIALIZE_CSV

Properties

protected array $config from  FormBase
bool $save_requires_edit_var from  FormBase
Form $form from  FormComponent
protected $field_disable_save

Set to false if this field is not "saveable", e.g. static test

from  FormBase
$REQUEST_VARS from  FormComponent
$name from  FormComponent
callable|bool $db_handler from  FormComponent

Methods

__construct()

FormBase constructor.

from  FormBase
string
_serialize(array $value)

No description

static array
_unSerialize(string $value, string $format = self::SERIALIZE_CSV)

No description

append(string $name, mixed $value, bool|string $key = false)

No description

from  FormBase
void
concat(string $name, string $value)

No description

from  FormBase
static array
convertInputValueToArray(array|string $value, string $format = self::SERIALIZE_JSON)

Convert the given $value and ensures the value to be a usable array (e.g.: (string)"['1']" into: array(['1'])).

static FormChoice
createFromLegacyFormComponent(FormComponent $legacyComponent)

Create FormChoice for a legacy FormComponent

mixed
destroy($name)

No description

from  FormBase
string
display_field($fieldname, $default_value = false)

No description

string
display_field_print(string $fieldname, string $default_value = false)

Display field in print mode

string
display_textbox_field(string $fieldname, bool $default_value = false, string $type = 'textbox')

No description

mixed
get(string $name)

No description

from  FormBase
array
getAdditionalUrlParams()

No description

array
getConfig()

No description

from  FormBase
string
getDomSelector()

Return Dom Selector for this field within the current form (This is NOT necessary unique if you are having 2 forms with identical names in form and field names

string
getElementVisibilityClass()

Get Element Visibility Class Formerly known as tag class

bool
getHideDescription()

No description

bool
getIsCompact()

No description

bool
getIsMultiple()

Rather 'complex' getter that checks for the 'multiple' usage of the user selector, taking legacy implementations into account.

bool
getIsVisible()

Determine visibilty based on user input on dependent fields

string
getLabel()

Get Field label

string
getNoValue()

No description

string
getNoValueIcon()

No description

OptionList|null
getOptionList()

No description

getOptionListPreset()

No description

OptionListProcessorInterface|null
getOptionListProcessor()

No description

string
getSerializeFormat()

Get current expected value format

string
getUrl()

Get URL for Dynamic Choice Queries

string
get_description()

No description

mixed
get_display_value()

returns the displayed value

array
get_group(string $prefix)

No description

from  FormBase
array
get_properties()

No description

from  FormBase
array|bool
get_validation_options()

No description

get_value()

No description

bool
hasCombinedInputFields()

Does this component use combined input fields which required special handling from form?

bool
hasRequiredStyle()

Return if the component should be shown as required with specified style class.

void
init()

Init will be called AFTER __construct() and init_obj() with $this->form set

init_obj()

Initializes the form base

from  FormBase
$this
insertAfter(FormComponent $formComponent = null)

Insert this field after the specified field

$this
insertBefore(FormComponent $formComponent = null)

Insert this field before the specified field

bool
isReadonly()

Returns TRUE if field is readonly, FALSE otherwise.

bool
is_displayed()

Checks if the field is hidden by a tag. It is important when validating

from  FormBase
void
post_process()

No description

void
process()

Process e.g. file upload, resize etc.

string
render(string|false $name = false, string|false $value = false)

No description

mixed
save()

No description

$this
set(string $propertyName, mixed $propertyValue)

No description

from  FormBase
setAdditionalUrlParams(array $additionalUrlParams)

No description

setAllowGroupSelection(bool $enabled = true)

No description

$this
setCSSClassName(string $class = null)

Set Field Row CSS class name

$this
setCustomErrorText(string $error_msg)

Show Custom Error Message for this field

setDefaultValue(mixed $value = null)

Set Field default value

$this
setDescriptionText(string $description = null)

Set Field Help Text

$this
setGridClass(string $gridClass = null)

Set Flexbox Grid Class

setGroupSecurityId(int $groupSecurityId)

Restrict the visible users by providing an optional group_security_id context

$this
setHelpText(string $help = null)

Set Field Help Text

setHideDescription(bool $value = true)

No description

setIsCompact(bool $bool = true)

Enable COMPACT Mode which displays the values in a tag like format with multiple values per line

$this
setIsDBField(bool $bool = true)

Field is to be loaded from and saved to database.

$this
setIsI18NField(bool $bool = true)

Field is considered to be translatable. This is usually determined automatically reading the instance configuration of the calling instance

setIsMultiple(bool $bool = true)

Can user select multiple entries?

$this
setIsReadonly(bool $bool = true)

Consider Field as readonly

$this
setIsRequired(bool $bool = true, bool $onlyRequiredIfVisible = true)

Consider Field as required

$this
setLabel(string $label = '', string $icon_class = null)

Set Field label

$this
setLabelIconClass(string $icon_class = '')

Set label icon class

setNoValue(string $value)

Set a value which should be shown when no item is selected

setNoValueIcon(string $value)

Set an icon class if no value is being selected (displayed with novalue message)

setOptionListAsDatasource(OptionList $optionList)

Sets the options for this field via the option list, that may contain several option objects.

$this
setPopulateField(FormComponent $target, string $dataURL = null)

Manipulate another fields data when the value of the current field changes.

$this
setPrefixHTML(string $html = null)

Add Custom HTML before the field element

setSerializeFormat(string $serializeFormat = FormChoice::SERIALIZE_CSV)

Set format expected value format

$this
setSuffixHTML(string $html = null)

Add Custom HTML after the field element

$this
setVisibilityDependsOn(FormComponent $formComponent = null, array $matchingValues = [])

Set Visibility Dependency if you want your field only to be shown if another field has a specify value Array Syntax: tag, tag_source

$this
setVisibilityIsSource(bool $bool = true)

Set field to be the event source for another dependent field. Changes of this fields values will trigger events to their dependent fields and change their visibility in the frontend

set_display_value(mixed $value)

set the displayed value

void
set_properties(array $array)

No description

from  FormBase
set_request_vars($request)

No description

array
validate()

No description

bool
validateInFrontendAsRequired()

Should this field be marked with HTML5 required attribute? HTML5 required should not be used when field may be hidden, as it might still be required frontend-wise, even if hidden!

bool
validateInRequestAsRequired()

Should this field be treated as required during request validation?

Details

in FormBase at line 31
__construct()

FormBase constructor.

The constructor is able to set an array of properties options

in FormChoice at line 367
protected string _serialize(array $value)

No description

Parameters

array $value

Return Value

string

in FormChoice at line 384
static protected array _unSerialize(string $value, string $format = self::SERIALIZE_CSV)

No description

Parameters

string $value

The value

string $format

The format self::SERIALIZE_JSON|self::SERIALIZE_CSV

Return Value

array

in FormBase at line 198
append(string $name, mixed $value, bool|string $key = false)

No description

Parameters

string $name

property name

mixed $value

property value

bool|string $key

key of property array

in FormBase at line 183
void concat(string $name, string $value)

No description

Parameters

string $name

of the property

string $value

to be concated

Return Value

void

in FormChoice at line 151
static array convertInputValueToArray(array|string $value, string $format = self::SERIALIZE_JSON)

Convert the given $value and ensures the value to be a usable array (e.g.: (string)"['1']" into: array(['1'])).

Function is static and is usable in value processing of custom forms

Parameters

array|string $value
string $format

Return Value

array

in FormChoice at line 419
static FormChoice createFromLegacyFormComponent(FormComponent $legacyComponent)

Create FormChoice for a legacy FormComponent

Parameters

FormComponent $legacyComponent

Return Value

FormChoice

in FormBase at line 168
mixed destroy($name)

No description

Parameters

$name

Return Value

mixed

last value

at line 110
string display_field($fieldname, $default_value = false)

No description

Parameters

$fieldname
$default_value

Return Value

string

at line 147
string display_field_print(string $fieldname, string $default_value = false)

Display field in print mode

Parameters

string $fieldname
string $default_value

Return Value

string

in FormTextboxTrait at line 21
string display_textbox_field(string $fieldname, bool $default_value = false, string $type = 'textbox')

No description

Parameters

string $fieldname
bool $default_value
string $type

Return Value

string

in FormBase at line 77
mixed get(string $name)

No description

Parameters

string $name

name of the property

Return Value

mixed

in FormChoice at line 25
array getAdditionalUrlParams()

No description

Return Value

array

in FormBase at line 84
array getConfig()

No description

Return Value

array

in FormComponent at line 588
string getDomSelector()

Return Dom Selector for this field within the current form (This is NOT necessary unique if you are having 2 forms with identical names in form and field names

Return Value

string

Exceptions

Exception

in FormComponent at line 600
protected string getElementVisibilityClass()

Get Element Visibility Class Formerly known as tag class

Return Value

string

in FormChoice at line 295
bool getHideDescription()

No description

Return Value

bool

in FormChoice at line 314
bool getIsCompact()

No description

Return Value

bool

at line 23
bool getIsMultiple()

Rather 'complex' getter that checks for the 'multiple' usage of the user selector, taking legacy implementations into account.

Return Value

bool

in FormComponent at line 501
bool getIsVisible()

Determine visibilty based on user input on dependent fields

Return Value

bool

True if considered visible

in FormComponent at line 317
string getLabel()

Get Field label

Return Value

string

in FormChoice at line 269
string getNoValue()

No description

Return Value

string

in FormChoice at line 287
string getNoValueIcon()

No description

Return Value

string

in FormChoice at line 202
OptionList|null getOptionList()

No description

Return Value

OptionList|null

in FormChoice at line 212
getOptionListPreset()

No description

in FormChoice at line 228
OptionListProcessorInterface|null getOptionListProcessor()

No description

Return Value

OptionListProcessorInterface|null

in FormChoice at line 338
string getSerializeFormat()

Get current expected value format

Return Value

string

in FormChoice at line 43
string getUrl()

Get URL for Dynamic Choice Queries

Return Value

string

in FormComponent at line 156
string get_description()

No description

Return Value

string

html or false if no description is set

in FormComponent at line 257
mixed get_display_value()

returns the displayed value

Return Value

mixed value

in FormBase at line 217
array get_group(string $prefix)

No description

Parameters

string $prefix

prefix (e.g. mygroup_ )

Return Value

array

in FormBase at line 92
array get_properties()

No description

Return Value

array

in FormComponent at line 56
array|bool get_validation_options()

No description

Return Value

array|bool

validation options, false on failure

in FormComponent at line 175
get_value()

No description

in FormComponent at line 48
bool hasCombinedInputFields()

Does this component use combined input fields which required special handling from form?

Return Value

bool

in FormComponent at line 651
protected bool hasRequiredStyle()

Return if the component should be shown as required with specified style class.

Return Value

bool

at line 35
void init()

Init will be called AFTER __construct() and init_obj() with $this->form set

Return Value

void

in FormBase at line 39
init_obj()

Initializes the form base

in FormComponent at line 549
$this insertAfter(FormComponent $formComponent = null)

Insert this field after the specified field

Parameters

FormComponent $formComponent

Return Value

$this

in FormComponent at line 534
$this insertBefore(FormComponent $formComponent = null)

Insert this field before the specified field

Parameters

FormComponent $formComponent

Return Value

$this

in FormComponent at line 374
bool isReadonly()

Returns TRUE if field is readonly, FALSE otherwise.

Return Value

bool

in FormBase at line 237
bool is_displayed()

Checks if the field is hidden by a tag. It is important when validating

Return Value

bool

in FormComponent at line 240
void post_process()

No description

Return Value

void

at line 132
void process()

Process e.g. file upload, resize etc.

Return Value

void

in FormComponent at line 187
string render(string|false $name = false, string|false $value = false)

No description

Parameters

string|false $name
string|false $value

Return Value

string

at line 164
mixed save()

No description

Return Value

mixed

in FormBase at line 104
$this set(string $propertyName, mixed $propertyValue)

No description

Parameters

string $propertyName

propoerty name

mixed $propertyValue

property value

Return Value

$this

in FormChoice at line 34
FormChoice setAdditionalUrlParams(array $additionalUrlParams)

No description

Parameters

array $additionalUrlParams

Return Value

FormChoice

at line 105
FormUserSelector setAllowGroupSelection(bool $enabled = true)

No description

Parameters

bool $enabled

Return Value

FormUserSelector

in FormComponent at line 396
$this setCSSClassName(string $class = null)

Set Field Row CSS class name

Parameters

string $class

e.g. hide_label, error

Return Value

$this

in FormComponent at line 564
$this setCustomErrorText(string $error_msg)

Show Custom Error Message for this field

Parameters

string $error_msg

Return Value

$this

in FormComponent at line 385
FormComponent setDefaultValue(mixed $value = null)

Set Field default value

Parameters

mixed $value

Return Value

FormComponent

in FormComponent at line 418
$this setDescriptionText(string $description = null)

Set Field Help Text

Parameters

string $description

String to help people understand this fields value and options

Return Value

$this

in FormComponent at line 578
$this setGridClass(string $gridClass = null)

Set Flexbox Grid Class

Parameters

string $gridClass

Example: xcol-6_md-12

Return Value

$this

at line 100
FormUserSelector setGroupSecurityId(int $groupSecurityId)

Restrict the visible users by providing an optional group_security_id context

If the context is not given explicitally, but the form/model/module is running in group context, the groupSecurityId will be determined automatically (if possible)

Parameters

int $groupSecurityId

Return Value

FormUserSelector

in FormComponent at line 407
$this setHelpText(string $help = null)

Set Field Help Text

Parameters

string $help

String to help people fill out your form

Return Value

$this

in FormChoice at line 291
FormChoice setHideDescription(bool $value = true)

No description

Parameters

bool $value

Return Value

FormChoice

in FormChoice at line 306
FormChoice setIsCompact(bool $bool = true)

Enable COMPACT Mode which displays the values in a tag like format with multiple values per line

Parameters

bool $bool

Return Value

FormChoice

in FormComponent at line 341
$this setIsDBField(bool $bool = true)

Field is to be loaded from and saved to database.

Parameters

bool $bool

Return Value

$this

in FormComponent at line 354
$this setIsI18NField(bool $bool = true)

Field is considered to be translatable. This is usually determined automatically reading the instance configuration of the calling instance

Parameters

bool $bool

Return Value

$this

in FormChoice at line 244
FormChoice setIsMultiple(bool $bool = true)

Can user select multiple entries?

Parameters

bool $bool

Return Value

FormChoice

in FormComponent at line 365
$this setIsReadonly(bool $bool = true)

Consider Field as readonly

Parameters

bool $bool

Return Value

$this

in FormComponent at line 330
$this setIsRequired(bool $bool = true, bool $onlyRequiredIfVisible = true)

Consider Field as required

Parameters

bool $bool
bool $onlyRequiredIfVisible

If field is used with dependent visibility we consider the field only required when the field was visible to the user

Return Value

$this

in FormComponent at line 293
$this setLabel(string $label = '', string $icon_class = null)

Set Field label

Parameters

string $label
string $icon_class

CSS Icon class, e.g. icon-time

Return Value

$this

in FormComponent at line 308
$this setLabelIconClass(string $icon_class = '')

Set label icon class

Parameters

string $icon_class

CSS Icon class, e.g. icon-time

Return Value

$this

in FormChoice at line 262
FormChoice setNoValue(string $value)

Set a value which should be shown when no item is selected

Parameters

string $value

Return Value

FormChoice

in FormChoice at line 280
FormChoice setNoValueIcon(string $value)

Set an icon class if no value is being selected (displayed with novalue message)

Parameters

string $value

Return Value

FormChoice

in FormChoice at line 195
FormChoice setOptionListAsDatasource(OptionList $optionList)

Sets the options for this field via the option list, that may contain several option objects.

Parameters

OptionList $optionList

Return Value

FormChoice

in FormChoice at line 207
FormChoice setOptionListPresetIcons()

No description

Return Value

FormChoice

in FormChoice at line 221
FormChoice setOptionListProcessor(OptionListProcessorInterface $processor)

No description

Parameters

OptionListProcessorInterface $processor

Return Value

FormChoice

in FormComponent at line 453
$this setPopulateField(FormComponent $target, string $dataURL = null)

Manipulate another fields data when the value of the current field changes.

Common usage: Populate a second select once user chooses from the first select

Parameters

FormComponent $target
string $dataURL

Return Value

$this

in FormComponent at line 429
$this setPrefixHTML(string $html = null)

Add Custom HTML before the field element

Parameters

string $html

e.g. 'http:// '

Return Value

$this

in FormChoice at line 329
FormChoice setSerializeFormat(string $serializeFormat = FormChoice::SERIALIZE_CSV)

Set format expected value format

Parameters

string $serializeFormat

Return Value

FormChoice

in FormComponent at line 440
$this setSuffixHTML(string $html = null)

Add Custom HTML after the field element

Parameters

string $html

e.g. ' hours'

Return Value

$this

in FormComponent at line 467
$this setVisibilityDependsOn(FormComponent $formComponent = null, array $matchingValues = [])

Set Visibility Dependency if you want your field only to be shown if another field has a specify value Array Syntax: tag, tag_source

Parameters

FormComponent $formComponent

Null will reset and remove all existing dependencies

array $matchingValues

Field will be shown/visible if the dependent field contains/has one of the values specified

Return Value

$this

in FormComponent at line 491
$this setVisibilityIsSource(bool $bool = true)

Set field to be the event source for another dependent field. Changes of this fields values will trigger events to their dependent fields and change their visibility in the frontend

Fields are automatically set to be a source if used in a call of setVisibilityDependsOn()

Array Syntax: tag_source

Parameters

bool $bool

Return Value

$this

in FormComponent at line 248
set_display_value(mixed $value)

set the displayed value

Parameters

mixed $value value

in FormBase at line 153
void set_properties(array $array)

No description

Parameters

array $array

associated array like property=>value

Return Value

void

in FormComponent at line 40
set_request_vars($request)

No description

Parameters

$request

array validate()

No description

Return Value

array

Exceptions

JsonException

in FormComponent at line 639
protected bool validateInFrontendAsRequired()

Should this field be marked with HTML5 required attribute? HTML5 required should not be used when field may be hidden, as it might still be required frontend-wise, even if hidden!

Return Value

bool

in FormComponent at line 624
protected bool validateInRequestAsRequired()

Should this field be treated as required during request validation?

Return Value

bool