BaseEventTypeController::getElementForElementForm PHP Method

getElementForElementForm() protected method

Abstracted to allow overrides in specific module controllers
protected getElementForElementForm ( ElementType $element_type, integer $previous_id, array() $additional ) : BaseEventTypeElement
$element_type ElementType
$previous_id integer
$additional array()
return BaseEventTypeElement
    protected function getElementForElementForm($element_type, $previous_id = 0, $additional)
    {
        $element_class = $element_type->class_name;
        $element = $element_type->getInstance();
        $this->setElementDefaultOptions($element, 'create');
        if ($previous_id && $element->canCopy()) {
            $previous_element = $element_class::model()->findByPk($previous_id);
            $element->loadFromExisting($previous_element);
        }
        if ($additional) {
            foreach (array_keys($additional) as $add) {
                if ($element->isAttributeSafe($add)) {
                    $element->{$add} = $additional[$add];
                }
            }
        }
        return $element;
    }

Usage Example

Esempio n. 1
0
 /**
  * Override to call the eyedraw import for loaded elements.
  */
 protected function getElementForElementForm($element_type, $previous_id = 0, $additional)
 {
     $element = parent::getElementForElementForm($element_type, $previous_id, $additional);
     // do eyedraw import
     $this->importElementEyeDraw($element);
     return $element;
 }
BaseEventTypeController