BaseElementModel

Type
Abstract Class
Namespace
Craft
Inherits
Craft\BaseElementModel » Craft\BaseModel » CModel » CComponent
Implements
ArrayAccess, IteratorAggregate
Extended by
Craft\AssetFileModel, Craft\BaseEntryRevisionModel, Craft\CategoryModel, Craft\EntryDraftModel, Craft\EntryModel, Craft\EntryVersionModel, Craft\GlobalSetModel, Craft\MatrixBlockModel, Craft\TagModel, Craft\UserModel
Since
1.0

Base element model class.

See also http://craftcms.com

View source

Protected Properties

PropertyDescription
$classSuffixstring
$elementType
$strictAttributesboolean – Whether this model should be strict about only allowing values to be set on defined attributes

$elementType

Signature

protected  $elementType = null

Public Methods

MethodDescription
__call()Magic __call() method, used for chain-setting attribute values.
__construct()Constructor
__get()Getter
__isset()Treats custom fields as properties.
__set()PHP setter magic method.
__toString()Use the element's title as its string representation.
__unset()Sets a component property to be null.
addError()Adds a new error to the specified attribute.
addErrors()Adds a list of errors.
asa()Returns the named behavior object.
attachBehavior()Attaches a behavior to this component.
attachBehaviors()Attaches a list of behaviors to the component.
attachEventHandler()Attaches an event handler to an event.
attributeLabels()Returns the attribute labels.
attributeNames()Returns the list of this model's attribute names.
behaviors()Returns a list of behaviors that this model should behave as.
canGetProperty()Determines whether a property can be read.
canSetProperty()Determines whether a property can be set.
clearErrors()Removes errors for all attributes or a single attribute.
copy()Returns a copy of this model.
createValidators()Creates validator objects based on the specification in {@link rules}.
detachBehavior()Detaches a behavior from the component.
detachBehaviors()Detaches all behaviors from the component.
detachEventHandler()Detaches an existing event handler.
disableBehavior()Disables an attached behavior.
disableBehaviors()Disables all behaviors attached to this component.
enableBehavior()Enables an attached behavior.
enableBehaviors()Enables all behaviors attached to this component.
evaluateExpression()Evaluates a PHP expression or callback under the context of this component.
generateAttributeLabel()Generates a user friendly attribute label.
getAllErrors()Returns all errors in a single, flattened list, devoid of attribute names.
getAncestors()Returns the element's ancestors.
getAttribute()Gets an attribute’s value.
getAttributeConfigs()Returns this model's normalized attribute configs.
getAttributeLabel()Returns the text label for the specified attribute.
getAttributes()Returns an array of attribute values.
getChildren()Returns the element's children.
getClassHandle()Get the class name, sans namespace and suffix.
getContent()Returns the content for the element.
getContentFromPost()Returns the raw content from the post data, before it was passed through {@link prepValueFromPost()}.
getContentPostLocation()Returns the location in POST that the content was pulled from.
getContentTable()Returns the name of the table this element's content is stored in.
getCpEditUrl()Returns the element's CP edit URL.
getDescendants()Returns the element's descendants.
getEagerLoadedElements()Returns some eager-loaded elements on a given handle.
getElementType()Returns the type of element this is.
getError()Returns the first error of the specified attribute.
getErrors()Returns the errors for all attribute or a single attribute.
getEventHandlers()Returns the list of attached event handlers for an event.
getExtraAttributeNames()Returns a list of the names of the extra attributes that have been saved on this model, if it's not strict.
getFieldColumnPrefix()Returns the field column prefix this element's content uses.
getFieldContext()Returns the field context this element's content uses.
getFieldLayout()Returns the field layout used by this element.
getFieldValue()Returns the prepped content for a given field.
getHasFreshContent()Returns whether the element’s content is "fresh" (unsaved and without validation errors).
getIterator()Returns an iterator for traversing the attributes in the model.
getLink()Returns an anchor pre-filled with this element's URL and title.
getLocales()Returns the locale IDs this element is available in.
getNext()Returns the next element relative to this one, from a given set of criteria.
getNextSibling()Returns the element's next sibling.
getParent()Get the element's parent.
getParents()Returns a new ElementCriteriaModel prepped to return this element's same-type parents.
getPrev()Returns the previous element relative to this one, from a given set of criteria.
getPrevSibling()Returns the element's previous sibling.
getRawContent()Returns the raw content saved on this entity.
getRef()Returns the reference string to this element.
getSafeAttributeNames()Returns the attribute names that are safe to be massively assigned.
getScenario()Returns the scenario that this model is used in.
getSiblings()Returns all of the element's siblings.
getStatus()Returns the element's status.
getThumbUrl()Returns the URL to the element's thumbnail, if there is one.
getTitle()Returns the element's title.
getTotalDescendants()Returns the total number of descendants that the element has.
getUrl()Returns the element's full URL.
getUrlFormat()Returns the URL format used to generate this element's URL.
getValidatorList()Returns all the validators declared in the model.
getValidators()Returns the validators applicable to the current {@link scenario}.
hasDescendants()Returns whether the element has descendants.
hasEagerLoadedElements()Returns whether elements have been eager-loaded with a given handle.
hasErrors()Returns a value indicating whether there is any validation error.
hasEvent()Determines whether an event is defined.
hasEventHandler()Checks whether the named event has attached handlers.
hasProperty()Determines whether a property is defined.
isAncestorOf()Returns whether this element is an ancestor of another one.
isAttributeRequired()Returns a value indicating whether the attribute is required.
isAttributeSafe()Returns a value indicating whether the attribute is safe for massive assignments.
isChildOf()Returns whether this element is a direct child of another one.
isDescendantOf()Returns whether this element is a descendant of another one.
isEditable()Returns whether the current user can edit the element.
isNextSiblingOf()Returns whether this element is the direct next sibling of another one.
isParentOf()Returns whether this element is a direct parent of another one.
isPrevSiblingOf()Returns whether this element is the direct previous sibling of another one.
isSiblingOf()Returns whether this element is a sibling of another one.
offsetExists()Treats custom fields as array offsets.
offsetGet()Returns the element at the specified offset.
offsetSet()Sets the element at the specified offset.
offsetUnset()Unsets the element at the specified offset.
onAfterConstruct()This event is raised after the model instance is created by new operator.
onAfterValidate()This event is raised after the validation is performed.
onBeforeValidate()This event is raised before the validation is performed.
onUnsafeAttribute()This method is invoked when an unsafe attribute is being massively assigned.
populateModel()Populates a new model instance with a given set of attributes.
populateModels()Mass-populates models based on an array of attribute arrays.
raiseEvent()Raises an event.
rules()Returns this model's validation rules.
setAttribute()Sets an attribute's value.
setAttributes()Sets multiple attribute values at once.
setContent()Sets the content for the element.
setContentFromPost()Sets the content from post data, calling prepValueFromPost() on the field types.
setContentPostLocation()Sets the location in POST that the content was pulled from.
setEagerLoadedElements()Sets some eager-loaded elements on a given handle.
setNext()Sets the default next element.
setParent()Sets the element's parent.
setPrev()Sets the default previous element.
setRawPostContent()Sets a field’s raw post content.
setScenario()Sets the scenario for the model.
unsetAttributes()Sets the attributes to be null.
validate()Validates all of the attributes for the current Model. Any attributes that fail validation will additionally get logged to the craft/storage/runtime/logs folder with a level of LogLevel::Warning.

