/** * linkedpagefieldAction * @author Thomas Schedler <*****@*****.**> * @version 1.0 */ public function linkedpagefieldAction() { $this->core->logger->debug('cms->controllers->PageController->linkedpagefieldAction()'); $strFieldId = $this->objRequest->getParam('fieldId'); $strFormId = $this->objRequest->getParam('formId'); $intFormVersion = $this->objRequest->getParam('formVersion'); $intPageId = $this->objRequest->getParam('pageId'); $objFieldData = $this->getModelGenericForm()->loadFieldByName($strFieldId, $strFormId, $intFormVersion); if (count($objFieldData) > 0) { $objFieldRegionData = $objFieldData->current(); require_once GLOBAL_ROOT_PATH . 'library/massiveart/generic/elements/generic.element.field.class.php'; $objField = new GenericElementField(); $objField->id = $objFieldRegionData->id; $objField->title = $objFieldRegionData->title; $objField->name = $objFieldRegionData->name; $objField->typeId = $objFieldRegionData->idFieldTypes; $objField->type = $objFieldRegionData->type; $objField->defaultValue = $objFieldRegionData->defaultValue; $objField->sqlSelect = $objFieldRegionData->sqlSelect; $objField->columns = $objFieldRegionData->columns; $objField->order = $objFieldRegionData->order; $objField->isCoreField = $objFieldRegionData->isCoreField; $objField->isKeyField = $objFieldRegionData->isKeyField; $objField->isSaveField = $objFieldRegionData->isSaveField; $objField->isRegionTitle = $objFieldRegionData->isRegionTitle; $objField->isDependentOn = $objFieldRegionData->isDependentOn; $objField->copyValue = $objFieldRegionData->copyValue; $objField->decorator = $objFieldRegionData->decorator; $objField->isMultiply = $objFieldRegionData->isMultiply; $objGenericSetup = new GenericSetup(); $objGenericSetup->setLanguageId($this->getItemLanguageId()); $objField->setGenericSetup($objGenericSetup); $objField->loadLinkPage($intPageId); require_once GLOBAL_ROOT_PATH . 'library/massiveart/generic/fields/InternalLink/forms/elements/InternalLink.php'; $objElement = new Form_Element_InternalLink($strFieldId, array('value' => $objField->getValue(), 'label' => $objField->title, 'description' => $objField->description, 'fieldId' => $objField->id, 'columns' => $objField->columns, 'class' => $objField->type, 'height' => $objField->height, 'isGenericSaveField' => $objField->isSaveField, 'isCoreField' => $objField->isCoreField, 'LanguageId' => $this->objRequest->getParam("languageId", $this->core->intZooluLanguageId), 'isEmptyField' => 0, 'required' => $objField->isKeyField == 1 ? true : false)); $objElement->addPrefixPath('Form_Decorator', GLOBAL_ROOT_PATH . 'library/massiveart/generic/forms/decorators/', 'decorator'); $objElement->setDecorators(array($objField->decorator)); if (count($objField->getProperties()) > 0) { foreach ($objField->getProperties() as $strProperty => $mixedPropertyValue) { if (in_array($strProperty, GenericForm::$FIELD_PROPERTIES_TO_IMPART)) { $objElement->{$strProperty} = $mixedPropertyValue; } } } $objDecorator = $objElement->getDecorator($objField->decorator); $objDecorator->setElement($objElement); echo $objDecorator->buildInput(); } $this->_helper->viewRenderer->setNoRender(); }