AdminModel

Extends FormModel

Prototype admin model.

abstract
since

1.6

package

Joomla CMS

Methods

__construct

Constructor

__construct(array config = array(), \Joomla\CMS\MVC\Factory\MVCFactoryInterface factory = null) : mixed
inherited
since

3.0

throws

\Exception

Arguments

config

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

factory

\Joomla\CMS\MVC\Factory\MVCFactoryInterfaceThe factory.

Response

mixed

_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|bool
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|boolTable object or boolean false if failed

_getList

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

_getList(string query, int limitstart, int limit) : object[]
inherited
since

3.0

throws

\RuntimeException

Arguments

query

stringThe query.

limitstart

intOffset.

limit

intThe number of records.

Response

object[]An array of results.

_getListCount

Returns a record count for the query.

_getListCount(\JDatabaseQuery|string query) : int
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 overridden 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

intNumber 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.

batch

Method to perform batch operations on an item or a set of items.

batch(array commands, array pks, array contexts) : bool
since

1.7

Arguments

commands

arrayAn array of commands to perform.

pks

arrayAn array of item ids.

contexts

arrayAn array of item contexts.

Response

boolReturns true on success, false on failure.

batchAccess

Batch access level changes for a group of rows.

batchAccess(int value, array pks, array contexts) : bool
since

1.7

Arguments

value

intThe new value matching an Asset Group ID.

pks

arrayAn array of row IDs.

contexts

arrayAn array of item contexts.

Response

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

batchCopy

Batch copy items to a new category or current.

batchCopy(int value, array pks, array contexts) : array|bool
since

1.7

Arguments

value

intThe new category.

pks

arrayAn array of row IDs.

contexts

arrayAn array of item contexts.

Response

array|boolAn array of new IDs on success, boolean false on failure.

batchLanguage

Batch language changes for a group of rows.

batchLanguage(string value, array pks, array contexts) : bool
since

2.5

Arguments

value

stringThe new value matching a language.

pks

arrayAn array of row IDs.

contexts

arrayAn array of item contexts.

Response

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

batchMove

Batch move items to a new category

batchMove(int value, array pks, array contexts) : bool
since

1.7

Arguments

value

intThe new category ID.

pks

arrayAn array of row IDs.

contexts

arrayAn array of item contexts.

Response

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

batchTag

Batch tag a list of item.

batchTag(int value, array pks, array contexts) : bool
since

3.1

Arguments

value

intThe value of the new tag.

pks

arrayAn array of row IDs.

contexts

arrayAn array of item contexts.

Response

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

canDelete

Method to test whether a record can be deleted.

canDelete(object record) : bool
since

1.6

Arguments

record

objectA record object.

Response

boolTrue if allowed to delete the record. Defaults to the permission for the component.

canEditState

Method to test whether a record can have its state changed.

canEditState(object record) : bool
since

1.6

Arguments

record

objectA record object.

Response

boolTrue if allowed to change the state of the record. Defaults to the permission for the component.

checkCategoryId

Method to check the validity of the category ID for batch copy and move

checkCategoryId(int categoryId) : bool
since

3.2

Arguments

categoryId

intThe category ID to check

Response

bool

checkin

Method to checkin a row.

checkin(int pk = null) : bool
inherited
since

1.6

Arguments

pk

intThe numeric id of the primary key.

Response

boolFalse on failure or error, true otherwise.

checkout

Method to check-out a row for editing.

checkout(int pk = null) : bool
inherited
since

1.6

Arguments

pk

intThe numeric id of the primary key.

Response

boolFalse on failure or error, true otherwise.

cleanCache

Clean the cache

cleanCache(string group = null, int clientId) : void
inherited
since

3.0

Arguments

group

stringThe cache group

clientId

intThe ID of the client

cleanupPostBatchCopy

Function that can be overridden to do any data cleanup after batch copying data

cleanupPostBatchCopy(\JTableInterface table, int newId, int oldId) : void
since

3.8.12

Arguments

table

\JTableInterfaceThe table object containing the newly created item

newId

intThe id of the new item

oldId

intThe original item id

createTagsHelper

Method to create a tags helper to ensure proper management of tags

createTagsHelper(\JTableObserverTags tagsObserver, \JUcmType type, int pk, string typeAlias, \JTable table) : void
since

3.2

Arguments

tagsObserver

\JTableObserverTagsThe tags observer for this table

type

\JUcmTypeThe type for the table being processed

pk

intPrimary key of the item bing processed

typeAlias

stringThe type alias for this table

table

\JTableThe \JTable object

delete

Method to delete one or more records.

delete(array &pks) : bool
since

1.6

Arguments

pks

arrayAn array of record primary keys.

Response

boolTrue if successful, false if an error occurs.

editAssociations

Method to load an item in com_associations.

editAssociations(array data) : bool
deprecated
since

3.9.0

deprecated

5.0 It is handled by regular save method now.

Arguments

data

arrayThe form data.

Response

boolTrue if successful, false otherwise.

generateNewTitle

Method to change the title & alias.

generateNewTitle(int categoryId, string alias, string title) : array
since

1.7

Arguments

categoryId

intThe id of the category.

alias

stringThe alias.

title

stringThe title.

Response

arrayContains the modified title and alias.

generateTitle

A method to preprocess generating a new title in order to allow tables with alternative names for alias and title to use the batch move and copy methods

generateTitle(int categoryId, \JTable table) : void
since

3.2

Arguments

categoryId

intThe target category id

table

