JControllerForm

Extends \JController

Controller tailored to suit most form-based admin operations.

Controller (Controllers are where you put all the actual code.) Provides basic functionality, such as rendering views (aka displaying templates).

package

Joomla.Platform

subpackage

Application

since

11.1

todo

Add ability to set redirect manually to better cope with frontend usage.

Methods

__construct

Class constructor, overridden in descendant classes.

__construct(mixed $properties = null) 
inherited
since

11.1

Arguments

$properties

mixedEither and associative array or another object to set the initial properties of the object.

__toString

Magic method to convert the object to a string gracefully.

__toString() : string
inherited deprecated
since

11.1

deprecated

12.3 Classes should provide their own __toString() implementation.

Response

stringThe classname.

add

Method to add a new record.

add() : mixed
since

11.1

Response

mixedTrue if the record can be added, a JError object if not.

addModelPath

Adds to the stack of model paths in LIFO order.

addModelPath(mixed $path, string $prefix = '') : void
inherited static

Arguments

$path

mixedThe directory (string), or list of directories (array) to add.

$prefix

stringA prefix for models

addPath

Adds to the search path for templates and resources.

addPath(string $type, mixed $path) : \JController
inherited
since

11.1

note

Replaces _addPath.

Arguments

$type

stringThe path type (e.g. 'model', 'view').

$path

mixedThe directory string or stream array to search.

Response

\JControllerA JController object to support chaining.

addViewPath

Add one or more view paths to the controller's stack, in LIFO order.

addViewPath(mixed $path) : \JController
inherited

Arguments

$path

mixedThe directory (string) or list of directories (array) to add.

Response

\JControllerThis object to support chaining.

allowAdd

Method to check if you can add a new record.

allowAdd(array $data = array()) : boolean

Extended classes can override this if necessary.

since

11.1

Arguments

$data

arrayAn array of input data.

Response

boolean

allowEdit

Method to check if you can add a new record.

allowEdit(array $data = array(), string $key = 'id') : boolean

Extended classes can override this if necessary.

since

11.1

Arguments

$data

arrayAn array of input data.

$key

stringThe name of the key for the primary key; default is id.

Response

boolean

allowSave

Method to check if you can save a new or existing record.

allowSave(array $data, string $key = 'id') : boolean

Extended classes can override this if necessary.

since

11.1

Arguments

$data

arrayAn array of input data.

$key

stringThe name of the key for the primary key.

Response

boolean

authorise

Authorisation check

authorise(string $task) : boolean
inherited deprecated
since

11.1

deprecated

12.3

Arguments

$task

stringThe ACO Section Value to check access on.

Response

booleanTrue if authorised

authorize

Authorisation check

authorize(string $task) : boolean
inherited deprecated
since

11.1

deprecated

12.1 Use JAuthorise

Arguments

$task

stringThe ACO Section Value to check access on

Response

booleanTrue if authorised

batch

Method to run batch operations.

batch(\JModel $model) : boolean
since

11.1

Arguments

$model

\JModelThe model of the component being processed.

Response

booleanTrue if successful, false otherwise and internal error is set.

cancel

Method to cancel an edit.

cancel(string $key = null) : boolean
since

11.1

Arguments

$key

stringThe name of the primary key of the URL variable.

Response

booleanTrue if access level checks pass, false otherwise.

checkEditId

Method to check whether an ID is in the edit list.

checkEditId(string $context, integer $id) : boolean
inherited
since

11.1

Arguments

$context

stringThe context for the session storage.

$id

integerThe ID of the record to add to the edit list.

Response

booleanTrue if the ID is in the edit list.

createFileName

Create the filename for a resource.

createFileName(string $type, array $parts = array()) : string
inherited static
note

Replaced _createFileName.

since

11.1

Arguments

$type

stringThe resource type to create the filename for.

$parts

arrayAn associative array of filename information. Optional.

Response

stringThe filename.

createModel

Method to load and return a model object.

createModel(string $name, string $prefix = '', array $config = array()) : mixed
inherited
since

11.1

note

Replaces _createModel.

Arguments

$name

stringThe name of the model.

$prefix

stringOptional model prefix.

$config

arrayConfiguration array for the model. Optional.

Response

mixedModel object on success; otherwise null failure.

createView

Method to load and return a view object. This method first looks in the current template directory for a match and, failing that, uses a default set path to load the view class file.

createView(string $name, string $prefix = '', string $type = '', array $config = array()) : mixed
inherited

Note the "name, prefix, type" order of parameters, which differs from the "name, type, prefix" order used in related public methods.

since

11.1

note

Replaces _createView.

Arguments

$name

stringThe name of the view.

$prefix

stringOptional prefix for the view class name.

$type

stringThe type of view.

$config

arrayConfiguration array for the view. Optional.

Response

mixedView object on success; null or error result on failure.

def

Sets a default value if not alreay assigned

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

11.1

Arguments

$property

stringThe name of the property.

$default

mixedThe default value.

Response

mixed

display

Typical view method for MVC based architecture