__get()

Getter

View source

Arguments

Returns

mixed

Throws

Signature

public mixed __get ( $name )

__isset()

Treats custom fields as properties.

View source

Arguments

Returns

boolean

Signature

public boolean __isset ( $name )

__toString()

Use the element's title as its string representation.

View source

Returns

string

Signature

public string __toString ( )

getAncestors()

Returns the element's ancestors.

View source

Arguments

Returns

Craft\ElementCriteriaModel

Signature

public Craft\ElementCriteriaModel getAncestors ( $dist = null )

getAttribute()

Gets an attribute’s value.

BaseModel::getAttribute()

View source

Arguments

  • $name (string) – The attribute’s name.
  • $flattenValue (boolean)

Returns

mixed

Signature

public mixed getAttribute ( $name, $flattenValue = false )

getChildren()

Returns the element's children.

View source

Arguments

  • $field (mixed) – If this function is being used in the deprecated relationship-focused way, $field defines which field (if any) to limit the relationships by.

Returns

Craft\ElementCriteriaModel

Signature

public Craft\ElementCriteriaModel getChildren ( $field = null )

getContent()

Returns the content for the element.

View source

Returns

Craft\ContentModel

Signature

public Craft\ContentModel getContent ( )

getContentFromPost()

Returns the raw content from the post data, before it was passed through {@link prepValueFromPost()}.

View source

Returns

array

Signature

public array getContentFromPost ( )

getContentPostLocation()

Returns the location in POST that the content was pulled from.

View source

Returns

string, null

Signature

public string, null getContentPostLocation ( )

getContentTable()

