Back to EditorField class

Method setup

public bool
setup
(\SimpleXMLElement $element, mixed $value, mixed $group = null)
Method to attach a Form object to the field.
Parameters
  • \SimpleXMLElement $element The SimpleXMLElement object representing the `<field>` tag for the form field object.
  • mixed $value The form field value to validate.
  • string $group The field name group control value. This acts as an array container for the field. For example if the field has name="foo" and the group value is set to "bar" then the full field name would end up being "bar[foo]".
Returns
  • bool True on success.
Since
  • 3.2
-
  • \Joomla\CMS\Form\Field\FormField::setup()
Class: EditorField
Project: Joomla

Method setup - Source code

/**
 * Method to attach a Form object to the field.
 *
 * @param   \SimpleXMLElement  $element  The SimpleXMLElement object representing the `<field>` tag for the form field object.
 * @param   mixed              $value    The form field value to validate.
 * @param   string             $group    The field name group control value. This acts as an array container for the field.
 *                                       For example if the field has name="foo" and the group value is set to "bar" then the
 *                                       full field name would end up being "bar[foo]".
 *
 * @return  boolean  True on success.
 *
 * @see     FormField::setup()
 * @since   3.2
 */
public function setup(\SimpleXMLElement $element, $value, $group = null)
{
    $result = parent::setup($element, $value, $group);
    if ($result === true) {
        $this->height = $this->element['height'] ? (string) $this->element['height'] : '500';
        $this->width = $this->element['width'] ? (string) $this->element['width'] : '100%';
        $this->assetField = $this->element['asset_field'] ? (string) $this->element['asset_field'] : 'asset_id';
        $this->authorField = $this->element['created_by_field'] ? (string) $this->element['created_by_field'] : 'created_by';
        $this->asset = $this->form->getValue($this->assetField) ?: (string) $this->element['asset_id'];
        $buttons = (string) $this->element['buttons'];
        $hide = (string) $this->element['hide'];
        $editorType = (string) $this->element['editor'];
        if ($buttons === 'true' || $buttons === 'yes' || $buttons === '1') {
            $this->buttons = true;
        } elseif ($buttons === 'false' || $buttons === 'no' || $buttons === '0') {
            $this->buttons = false;
        } else {
            $this->buttons = !empty($hide) ? explode(',', $buttons) : array();
        }
        $this->hide = !empty($hide) ? explode(',', (string) $this->element['hide']) : array();
        $this->editorType = !empty($editorType) ? explode('|', trim($editorType)) : array();
    }
    return $result;
}