FormModel

Extends \Joomla\CMS\MVC\Model\BaseDatabaseModel

Prototype form model.

abstract

Acts as a Factory class for application specific objects and provides many supporting API functions.

see \JForm \JFormField \JFormRule
since

1.6

Methods

__construct

Constructor

__construct(array $config = array()) 
inherited
since

3.0

throws

\Exception

Arguments

$config

arrayAn array of configuration options (name, state, dbo, table_path, ignore_request).

_createFileName

Create the filename for a resource

_createFileName(string $type, array $parts = array()) : string
inherited static
since

3.0

Arguments

$type

stringThe resource type to create the filename for.

$parts

arrayAn associative array of filename information.

Response

stringThe filename

_createTable

Method to load and return a model object.

_createTable(string $name, string $prefix = 'Table', array $config = array()) : \JTable|boolean
inherited
since

3.0

see \JTable::getInstance()

Arguments

$name

stringThe name of the view

$prefix

stringThe class prefix. Optional.

$config

arrayConfiguration settings to pass to \JTable::getInstance

Response

\JTable|booleanTable object or boolean false if failed

_getList

Gets an array of objects from the results of database query.

_getList(string $query, integer $limitstart, integer $limit) : array<mixed,object>
inherited
since

3.0

throws

\RuntimeException

Arguments

$query

stringThe query.

$limitstart

integerOffset.

$limit

integerThe number of records.

Response

array<mixed,object>An array of results.

_getListCount

Returns a record count for the query.

_getListCount(\JDatabaseQuery|string $query) : integer
inherited

Note: Current implementation of this method assumes that getListQuery() returns a set of unique rows, thus it uses SELECT COUNT(*) to count the rows. In cases that getListQuery() uses DISTINCT then either this method must be overriden by a custom implementation at the derived Model Class or a GROUP BY clause should be used to make the set unique.

since

3.0

Arguments

$query

\JDatabaseQuery|stringThe query.

Response

integerNumber of rows for query.

addIncludePath

Add a directory where \JModelLegacy should search for models. You may either pass a string or an array of directories.

addIncludePath(mixed $path = '', string $prefix = '') : array
inherited static
since

3.0

Arguments

$path

mixedA path or array[sting] of paths to search.

$prefix

stringA prefix for models.

Response

arrayAn array with directory elements. If prefix is equal to '', all directories are returned.

addTablePath

Adds to the stack of model table paths in LIFO order.

addTablePath(mixed $path) : void
inherited static
since

3.0

Arguments

$path

mixedThe directory as a string or directories as an array to add.

checkin

Method to checkin a row.

checkin(integer $pk = null) : boolean
since

1.6

Arguments

$pk

integerThe numeric id of the primary key.

Response

booleanFalse on failure or error, true otherwise.

checkout

Method to check-out a row for editing.

checkout(integer $pk = null) : boolean
since

1.6

Arguments

$pk

integerThe numeric id of the primary key.

Response

booleanFalse on failure or error, true otherwise.

cleanCache

Clean the cache

cleanCache(string $group = null, integer $client_id) : void
inherited
since

3.0

Arguments

$group

stringThe cache group

$client_id

integerThe ID of the client

getDbo

Method to get the database driver object

getDbo() : \JDatabaseDriver
inherited
since

3.0

Response

\JDatabaseDriver

getForm

Abstract method for getting the form from the model.

getForm(array $data = array(), boolean $loadData = true) : \JForm|boolean
abstract
since

1.6

Arguments

$data

arrayData for the form.

$loadData

booleanTrue if the form is to load its own data (default case), false if not.

Response

\JForm|booleanA \JForm object on success, false on failure

getInstance

Returns a Model object, always creating it

getInstance(string $type, string $prefix = '', array $config = array()) : \JModelLegacy|boolean
inherited static
since

3.0

Arguments

$type

stringThe model type to instantiate

$prefix

stringPrefix for the model class name. Optional.

$config

arrayConfiguration array for model. Optional.

Response

\JModelLegacy|booleanA \JModelLegacy instance or false on failure

getName

Method to get the model name