Returns the name of the table this element's content is stored in.

View source

Returns

string

Signature

public string getContentTable ( )

getCpEditUrl()

Returns the element's CP edit URL.

View source

Returns

string, false

Signature

public string, false getCpEditUrl ( )

getDescendants()

Returns the element's descendants.

View source

Arguments

Returns

Craft\ElementCriteriaModel

Signature

public Craft\ElementCriteriaModel getDescendants ( $dist = null )

getEagerLoadedElements()

Returns some eager-loaded elements on a given handle.

View source

Arguments

  • $handle (string) – The handle of the eager-loaded elements

Returns

Craft\BaseElementModel[], null – The eager-loaded elements, or null

Signature

public Craft\BaseElementModel[], null getEagerLoadedElements ( $handle )

getElementType()

Returns the type of element this is.

View source

Returns

string

Signature

public string getElementType ( )

getFieldColumnPrefix()

Returns the field column prefix this element's content uses.

View source

Returns

string

Signature

public string getFieldColumnPrefix ( )

getFieldContext()

Returns the field context this element's content uses.

View source

Returns

string

Signature

public string getFieldContext ( )

getFieldLayout()

Returns the field layout used by this element.

View source

Returns

Craft\FieldLayoutModel, null

Signature

public Craft\FieldLayoutModel, null getFieldLayout ( )

getFieldValue()

Returns the prepped content for a given field.

View source

Arguments

Returns

mixed

Throws

Signature

public mixed getFieldValue ( $fieldHandle )

getHasFreshContent()

Returns whether the element’s content is "fresh" (unsaved and without validation errors).

View source

Returns

boolean – Whether the element’s content is fresh

Signature

public boolean getHasFreshContent ( )

Returns an anchor pre-filled with this element's URL and title.

View source

Returns

\Twig_Markup

Signature

public \Twig_Markup getLink ( )

getLocales()

Returns the locale IDs this element is available in.

View source

Returns

array

Signature

public array getLocales ( )

getNext()

Returns the next element relative to this one, from a given set of criteria.

View source

Arguments

  • $criteria (mixed)

Returns

Craft\ElementCriteriaModel, null

Signature

public Craft\ElementCriteriaModel, null getNext ( $criteria = false )

getNextSibling()

Returns the element's next sibling.

View source

Returns

Craft\BaseElementModel, null

Signature

public Craft\BaseElementModel, null getNextSibling ( )

getParent()

Get the element's parent.

View source

Returns

Craft\BaseElementModel, null

Signature

public Craft\BaseElementModel, null getParent ( )

getParents()

DEPRECATED

Deprecated Deprecated in 1.3. Use the relatedTo param instead.

Returns a new ElementCriteriaModel prepped to return this element's same-type parents.

View source

Arguments

  • $field (mixed)

Returns

Craft\ElementCriteriaModel

Signature

public Craft\ElementCriteriaModel getParents ( $field = null )

getPrev()

Returns the previous element relative to this one, from a given set of criteria.

View source

Arguments

  • $criteria (mixed)

Returns

Craft\ElementCriteriaModel, null

Signature

public Craft\ElementCriteriaModel, null getPrev ( $criteria = false )

getPrevSibling()

Returns the element's previous sibling.

View source

Returns

Craft\BaseElementModel, null

Signature

public Craft\BaseElementModel, null getPrevSibling ( )

getRawContent()

DEPRECATED

Deprecated Deprecated in 2.0. Use {@link getContent()} instead.

Returns the raw content saved on this entity. This is now deprecated. Use getContent() to get the ContentModel instead.

View source

Arguments

Returns

mixed

Signature

public mixed getRawContent ( $fieldHandle = null )

getRef()

Returns the reference string to this element.

View source

Returns

string, null

Signature

public string, null getRef ( )

getSiblings()

Returns all of the element's siblings.

View source

Returns

Craft\ElementCriteriaModel

Signature

public Craft\ElementCriteriaModel getSiblings ( )

getStatus()

Returns the element's status.

View source

Returns

string, null

Signature

public string, null getStatus ( )

getThumbUrl()

Returns the URL to the element's thumbnail, if there is one.

View source

Arguments

Returns

string, null

Signature

public string, null getThumbUrl ( $size = null )

getTitle()

Returns the element's title.

View source

Returns

string

Signature

public string getTitle ( )

getTotalDescendants()

Returns the total number of descendants that the element has.

View source

Returns

boolean

Signature

public boolean getTotalDescendants ( )

getUrl()

Returns the element's full URL.

View source

Returns

string

Signature