display(boolean $cachable = false, array $urlparams = false) : \JController
inherited

This function is provide as a default implementation, in most cases you will need to override it in your own controllers.

since

11.1

Arguments

$cachable

booleanIf true, the view output will be cached

$urlparams

arrayAn array of safe url parameters and their variable types, for valid values see {@link JFilterInput::clean()}.

Response

\JControllerA JController object to support chaining.

edit

Method to edit an existing record.

edit(string $key = null, string $urlVar = null) : boolean
since

11.1

Arguments

$key

stringThe name of the primary key of the URL variable.

$urlVar

stringThe name of the URL variable if different from the primary key (sometimes required to avoid router collisions).

Response

booleanTrue if access level check and checkout passes, false otherwise.

execute

Execute a task by triggering a method in the derived class.

execute(string $task) : mixed
inherited
since

11.1

Arguments

$task

stringThe task to perform. If no matching task is found, the '__default' task is executed, if defined.

Response

mixedThe value returned by the called method, false in error case.

get

Returns a property of the object or the default value if the property is not set.

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

11.1

see \JObject::getProperties()

Arguments

$property

stringThe name of the property.

$default

mixedThe default value.

Response

mixedThe value of the property.

getError

Get the most recent error message.

getError(integer $i = null, boolean $toString = true) : string
inherited deprecated
since

11.1

see \JError
deprecated

12.3 JError has been deprecated

Arguments

$i

integerOption error index.

$toString

booleanIndicates if JError objects should return their error message.

Response

stringError message

getErrors

Return all errors, if any.

getErrors() : array
inherited deprecated
since

11.1

see \JError
deprecated

12.3 JError has been deprecated

Response

arrayArray of error messages or JErrors.

getInstance

Method to get a singleton controller instance.

getInstance(string $prefix, array $config = array()) : \JController
inherited static
since

11.1

throws

\Exceptionif the controller cannot be loaded.

Arguments

$prefix

stringThe prefix for the controller.

$config

arrayAn array of optional constructor options.

Response

\JController

getModel

Method to get a model object, loading it if required.

getModel(string $name = '', string $prefix = '', array $config = array()) : object
inherited
since

11.1

Arguments

$name

stringThe model name. Optional.

$prefix

stringThe class prefix. Optional.

$config

arrayConfiguration array for model. Optional.

Response

objectThe model.

getName

Method to get the controller name

getName() : string
inherited

The dispatcher name is set by default parsed using the classname, or it can be set by passing a $config['name'] in the class constructor

since

11.1

Response

stringThe name of the dispatcher

getProperties

Returns an associative array of object properties.

getProperties(boolean $public = true) : array
inherited
since

11.1

see \JObject::get()

Arguments

$public

booleanIf true, returns only the public properties.

Response

array

getRedirectToItemAppend

Gets the URL arguments to append to an item redirect.

getRedirectToItemAppend(integer $recordId = null, string $urlVar = 'id') : string
since

11.1

Arguments

$recordId

integerThe primary key id for the item.

$urlVar

stringThe name of the URL variable for the id.

Response

stringThe arguments to append to the redirect URL.

getRedirectToListAppend

Gets the URL arguments to append to a list redirect.

getRedirectToListAppend() : string
since

11.1

Response

stringThe arguments to append to the redirect URL.

getTask

Get the last task that is being performed or was most recently performed.

getTask() : string
inherited
since

11.1

Response

stringThe task that is being performed or was most recently performed.

getTasks

Gets the available tasks in the controller.

getTasks() : array
inherited
since

11.1

Response

arrayArray[i] of task names.

getView

Method to get a reference to the current view and load it if necessary.

getView(string $name = '', string $type = '', string $prefix = '', array $config = array()) : object
inherited
since

11.1

Arguments

$name

stringThe view name. Optional, defaults to the controller name.

$type

stringThe view type. Optional.

$prefix

stringThe class prefix. Optional.

$config

arrayConfiguration array for view. Optional.

Response

objectReference to the view or an error.

holdEditId

Method to add a record ID to the edit list.

holdEditId(string $context, integer $id) : void
inherited
since

11.1

Arguments

$context

stringThe context for the session storage.

$id

integerThe ID of the record to add to the edit list.

postSaveHook

Function that allows child controller access to model data after the data has been saved.

postSaveHook(\JModel &$model, array $validData = array()) : void
since

11.1

Arguments

$model

\JModel

$validData

arrayThe validated data.

redirect

Redirects the browser or returns false if no redirect is set.

redirect() : boolean
inherited
since

11.1

Response

booleanFalse if no redirect exists.

registerDefaultTask

Register the default task to perform if a mapping is not found.

registerDefaultTask(string $method) : \JController
inherited
since

11.1

Arguments

$method

stringThe name of the method in the derived class to perform if a named task is not found.

Response

\JControllerA JController object to support chaining.

registerTask

Register (map) a task to a method in the class.

registerTask(string $task, string $method) : \JController
inherited
since

11.1

Arguments

$task

stringThe task.

$method

