예제 #1
0
<?php

$user = elgg_extract('entity', $vars, elgg_get_page_owner_entity());
if (!$user) {
    forward('', '404');
}
if (!user_friends_can_view_friends($user)) {
    register_error(elgg_echo('user:friends:no_access'));
    forward('friends');
}
elgg_push_breadcrumb(elgg_echo('friends'), 'friends');
elgg_push_breadcrumb($user->getDisplayName(), "friends/{$user->username}");
if ($user->guid == elgg_get_logged_in_user_guid()) {
    $title = elgg_echo('friends:yours');
} else {
    $title = elgg_echo('friends:owned', array($user->getDisplayName()));
}
$filter = elgg_view('filters/friends', array('filter_context' => 'index', 'entity' => $user));
$content = elgg_view('lists/friends', array('entity' => $user));
$layout = elgg_view_layout('content', array('title' => $title, 'content' => $content, 'filter' => $filter));
echo elgg_view_page($title, $layout);
예제 #2
0
/**
 * Prevents the widget from showing friends if friend visibility criteria is not met
 * 
 * @param string $hook   "view"
 * @param string $type   "widgets/friends/content"
 * @param string $return View
 * @param array  $params Hook params
 * @return string
 */
function user_friends_friends_widget_access($hook, $type, $return, $params)
{
    $vars = elgg_extract('vars', $params);
    $entity = elgg_extract('entity', $vars);
    if (!$entity instanceof ElggWidget) {
        return;
    }
    $owner = $entity->getOwnerEntity();
    if (!user_friends_can_view_friends($owner)) {
        return elgg_format_element('p', ['class' => 'elgg-no-results'], elgg_echo('user:friends:no_access'));
    }
}
예제 #3
0
<?php

$size = elgg_extract('size', $vars, 'small');
$entity = elgg_extract('entity', $vars);
if (!$entity instanceof ElggUser) {
    return;
}
$subtitle = array();
$friend_count = $entity->getVolatileData('select:friend_count');
if (isset($friend_count)) {
    if (user_friends_can_view_friends($entity)) {
        $subtitle['friend_count'] = elgg_echo('user:friends:count', [$friend_count]);
    }
}
//$subtitle[] = elgg_echo('user:friends:member_since', [date('j M, Y', $entity->time_created)]);
$last_action = max($entity->last_action, $entity->last_login, $entity->time_created);
if ($last_action) {
    $subtitle['last_action'] = elgg_echo('user:friends:last_action', [elgg_get_friendly_time($last_action)]);
}
$menu_params = $vars;
$menu_params['sort_by'] = 'priority';
$menu = elgg_view_menu('membership', $menu_params);
$metadata = '';
if (!elgg_in_context('widgets')) {
    $menu_params['class'] = 'elgg-menu-hz';
    $metadata = elgg_view_menu('entity', $menu_params);
}
$title = null;
$query = elgg_extract('query', $vars, get_input('query'));
if ($query && elgg_is_active_plugin('search')) {
    $name = search_get_highlighted_relevant_substrings($entity->getDisplayName(), $query);