示例#1
0
 * @uses $vars['multiple'] If set to true, input type will be set to checkbox, otherwise radio
 * @uses $vars['required'] For now, this will be ignored as HTML spec does not provide clear guidelines
 */
namespace hypeJunction\Categories;

elgg_load_js('categories.tree.js');
elgg_push_context('categories-input');
$entity = elgg_extract('entity', $vars, false);
$name = 'categories';
if (isset($vars['name_override'])) {
    $name = elgg_extract('name_override', $vars);
}
$multiple = elgg_extract('multiple', $vars, HYPECATEGORIES_INPUT_MULTIPLE);
$required = elgg_extract('required', $vars, true);
$value = elgg_extract('value', $vars, false);
if (elgg_instanceof($entity)) {
    $value = get_entity_categories($entity->guid, array(), true);
}
$page_owner = elgg_get_page_owner_entity();
if (!elgg_instanceof($page_owner, 'group') || !HYPECATEGORIES_GROUP_CATEGORIES) {
    $page_owner = elgg_get_site_entity();
}
/*echo elgg_view('input/hidden', array(
	'name' => "{$name}",
	'value' => true,
	'required' => $required
));*/
echo '<div class="categories-input">';
echo elgg_view_menu('categories', array('entity' => $page_owner, 'sort_by' => 'priority', 'input' => array('name' => $name, 'value' => $value, 'multiple' => $multiple)));
echo '</div>';
elgg_pop_context();
示例#2
0
<?php

/**
 * Categories
 *
 * @uses $vars['value']   Array of category GUIDs
 * @uses $vars['type']    The entity type, optional
 * @uses $vars['subtype'] The entity subtype, optional
 * @uses $vars['entity']  Optional. Entity whose categories are being displayed
 * @uses $vars['list_class'] Optional. Additional classes to be passed to <ul> element
 * @uses $vars['item_class'] Optional. Additional classes to be passed to <li> elements
 */
namespace hypeJunction\Categories;

if (isset($vars['entity'])) {
    $vars['categories'] = get_entity_categories($vars['entity']->guid);
    unset($vars['entity']);
}
if (!empty($vars['type'])) {
    $type = "&type=" . rawurlencode($vars['type']);
} else {
    $type = "";
}
if (!empty($vars['subtype'])) {
    $subtype = "&subtype=" . rawurlencode($vars['subtype']);
} else {
    $subtype = "";
}
if (empty($vars['categories']) && !empty($vars['value'])) {
    if (!is_array($vars['value'])) {
        $vars['value'] = string_to_tag_array($vars['value']);