getName() : string
inherited

The model name. By default parsed using the classname or it can be set by passing a $config['name'] in the class constructor

since

3.0

throws

\Exception

Response

stringThe name of the model

getState

Method to get model state variables

getState(string $property = null, mixed $default = null) : mixed
inherited
since

3.0

Arguments

$property

stringOptional parameter name

$default

mixedOptional default value

Response

mixedThe property where specified, the state object where omitted

getTable

Method to get a table object, load it if necessary.

getTable(string $name = '', string $prefix = 'Table', array $options = array()) : \JTable
inherited
since

3.0

throws

\Exception

Arguments

$name

stringThe table name. Optional.

$prefix

stringThe class prefix. Optional.

$options

arrayConfiguration array for model. Optional.

Response

\JTableA \JTable object

loadForm

Method to get a form object.

loadForm(string $name, string $source = null, array $options = array(), boolean $clear = false, string $xpath = false) : \JForm|boolean
see \JForm
since

1.6

Arguments

$name

stringThe name of the form.

$source

stringThe form source. Can be XML string if file flag is set to false.

$options

arrayOptional array of options for the form creation.

$clear

booleanOptional argument to force load a new form.

$xpath

stringAn optional xpath to search for the fields.

Response

\JForm|boolean\JForm object on success, false on error.

loadFormData

Method to get the data that should be injected in the form.

loadFormData() : array
since

1.6

Response

arrayThe default data is an empty array.

loadHistory

Method to load a row for editing from the version history table.

loadHistory(integer $version_id, \JTable &$table) : boolean
inherited
since

3.2

Arguments

$version_id

integerKey to the version history table.

$table

\JTable

Response

booleanFalse on failure or error, true otherwise.

populateState

Method to auto-populate the model state.

populateState() : void
inherited

This method should only be called once per instantiation and is designed to be called on the first call to the getState() method unless the model configuration flag to ignore the request is set.

note

Calling getState in this method will result in recursion.

since

3.0

preprocessData

Method to allow derived classes to preprocess the data.

preprocessData(string $context,  &$data, string $group = 'content') : void
since

3.1

Arguments

$context

stringThe context identifier.

$data

$group

stringThe name of the plugin group to import (defaults to "content").

preprocessForm

Method to allow derived classes to preprocess the form.

preprocessForm(\JForm $form, mixed $data, string $group = 'content') : void
see \JFormField
since

1.6

throws

\Exceptionif there is an error in the form event.

Arguments

$form

\JFormA \JForm object.

$data

mixedThe data expected for the form.

$group

stringThe name of the plugin group to import (defaults to "content").

setDbo

Method to set the database driver object

setDbo(\JDatabaseDriver $db) : void
inherited
since

3.0

Arguments

$db

\JDatabaseDriverA \JDatabaseDriver based object

setState

Method to set model state variables

setState(string $property, mixed $value = null) : mixed
inherited
since

3.0

Arguments

$property

stringThe name of the property.

$value

mixedThe value of the property to set or null.

Response

mixedThe previous value of the property or null if not set.

validate

Method to validate the form data.

validate(\JForm $form, array $data, string $group = null) : array|boolean
see \JFormRule \JFilterInput
since

1.6

Arguments

$form

\JFormThe form to validate against.

$data

arrayThe data to validate.

$group

stringThe name of the field group to validate.

Response

array|booleanArray of filtered data if valid, false otherwise.

Properties

_forms

Array of form objects.

since

1.6

Type(s)

array<mixed,\JForm>

events_map

Maps events to plugin groups.

since

3.6

Type(s)

array

__state_set

Indicates if the internal state has been set

inherited
since

3.0

Type(s)

boolean

_db

Database Connector

inherited
since

3.0

Type(s)

\JDatabaseDriver

name

The model (base) name

inherited
since

3.0

Type(s)

string

option

The URL option for the component.

inherited
since

3.0

Type(s)

string

state

A state object

inherited
since

3.0

Type(s)

\JObject

event_clean_cache

The event to trigger when cleaning cache.

inherited
since

3.0

Type(s)

string