Special case of an on-change handler which gets executed server-side and can manipulate the DOM using PHP wrapper methods available in the atkFormModifier class or by outputting JavaScript code directly.

If 0 is returned, the size is unknown. In this case, the return value should not be used to create table columns.

Ofcourse, the size does not make sense for every field type. So only interpret the result if a size has meaning for the field type of this attribute. (For example, if the database field is of type 'date', the size has no meaning)

Note that derived attributes might set a dot separated size, for example to store decimal numbers. The number after the dot should be interpreted as the number of decimals.

Returns a displayable string for this value, to be used in HTML pages.

The regular atkAttribute uses PHP's nl2br() and htmlspecialchars() methods to prepare a value for display, unless $mode is "cvs".

Parameters:

array

$record:

The record that holds the value for this attribute

String

$mode:

The display mode ("view" for viewpages, or "list" for displaying in recordlists, "edit" for displaying in editscreens, "add" for displaying in add screens. "csv" for csv files. Applications can use additional modes.

Returns a piece of html code that can be used to search for an attribute's value.

Parameters:

array

$record:

Array with values

boolean

$extended:

if set to false, a simple search input is returned for use in the searchbar of the recordlist. If set to true, a more extended search may be returned for the 'extended' search page. The atkAttribute does not make a difference for $extended is true, but derived attributes may reimplement this.