public function render() { require_once JPATH_ADMINISTRATOR . '/components/com_k2/helpers/extrafields.php'; $input = JFactory::getApplication()->input; $scope = $input->get('scope', '', 'cmd'); $resourceId = $input->get('resourceId', 0, 'int'); $filterId = $input->get('filterId', 0, 'raw'); if ($scope == 'item') { require_once JPATH_ADMINISTRATOR . '/components/com_k2/resources/items.php'; $item = K2Items::getInstance($resourceId); $values = $item->extra_fields; $fields = K2HelperExtraFields::getItemExtraFieldsGroups((int) $filterId, $values); } else { if ($scope == 'category') { require_once JPATH_ADMINISTRATOR . '/components/com_k2/resources/categories.php'; $category = K2Categories::getInstance($resourceId); $values = $category->extra_fields; $fields = K2HelperExtraFields::getCategoryExtraFieldsGroups($values); } else { if ($scope == 'user') { require_once JPATH_ADMINISTRATOR . '/components/com_k2/resources/users.php'; $user = K2Users::getInstance($resourceId); $values = $user->extra_fields; $fields = K2HelperExtraFields::getUserExtraFieldsGroups($values); } else { if ($scope == 'tag') { require_once JPATH_ADMINISTRATOR . '/components/com_k2/resources/tags.php'; $tag = K2Tags::getInstance($resourceId); $values = $tag->extra_fields; $fields = K2HelperExtraFields::getTagExtraFieldsGroups($values); } } } } echo json_encode($fields); return $this; }
public function getExtraFieldsGroups() { $groups = array(); if ($this->id) { $groups = K2HelperExtraFields::getItemExtraFieldsGroups($this->catid, $this->extra_fields); } return $groups; }
protected function setFormFields(&$form, $row) { $form->state = K2HelperHTML::state('state', $row->state, false, true, 'radio', true); $form->language = K2HelperHTML::language('language', $row->language); $form->access = JHtml::_('access.level', 'access', $row->access, '', false); $form->category = K2HelperHTML::categories('catid', $row->catid, 'K2_SELECT_CATEGORY'); require_once JPATH_ADMINISTRATOR . '/components/com_k2/classes/editor.php'; $config = JFactory::getConfig(); $editor = K2Editor::getInstance($config->get('editor')); $params = JComponentHelper::getParams('com_k2'); if ($params->get('mergeEditors')) { $value = trim($row->fulltext) != '' ? $row->introtext . '<hr id="system-readmore" />' . $row->fulltext : $row->introtext; $form->text = $editor->display('text', $value, '100%', '300', '40', '5'); } else { $form->introtext = $editor->display('introtext', $row->introtext, '100%', '300', '40', '5', array('readmore')); $form->fulltext = $editor->display('fulltext', $row->fulltext, '100%', '300', '40', '5', array('readmore')); } require_once JPATH_ADMINISTRATOR . '/components/com_k2/helpers/extrafields.php'; $form->extraFields = K2HelperExtraFields::getItemExtraFieldsGroups($row->catid, $row->extra_fields); $form->mediaProviders = K2HelperHtml::mediaProviders(); // Associations $associations = new stdClass(); $associations->enabled = JLanguageAssociations::isEnabled(); $associations->languages = array(); if ($associations->enabled) { $languages = JLanguageHelper::getLanguages('lang_code'); foreach ($languages as $tag => $language) { if (empty($row->language) || $tag != $row->language) { $lang = new stdClass(); $lang->title = $language->title; $lang->code = $language->lang_code; $lang->associated = new stdClass(); $lang->associated->title = ''; $lang->associated->id = ''; if (isset($row->associations) && is_array($row->associations) && isset($row->associations[$language->lang_code])) { $associated = $row->associations[$language->lang_code]; $lang->associated->title = $associated->title; $lang->associated->id = (int) $associated->id; } $associations->languages[] = $lang; } } } $form->associations = $associations; }