public static function getDefinitions() { if (is_null(self::$definitions)) { jimport('joomla.filesystem.file'); $definitions = array(); $types = self::getTypes(); foreach ($types as $type) { $extraField = new K2ExtraFields(array('id' => null, 'type' => '', 'value' => '')); $extraField->type = $type; $definitions[$type] = $extraField->getDefinition(); } self::$definitions = $definitions; } return self::$definitions; }
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; }
protected function setFormFields(&$form, $row) { $form->state = K2HelperHTML::state('state', $row->state, false, false, 'radio', true); $form->group = K2HelperHTML::extraFieldsGroups('group', $row->group); $form->type = K2HelperHTML::extraFieldsTypes('type', $row->type, 'K2_SELECT_TYPE'); $definitions = K2HelperExtraFields::getDefinitions(); if ($row->id) { $definitions[$row->type] = $row->getDefinition(); } $form->definitions = $definitions; }
protected function setFormFields(&$form, $row) { require_once JPATH_ADMINISTRATOR . '/components/com_k2/helpers/html.php'; $form->state = K2HelperHTML::state('state', $row->state, false, false, 'radio', true); require_once JPATH_ADMINISTRATOR . '/components/com_k2/helpers/extrafields.php'; $form->extraFields = K2HelperExtraFields::getTagExtraFieldsGroups($row->extra_fields); }
public function getExtraFieldsGroups() { $groups = array(); if ($this->id) { $groups = K2HelperExtraFields::getCategoryExtraFieldsGroups($this->extra_fields); } return $groups; }
public function getExtraFieldsGroups() { $groups = array(); if ($this->id) { $user = JFactory::getUser($this->id); $usergroups = $user->getAuthorisedGroups(); $groups = K2HelperExtraFields::getUserExtraFieldsGroups($this->extra_fields); } return $groups; }
/** * Hook for children views to allow them attach fields to the form object. * Children views usually should override this method. * * @return void */ protected function setFormFields(&$_form, $row) { $language = JFactory::getLanguage(); $language->load('', JPATH_ADMINISTRATOR); $language->load('com_users', JPATH_ADMINISTRATOR); // Import JForm jimport('joomla.form.form'); // Determine form name and path $formName = 'K2' . ucfirst($this->getName()) . 'Form'; $formPath = JPATH_ADMINISTRATOR . '/components/com_users/models/forms/user.xml'; // Convert JRegistry instances to plain object so JForm can bind them if ($row->id) { $row->params = $row->params->toObject(); } // Get the form instance $form = JForm::getInstance($formName, $formPath); // Bind values $form->bind($row); $form->setValue('password', null); $form->setValue('password2', null); // Attach the JForm fields to the form foreach ($form->getFieldsets() as $fieldset) { $array = array(); foreach ($form->getFieldset($fieldset->name) as $field) { $tmp = new stdClass(); $tmp->label = $field->label; $tmp->input = $field->input; $array[$field->name] = $tmp; } $name = $fieldset->name; $_form->{$name} = $array; } JModelLegacy::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_users/models'); $model = JModelLegacy::getInstance('User', 'UsersModel'); if ($row->id) { $assignedGroups = $model->getAssignedGroups($row->id); } else { $assignedGroups = null; } $_form->groups = JHtml::_('access.usergroups', 'groups', $assignedGroups, true); require_once JPATH_ADMINISTRATOR . '/components/com_k2/helpers/html.php'; $_form->gender = K2HelperHTML::gender('gender', $row->gender); require_once JPATH_ADMINISTRATOR . '/components/com_k2/helpers/extrafields.php'; $_form->extraFields = K2HelperExtraFields::getUserExtraFieldsGroups($row->extra_fields); require_once JPATH_ADMINISTRATOR . '/components/com_k2/classes/editor.php'; $config = JFactory::getConfig(); $editor = K2Editor::getInstance($config->get('editor')); $_form->description = $editor->display('description', $row->description, '100%', '300', '40', '5'); }
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; }
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->parent = K2HelperHTML::categories('parent_id', $row->parent_id, 'K2_NONE', $row->id); $form->inheritance = K2HelperHTML::categories('inheritance', $row->inheritance, 'K2_NONE', $row->id, '', false, 'id', true); $form->template = K2HelperHTML::template('template', $row->template); require_once JPATH_ADMINISTRATOR . '/components/com_k2/classes/editor.php'; $config = JFactory::getConfig(); $editor = K2Editor::getInstance($config->get('editor')); $form->description = $editor->display('description', $row->description, '100%', '300', '40', '5'); require_once JPATH_ADMINISTRATOR . '/components/com_k2/helpers/extrafields.php'; $form->extraFields = K2HelperExtraFields::getCategoryExtraFieldsGroups($row->extra_fields); // 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; }
public static function extraFieldsTypes($name = 'extra_fields_type', $value = null, $none = false, $attributes = '') { $options = array(); if ($none) { $options[] = JHtml::_('select.option', '', JText::_($none)); } require_once JPATH_ADMINISTRATOR . '/components/com_k2/helpers/extrafields.php'; $rows = K2HelperExtraFields::getTypes(); foreach ($rows as $row) { $options[] = JHtml::_('select.option', $row, JText::_('K2_EXTRA_FIELD_TYPE_' . strtoupper($row))); } return JHtml::_('select.genericlist', $options, $name, $attributes, 'value', 'text', $value); }