protected function geFieldOutput(array $aField) { if (!is_object($aField['_caller_object'])) { return ''; } $aField['_nested_depth']++; $_oCaller = $aField['_caller_object']; $_aOptions = $_oCaller->getSavedOptions(); $_oField = new AdminPageFramework_FormField($aField, $_aOptions, $_oCaller->getFieldErrors(), $_oCaller->oProp->aFieldTypeDefinitions, $_oCaller->oMsg, $_oCaller->oProp->aFieldCallbacks); return $_oField->_getFieldOutput(); }
public function _replyToGetFieldOutput($aField) { $_sCurrentPageSlug = $this->oProp->getCurrentPageSlug(); $_sSectionID = $this->oUtil->getElement($aField, 'section_id', '_default'); $_sFieldID = $aField['field_id']; if ($aField['page_slug'] != $_sCurrentPageSlug) { return ''; } $this->aFieldErrors = isset($this->aFieldErrors) ? $this->aFieldErrors : $this->_getFieldErrors($_sCurrentPageSlug); $sFieldType = isset($this->oProp->aFieldTypeDefinitions[$aField['type']]['hfRenderField']) && is_callable($this->oProp->aFieldTypeDefinitions[$aField['type']]['hfRenderField']) ? $aField['type'] : 'default'; $_aTemp = $this->getSavedOptions(); $_oField = new AdminPageFramework_FormField($aField, $_aTemp, $this->aFieldErrors, $this->oProp->aFieldTypeDefinitions, $this->oMsg, $this->oProp->aFieldCallbacks); $_sFieldOutput = $_oField->_getFieldOutput(); unset($_oField); return $this->oUtil->addAndApplyFilters($this, array(isset($aField['section_id']) && '_default' !== $aField['section_id'] ? 'field_' . $this->oProp->sClassName . '_' . $aField['section_id'] . '_' . $_sFieldID : 'field_' . $this->oProp->sClassName . '_' . $_sFieldID), $_sFieldOutput, $aField); }
/** * Returns the output of the given field. * * @since 3.0.0 * @since 3.3.1 Moved from `AdminPageFramework_Setting_Base`. * @internal */ public function _replyToGetFieldOutput($aField) { $_sCurrentPageSlug = isset($_GET['page']) ? $_GET['page'] : null; $_sSectionID = isset($aField['section_id']) ? $aField['section_id'] : '_default'; $_sFieldID = $aField['field_id']; // If the specified field does not exist, do nothing. if ($aField['page_slug'] != $_sCurrentPageSlug) { return ''; } // Retrieve the field error array. $this->aFieldErrors = isset($this->aFieldErrors) ? $this->aFieldErrors : $this->_getFieldErrors($_sCurrentPageSlug); // Render the form field. $sFieldType = isset($this->oProp->aFieldTypeDefinitions[$aField['type']]['hfRenderField']) && is_callable($this->oProp->aFieldTypeDefinitions[$aField['type']]['hfRenderField']) ? $aField['type'] : 'default'; // the predefined reserved field type is applied if the parsing field type is not defined(not found). $_aTemp = $this->getSavedOptions(); // assigning a variable for the strict standard $_oField = new AdminPageFramework_FormField($aField, $_aTemp, $this->aFieldErrors, $this->oProp->aFieldTypeDefinitions, $this->oMsg); $_sFieldOutput = $_oField->_getFieldOutput(); // field output unset($_oField); // release the object for PHP 5.2.x or below. return $this->oUtil->addAndApplyFilters($this, array(isset($aField['section_id']) && $aField['section_id'] != '_default' ? 'field_' . $this->oProp->sClassName . '_' . $aField['section_id'] . '_' . $_sFieldID : 'field_' . $this->oProp->sClassName . '_' . $_sFieldID), $_sFieldOutput, $aField); }
/** * Returns the field output from the given field definition array. * * @remark This method will be called multiple times in a single page load depending on how many fields have been registered. * @since 3.0.0 * @internal */ public function _replyToGetFieldOutput($aField) { $_oField = new AdminPageFramework_FormField($aField, $this->oProp->aOptions, $this->_getFieldErrors(), $this->oProp->aFieldTypeDefinitions, $this->oMsg, $this->oProp->aFieldCallbacks); return $this->oUtil->addAndApplyFilters($this, array('field_' . $this->oProp->sClassName . '_' . $aField['field_id']), $_oField->_getFieldOutput(), $aField); }