stringThe name of the method in the derived class to perform for this task.

Response

\JControllerA JController object to support chaining.

releaseEditId

Method to check whether an ID is in the edit list.

releaseEditId(string $context, integer $id) : void
inherited
since

11.1

Arguments

$context

stringThe context for the session storage.

$id

integerThe ID of the record to add to the edit list.

save

Method to save a record.

save(string $key = null, string $urlVar = null) : boolean
since

11.1

Arguments

$key

stringThe name of the primary key of the URL variable.

$urlVar

stringThe name of the URL variable if different from the primary key (sometimes required to avoid router collisions).

Response

booleanTrue if successful, false otherwise.

set

Modifies a property of the object, creating it if it does not already exist.

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

11.1

Arguments

$property

stringThe name of the property.

$value

mixedThe value of the property to set.

Response

mixedPrevious value of the property.

setAccessControl

Sets the access control levels.

setAccessControl(string $section, string $value = null) : void
inherited deprecated
deprecated

12.1 Use JAccess

see \Jaccess
since

11.1

Arguments

$section

stringThe ACO section (eg, the component).

$value

stringThe ACO section value (if using a constant value).

setError

Add an error message.

setError(string $error) : void
inherited deprecated
since

11.1

see \JError
deprecated

12.3 JError has been deprecated

Arguments

$error

stringError message.

setMessage

Sets the internal message that is passed with a redirect

setMessage(string $text, string $type = 'message') : string
inherited
since

11.1

Arguments

$text

stringMessage to display on redirect.

$type

stringMessage type (since 11.1). Optional, defaults to 'message'.

Response

stringPrevious message

setPath

Sets an entire array of search paths for resources.

setPath(string $type, string $path) : void
inherited
note

Replaces _setPath.

since

11.1

Arguments

$type

stringThe type of path to set, typically 'view' or 'model'.

$path

stringThe new set of search paths. If null or false, resets to the current directory only.

setProperties

Set the object properties based on a named array/hash.

setProperties(mixed $properties) : boolean
inherited
since

11.1

see \JObject::set()

Arguments

$properties

mixedEither an associative array or another object.

Response

boolean

setRedirect

Set a URL for browser redirection.

setRedirect(string $url, string $msg = null, string $type = null) : \JController
inherited
since

11.1

Arguments

$url

stringURL to redirect to.

$msg

stringMessage to display on redirect. Optional, defaults to value set internally by controller, if any.

$type

stringMessage type. Optional, defaults to 'message' or the type set by a previous call to setMessage.

Response

\JControllerThis object to support chaining.

toString

Converts the object to a string (the class name).

toString() : string
inherited deprecated
since

11.1

deprecated

12.1 Use magic method __toString()

see \JObject::__toString()

Response

string

unregisterTask

Unregister (unmap) a task in the class.

unregisterTask(string $task) : \JController
inherited
since

11.1

Arguments

$task

stringThe task.

Response

\JControllerThis object to support chaining.

Properties

context

The context for storing internal data, e.g. record.

since

11.1

Type(s)

string

option

The URL option for the component.

since

11.1

Type(s)

string

view_item

The URL view item variable.

since

11.1

Type(s)

string

view_list

The URL view list variable.

since

11.1

Type(s)

string

text_prefix

The prefix to use with controller messages.

since

11.1

Type(s)

string

_acoSection

ACO Section for the controller.

inherited deprecated
since

11.1

deprecated

12.1

Type(s)

string

_acoSectionValue

Default ACO Section value for the controller.

inherited deprecated
since

11.1

deprecated

12.1

Type(s)

string

basePath

The base path of the controller

inherited
since

11.1

note

Replaces _basePath.

Type(s)

string

default_view

The default view for the display method.

inherited
since

11.1

Type(s)

string

doTask

The mapped task that was performed.

inherited
since

11.1

note

Replaces _doTask.

Type(s)

string

message

Redirect message.

inherited
since

11.1

note

Replaces _message.

Type(s)

string

messageType

Redirect message type.

inherited
since

11.1

note

Replaces _messageType.

Type(s)

string

methods

Array of class methods

inherited
since

11.1

note

Replaces _methods.

Type(s)

array

name

The name of the controller

inherited
since

11.1

note

Replaces _name.

Type(s)

array

model_prefix

The prefix of the models

inherited
since

11.1

Type(s)

string

paths

The set of search directories for resources (views).

inherited
since

11.1

note

Replaces _path.

Type(s)

array

redirect

URL for redirection.

inherited
since

11.1

note

Replaces _redirect.

Type(s)

string

task

Current or most recently performed task.

inherited
since

11.1

note

Replaces _task.

Type(s)

string

taskMap

Array of class methods to call for a given task.

inherited
since

11.1

note

Replaces _taskMap.

Type(s)

array

instance

JController instance container.

inherited static
since

11.3

Type(s)

\JController

_errors

An array of error messages or Exception objects.

inherited deprecated
since

11.1

see \JError
deprecated

12.3 JError has been deprecated

Type(s)

array