public string getUrl ( )

getUrlFormat()

Returns the URL format used to generate this element's URL.

View source

Returns

string, null

Signature

public string, null getUrlFormat ( )

hasDescendants()

Returns whether the element has descendants.

View source

Returns

boolean

Signature

public boolean hasDescendants ( )

hasEagerLoadedElements()

Returns whether elements have been eager-loaded with a given handle.

View source

Arguments

  • $handle (string) – The handle of the eager-loaded elements

Returns

boolean – Whether elements have been eager-loaded with the given handle

Signature

public boolean hasEagerLoadedElements ( $handle )

isAncestorOf()

Returns whether this element is an ancestor of another one.

View source

Arguments

Returns

boolean

Signature

public boolean isAncestorOf ( Craft\BaseElementModel $element )

isChildOf()

Returns whether this element is a direct child of another one.

View source

Arguments

Returns

boolean

Signature

public boolean isChildOf ( Craft\BaseElementModel $element )

isDescendantOf()

Returns whether this element is a descendant of another one.

View source

Arguments

Returns

boolean

Signature

public boolean isDescendantOf ( Craft\BaseElementModel $element )

isEditable()

Returns whether the current user can edit the element.

View source

Returns

boolean

Signature

public boolean isEditable ( )

isNextSiblingOf()

Returns whether this element is the direct next sibling of another one.

View source

Arguments

Returns

boolean

Signature

public boolean isNextSiblingOf ( Craft\BaseElementModel $element )

isParentOf()

Returns whether this element is a direct parent of another one.

View source

Arguments

Returns

boolean

Signature

public boolean isParentOf ( Craft\BaseElementModel $element )

isPrevSiblingOf()

Returns whether this element is the direct previous sibling of another one.

View source

Arguments

Returns

boolean

Signature

public boolean isPrevSiblingOf ( Craft\BaseElementModel $element )

isSiblingOf()

Returns whether this element is a sibling of another one.

View source

Arguments

Returns

boolean

Signature

public boolean isSiblingOf ( Craft\BaseElementModel $element )

offsetExists()

Treats custom fields as array offsets.

View source

Arguments

  • $offset (mixed)

Returns

boolean

Signature

public boolean offsetExists ( $offset )

populateModel()

Populates a new model instance with a given set of attributes.

BaseModel::populateModel()

View source

Arguments

  • $values (mixed)

Returns

Craft\BaseModel

Signature

public static Craft\BaseModel populateModel ( $values )

setContent()

Sets the content for the element.

View source

Arguments

Returns

null

Signature

public null setContent ( $content )

setContentFromPost()

Sets the content from post data, calling prepValueFromPost() on the field types.

View source

Arguments

Returns

null

Signature

public null setContentFromPost ( $content )

setContentPostLocation()

Sets the location in POST that the content was pulled from.

View source

Arguments

  • $contentPostLocation

Returns

string, null

Signature

public string, null setContentPostLocation ( $contentPostLocation )

setEagerLoadedElements()

Sets some eager-loaded elements on a given handle.

View source

Arguments

Signature

public void setEagerLoadedElements ( $handle, $elements )

setNext()

Sets the default next element.

View source

Arguments

Returns

null

Signature

public null setNext ( $element )

setParent()

Sets the element's parent.

View source

Arguments

Returns

null

Signature

public null setParent ( $parent )

setPrev()

Sets the default previous element.

View source

Arguments

Signature

public void setPrev ( $element )

setRawPostContent()

Sets a field’s raw post content.

View source

Arguments

  • $handle (string) – The field handle.
  • $value

Signature

public void setRawPostContent ( $handle, $value )

Protected Methods

MethodDescription
afterConstruct()This method is invoked after a model instance is created by new operator.
afterValidate()This method is invoked after validation ends.
beforeValidate()This method is invoked before validation starts.
createContent()Creates the content model associated with this element.
defineAttributes()Defines this model's attributes.
getFieldByHandle()Returns the field with a given handle.

createContent()

Creates the content model associated with this element.

View source

Returns

Craft\ContentModel – The content model associated with this element

Signature

protected Craft\ContentModel createContent ( )

defineAttributes()

Defines this model's attributes.

BaseModel::defineAttributes()

View source

Returns

array

Signature

protected array defineAttributes ( )

getFieldByHandle()

Returns the field with a given handle.

View source

Arguments

Returns

Craft\FieldModel, null

Signature

protected Craft\FieldModel, null getFieldByHandle ( $handle )

Constants

ConstantDescription
ARCHIVED
DISABLED
ENABLED