\JTableThe \JTable within which move or copy is taking place

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(), bool loadData = true) : \JForm|bool
inherited abstract
since

1.6

Arguments

data

arrayData for the form.

loadData

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

Response

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

getInstance

Returns a Model object, always creating it

getInstance(string type, string prefix = '', array config = array()) : \JModelLegacy|bool
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|boolA \JModelLegacy instance or false on failure

getItem

Method to get a single record.

getItem(int pk = null) : \JObject|bool
since

1.6

Arguments

pk

intThe id of the primary key.

Response

\JObject|boolObject on success, 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

getReorderConditions

A protected method to get a set of ordering conditions.

getReorderConditions(\JTable table) : array
since

1.6

Arguments

table

\JTableA \JTable object.

Response

arrayAn array of conditions to add to ordering queries.

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

initBatch

Method to initialize member variables used by batch methods and other methods like saveorder()

initBatch() : void
since

3.8.2

loadForm

Method to get a form object.

loadForm(string name, string source = null, array options = array(), bool clear = false, string xpath = false) : \JForm|bool
inherited
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

boolOptional argument to force load a new form.

xpath

stringAn optional xpath to search for the fields.

Response

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

loadFormData

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

loadFormData() : array
inherited
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(int versionId, \JTable &table) : bool
inherited
since

3.2

Arguments

versionId

intKey to the version history table.

table

\JTableContent table object being loaded.

Response

boolFalse 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

prepareTable

Prepare and sanitise the table data prior to saving.

prepareTable(\JTable table) : void
since

1.6

Arguments

table

\JTableA reference to a \JTable object.

preprocessData

Method to allow derived classes to preprocess the data.

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

3.1

Arguments

context

stringThe context identifier.

data

mixedThe data to be processed. It gets altered directly.

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
inherited
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").

publish

Method to change the published state of one or more records.

publish(array &pks, int value = 1) : bool
since

1.6

Arguments

pks

arrayA list of the primary keys to change.

value

intThe value of the published state.

Response

boolTrue on success.

redirectToAssociations

Method to load an item in com_associations.

redirectToAssociations(array data) : bool
throws

\Exception

since

3.9.17

Arguments

data

arrayThe form data.

Response

boolTrue if successful, false otherwise.

reorder

Method to adjust the ordering of a row.

reorder(int pks, int delta) : bool|null

Returns NULL if the user did not have edit privileges for any of the selected primary keys.

since

1.6

Arguments

pks

intThe ID of the primary key to move.

delta

intIncrement, usually +1 or -1

Response

bool|nullFalse on failure or error, true on success, null if the $pk is empty (no items selected).

save

Method to save the form data.

save(array data) : bool
since

1.6

Arguments

data

arrayThe form data.

Response

boolTrue on success, False on error.

saveorder

Saves the manually set order of records.

saveorder(array pks = array(), int order = null) : bool|\JException
since

1.6

Arguments

pks

arrayAn array of primary key ids.

order

int+1 or -1

Response

bool|\JExceptionBoolean true on success, false on failure, or \JException if no items are selected

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|bool
inherited
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|boolArray of filtered data if valid, false otherwise.

Properties

typeAlias

The type alias for this content type (for example, 'com_content.article').

since

3.8.6

Type(s)

string

text_prefix

The prefix to use with controller messages.

since

1.6

Type(s)

string

event_after_delete

The event to trigger after deleting the data.

since

1.6

Type(s)

string

event_after_save

The event to trigger after saving the data.

since

1.6

Type(s)

string

event_before_delete

The event to trigger before deleting the data.

since

1.6

Type(s)

string

event_before_save

The event to trigger before saving the data.

since

1.6

Type(s)

string

event_change_state

The event to trigger after changing the published state of the data.

since

1.6

Type(s)

string

batch_copymove

Batch copy/move command. If set to false, the batch copy/move command is not supported

since

3.4

Type(s)

string

batch_commands

Allowed batch commands

since

3.4

Type(s)

array

associationsContext

The context used for the associations table

since

3.4.4

Type(s)

string

batchSet

A flag to indicate if member variables for batch actions (and saveorder) have been initialized

since

3.8.2

Type(s)

object

user

The user performing the actions (re-usable in batch methods & saveorder(), initialized via initBatch())

since

3.8.2

Type(s)

object

table

A JTable instance (of appropriate type) to manage the DB records (re-usable in batch methods & saveorder(), initialized via initBatch())

since

3.8.2

Type(s)

object

tableClassName

The class name of the JTable instance managing the DB records (re-usable in batch methods & saveorder(), initialized via initBatch())

since

3.8.2

Type(s)

string

contentType

UCM Type corresponding to the current model class (re-usable in batch action methods, initialized via initBatch())

since

3.8.2

Type(s)

object

type

DB data of UCM Type corresponding to the current model class (re-usable in batch action methods, initialized via initBatch())

since

3.8.2

Type(s)

object

tagsObserver

A tags Observer instance to handle assigned tags (re-usable in batch action methods, initialized via initBatch())

since

3.8.2

Type(s)

object

_forms

Array of form objects.

inherited
since

1.6

Type(s)

\JForm[]

events_map

Maps events to plugin groups.

inherited
since

3.6

Type(s)

array

__state_set

Indicates if the internal state has been set

inherited
since

3.0

Type(s)

bool

_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

factory

The factory.

inherited deprecated
since

3.10.0

deprecated

4.0 This is a temporary property that will be moved into a trait in Joomla 4

Type(s)

\Joomla\CMS\MVC\Factory\MVCFactoryInterface