Пример #1
0
/**
 * Get an array of type_subtype_pairs for using in global map search getter
 * @return array
 */
function get_mappable_type_subtype_pairs()
{
    $type_subtype_pairs = array();
    if (elgg_get_plugin_setting('search_users', PLUGIN_ID)) {
        $type_subtype_pairs['user'] = '';
    }
    if (elgg_get_plugin_setting('search_groups', PLUGIN_ID)) {
        $type_subtype_pairs['group'] = '';
    }
    if (elgg_get_plugin_setting('search_objects', PLUGIN_ID)) {
        $type_subtype_pairs['object'] = get_mappable_object_subtypes();
    }
    return $type_subtype_pairs;
}
Пример #2
0
/**
 * Setup group maps
 *
 * @param string $hook
 * @param string $type
 * @param array $return
 * @param array $params
 * @return string
 */
function setup_group_search_maps($hook, $type, $return, $params)
{
    $group = elgg_extract('entity', $params);
    if (!elgg_instanceof($group, 'group')) {
        return $return;
    }
    if (elgg_get_plugin_setting('search_group_members', PLUGIN_ID)) {
        $return['group_members'] = array('title' => elgg_echo('maps:search:group_members'), 'options' => array('id' => "group-members-{$group->guid}", 'types' => 'user', 'relationship' => 'member', 'relationship_guid' => $group->guid, 'inverse_relationship' => true), 'getter' => 'elgg_get_entities_from_relationship', 'access' => 'logged_in');
    }
    if (elgg_get_plugin_setting('search_group_content', PLUGIN_ID)) {
        $return['group_content'] = array('title' => elgg_echo('maps:search:group_content'), 'options' => array('id' => "group-content-{$group->guid}", 'types' => 'object', 'subtypes' => get_mappable_object_subtypes(), 'container_guids' => $group->guid), 'getter' => 'elgg_get_entities', 'access' => 'logged_in');
    }
    return $return;
}
Пример #3
0
<?php

namespace hypeJunction\Maps;

$subtypes = array_intersect(get_mappable_object_subtypes(), get_input('mappable_subtypes', array()));
if (!count($subtypes)) {
    $subtypes = get_mappable_object_subtypes();
}
$vars['options']['subtypes'] = $subtypes;
echo ElggMap::showMap($vars);