Esempio n. 1
0
/**
 * Replace entity icon URL if entity has an avatar
 *
 * @param string $hook   "entity:icon:url"
 * @param string $type   "all"
 * @param string $return Icon URL
 * @param array  $params Hook params
 * @return array
 */
function avatars_entity_icon_url_handler($hook, $type, $return, $params)
{
    $entity = elgg_extract('entity', $params);
    $size = elgg_extract('size', $params);
    if (!avatars_enabled($entity->getType(), $entity->getSubtype())) {
        return;
    }
    $avatar = avatars_get_avatar($entity);
    if ($avatar) {
        return $avatar->getIconURL($size);
    }
}
Esempio n. 2
0
<?php

elgg_push_context('avatars/upload');
$container_guid = elgg_extract('container_guid', $vars);
if (!$container_guid) {
    $container_guid = elgg_get_logged_in_user_guid();
}
$container = get_entity($container_guid);
if (!$container) {
    forward('', '404');
}
if (!avatars_enabled($container->getType(), $container->getSubtype()) || !$container->canWriteToContainer(0, 'object', hypeJunction\Images\Avatar::SUBTYPE)) {
    forward('', '403');
}
elgg_set_page_owner_guid($container->guid);
elgg_group_gatekeeper();
elgg_push_breadcrumb(elgg_echo('avatars'), '/avatars/all');
elgg_push_breadcrumb($container->getDisplayName(), $container->getURL());
$title = elgg_echo('avatars:upload');
elgg_push_breadcrumb($title);
if (elgg_is_sticky_form('avatars/upload')) {
    $sticky_values = elgg_get_sticky_values('avatars/upload');
    if (is_array($sticky_values)) {
        $vars = array_merge($vars, $sticky_values);
    }
}
$vars['container_guid'] = $container->guid;
$content = elgg_view_form('avatars/upload', ['enctype' => 'multipart/form-data', 'validate' => true], $vars);
$body = elgg_view_layout('content', ['content' => $content, 'title' => $title, 'filter' => elgg_view('filters/avatars/edit', ['filter_context' => 'upload', 'container' => $container])]);
echo elgg_view_page($title, $body);