/** * List friends' chats that user is member of. * * @param int $user_guid GUID of the user * @return array */ function chat_friends($user_guid) { $user = get_user($user_guid); if (!$user) { forward('chat/all'); } $params = array(); $params['filter_context'] = 'friends'; $params['title'] = elgg_echo('chat:title:friends'); $crumbs_title = $user->name; elgg_push_breadcrumb($crumbs_title, "chat/owner/{$user->username}"); elgg_push_breadcrumb(elgg_echo('friends')); elgg_register_title_button(); $options = array('type' => 'object', 'subtype' => 'chat', 'relationship' => 'member', 'relationship_guid' => $user_guid, 'inverse_relationship' => false, 'limit' => 10, 'pagination' => true, 'full_view' => false); if ($friends = get_user_friends($user_guid, ELGG_ENTITIES_ANY_VALUE, 0)) { foreach ($friends as $friend) { $options['container_guids'][] = $friend->getGUID(); } $params['content'] = elgg_list_entities_from_relationship($options); } if (empty($params['content'])) { $params['content'] = elgg_echo('chat:none'); } return $params; }
/** * Get page components to list of the user's friends' podcasts. * * @param int $user_guid * * @return array */ function podcasts_get_page_content_friends($user_guid) { $user = get_user($user_guid); if (!$user) { forward('podcast/all'); } $return = array(); $return['filter_context'] = 'friends'; $return['title'] = elgg_echo('podcasts:title:friends'); $crumbs_title = $user->name; elgg_push_breadcrumb($crumbs_title, "podcast/owner/{$user->username}"); elgg_push_breadcrumb(elgg_echo('friends')); elgg_register_title_button(); set_input('show_podcast_container', 1); if (!($friends = get_user_friends($user_guid, ELGG_ENTITIES_ANY_VALUE, 0))) { $return['content'] .= elgg_echo('friends:none:you'); return $return; } else { $options = array('type' => 'object', 'subtype' => 'podcast', 'full_view' => FALSE, 'podcast_list_class' => 'elgg-list-podcast-episodes', 'podcast_item_class' => 'elgg-podcast-episode'); foreach ($friends as $friend) { $options['container_guids'][] = $friend->getGUID(); } $return['content'] = elgg_list_entities($options, 'elgg_get_entities_from_metadata', 'podcasts_list'); } return $return; }
$subtype = get_input('subtype'); if (!($objecttype = get_input('object'))) { $objecttype = ""; } if (!($md_type = get_input('tagtype'))) { $md_type = ""; } $owner_guid = get_input('owner_guid', 0); if (substr_count($owner_guid, ',')) { $owner_guid_array = explode(",", $owner_guid); } else { $owner_guid_array = $owner_guid; } $friends = (int) get_input('friends', 0); if ($friends > 0) { if ($friends = get_user_friends($friends, '', 9999)) { $owner_guid_array = array(); foreach ($friends as $friend) { $owner_guid_array[] = $friend->guid; } } else { $owner_guid = -1; } } // Set up submenus if ($object_types = get_registered_entity_types()) { foreach ($object_types as $object_type => $subtype_array) { if (is_array($subtype_array) && sizeof($subtype_array)) { foreach ($subtype_array as $object_subtype) { $label = 'item:' . $object_type; if (!empty($object_subtype)) {
/** * Returns a list of filetypes to search specifically on * * @param int|array $owner_guid The GUID(s) of the owner(s) of the files * @param true|false $friends Whether we're looking at the owner or the owner's friends * @return string The typecloud */ function get_filetype_cloud($owner_guid = "", $friends = false) { if ($friends) { if ($friendslist = get_user_friends($user_guid, $subtype, 999999, 0)) { $friendguids = array(); foreach ($friendslist as $friend) { $friendguids[] = $friend->getGUID(); } } $friendofguid = $owner_guid; $owner_guid = $friendguids; } else { $friendofguid = false; } return elgg_view('file/typecloud', array('owner_guid' => $owner_guid, 'friend_guid' => $friendofguid, 'types' => get_tags(0, 10, 'simpletype', 'object', 'file', $owner_guid))); }
/** * Retrieves a list of this user's friends * * @param string $subtype Optionally, the subtype of user to filter to (leave blank for all) * @param int $limit The number of users to retrieve * @param int $offset Indexing offset, if any * @return array|false Array of ElggUsers, or false, depending on success */ function getFriends($subtype = "", $limit = 10, $offset = 0) { return get_user_friends($this->getGUID(), $subtype, $limit, $offset); }
$service_list = get_user_services($user_id); // 获取顾客服务记录 $addr_list = get_addr_list($user_id); // 顾客地址列表 $contact_list = get_contact_list($user_id); // 顾客联系方式列表 $user_info = get_user_info($user_id); // 获取顾客基本资料 $mem = new Memcache(); $mem->connect('127.0.0.1', 11211); if (!$mem->get("freeze_{$_SESSION['admin_id']}")) { $contact_list = get_contact_list($user_id); // 顾客联系方式列表 } //$return_list = get_return_list($user_id); // 获取顾客的退货记录 $user_friends = get_user_friends($user_id); //$case = get_before_case(); //既往病例 //获取家长成员 if ($user_info['family_id'] != 0) { $sql_select = 'SELECT u.user_id,u.user_name,u.mobile_phone,u.home_phone,g.grade_name,g.grade_id,f.family_name,m.input_time,m.real_parent FROM ' . $GLOBALS['ecs']->table('user_family_member') . ' AS m LEFT JOIN ' . $GLOBALS['ecs']->table('users') . ' AS u ON u.user_id=m.user_id LEFT JOIN ' . $GLOBALS['ecs']->table('user_family_grade') . ' AS g ON m.grade_id=g.grade_id LEFT JOIN ' . $GLOBALS['ecs']->table('user_family') . ' AS f ON u.family_id=f.family_id ' . 'WHERE m.family_id=' . $user_info['family_id'] . ' AND m.status=0 AND g.type=0'; $family_users = $GLOBALS['db']->getAll($sql_select); $family = array('family_name' => $family_users[0]['family_name'], 'family_total' => count($family_users)); $smarty->assign('family', $family); for ($i = 0; $i < count($family_users); $i++) { //$sql_select = 'SELECT COUNT(*) FROM '.$GLOBALS['ecs']->table('other_examination_test'). // " WHERE user_id={$family_users[$i]['user_id']}"; //$family_users[$i]['healthy_file'] = $GLOBALS['db']->getOne($sql_select); $family_users[$i]['input_time'] = date('Y-m-d', $family_users[$i]['input_time']); } $smarty->assign('family_users', $family_users); }
function polls_get_page_list($page_type, $container_guid = NULL) { global $autofeed; $autofeed = TRUE; $user = elgg_get_logged_in_user_entity(); $params = array(); $options = array('type' => 'object', 'subtype' => 'poll', 'full_view' => FALSE, 'limit' => 15); if ($page_type == 'group') { $group = get_entity($container_guid); if (!elgg_instanceof($group, 'group') || !polls_activated_for_group($group)) { forward(); } $params['title'] = elgg_echo('polls:group_polls:listing:title', array(htmlspecialchars($group->name))); $params['filter'] = ""; // set breadcrumb elgg_push_breadcrumb(elgg_echo("gvgroups:" . $group->grouptype . "groups"), "groups/" . $group->grouptype); elgg_push_breadcrumb($group->name, "polls/group/" . $group->guid); elgg_push_context('groups'); elgg_set_page_owner_guid($container_guid); group_gatekeeper(); $options['container_guid'] = $container_guid; $user_guid = elgg_get_logged_in_user_guid(); if (elgg_get_page_owner_entity()->canWriteToContainer($user_guid)) { elgg_register_menu_item('title', array('name' => 'add', 'href' => "polls/add/" . $container_guid, 'text' => elgg_echo('polls:add'), 'class' => 'elgg-button elgg-button-action')); } } else { switch ($page_type) { case 'owner': $options['owner_guid'] = $container_guid; $container_entity = get_user($container_guid); elgg_push_breadcrumb(elgg_echo("menu:home"), "dashboard"); elgg_push_breadcrumb($container_entity->name, "polls/owner/" . $container_entity->username); if ($user->guid == $container_guid) { $params['title'] = elgg_echo('polls:your'); $params['filter_context'] = 'mine'; } else { $params['title'] = elgg_echo('polls:not_me', array(htmlspecialchars($container_entity->name))); $params['filter_context'] = ""; } break; case 'friends': $container_entity = get_user($container_guid); $friends = get_user_friends($container_guid, ELGG_ENTITIES_ANY_VALUE, 0); $options['container_guids'] = array(); foreach ($friends as $friend) { $options['container_guids'][] = $friend->getGUID(); } $params['filter_context'] = 'friends'; $params['title'] = elgg_echo('polls:friends'); elgg_push_breadcrumb(elgg_echo("menu:home"), "dashboard"); elgg_push_breadcrumb($container_entity->name, "polls/owner/" . $container_entity->username); elgg_push_breadcrumb(elgg_echo('friends')); break; case 'all': elgg_push_breadcrumb(elgg_echo("menu:home"), "dashboard"); elgg_push_breadcrumb(elgg_echo("polls")); $params['filter_context'] = 'all'; $params['title'] = elgg_echo('item:object:poll'); break; } $polls_site_access = elgg_get_plugin_setting('site_access', 'polls'); if (elgg_is_logged_in() && $polls_site_access != 'admins' || elgg_is_admin_logged_in()) { elgg_register_menu_item('title', array('name' => 'add', 'href' => "polls/add", 'text' => elgg_echo('polls:add'), 'class' => 'elgg-button elgg-button-action')); } } if ($page_type == 'friends' && count($options['container_guids']) == 0) { // this person has no friends $params['content'] = ''; } else { $params['content'] = elgg_list_entities($options); } if (!$params['content']) { $params['content'] = elgg_echo('polls:none'); } $params['sidebar'] = elgg_view('polls/sidebar', array('page' => $page_type)); $body = elgg_view_layout("content", $params); return elgg_view_page($params['title'], $body); }
/** * Counts the number of objects owned by a user's friends * * @param int $user_guid The GUID of the user to get the friends of * @param string $subtype Optionally, the subtype of objects * @param int $timelower The earliest time the entity can have been created. Default: all * @param int $timeupper The latest time the entity can have been created. Default: all * * @return int The number of objects */ function count_user_friends_objects($user_guid, $subtype = ELGG_ENTITIES_ANY_VALUE, $timelower = 0, $timeupper = 0) { if ($friends = get_user_friends($user_guid, "", 999999, 0)) { $friendguids = array(); foreach ($friends as $friend) { $friendguids[] = $friend->getGUID(); } return elgg_get_entities(array('type' => 'object', 'subtype' => $subtype, 'owner_guids' => $friendguids, 'count' => TRUE, 'container_guids' => $friendguids, 'created_time_lower' => $timelower, 'created_time_upper' => $timeupper)); } return 0; }
<div class="elgg-module elgg-module-info mobilehide"> <div class="elgg-head"> <h3> <?php echo elgg_echo('notifications:subscriptions:title'); ?> </h3> </div> <p> <?php echo elgg_echo('notifications:subscriptions:description'); ?> </p> <?php // Get friends and subscriptions $friends = get_user_friends($user->guid, '', 9999, 0); global $NOTIFICATION_HANDLERS; foreach ($NOTIFICATION_HANDLERS as $method => $foo) { $subsbig[$method] = elgg_get_entities_from_relationship(array('relationship' => 'notify' . $method, 'relationship_guid' => $user->guid, 'type' => 'user', 'limit' => false)); } $subs = array(); foreach ($subsbig as $method => $big) { if (is_array($subsbig[$method]) && sizeof($subsbig[$method])) { foreach ($subsbig[$method] as $u) { $subs[$method][] = $u->guid; } } } // Let the system know that the friends picker is in use global $pickerinuse; $pickerinuse = true;
/** * List all the albums of someone's friends * * @author Cash Costello * @license http://www.gnu.org/licenses/gpl-2.0.html GNU General Public License v2 */ gatekeeper(); $owner = elgg_get_page_owner_entity(); elgg_push_breadcrumb(elgg_echo('photos'), 'photos/siteimagesall'); elgg_push_breadcrumb(elgg_echo('tidypics:albums'), 'photos/all'); elgg_push_breadcrumb($owner->name, "photos/friends/{$owner->username}"); elgg_push_breadcrumb(elgg_echo('friends')); $title = elgg_echo('album:friends'); $offset = (int) get_input('offset', 0); $limit = (int) get_input('limit', 16); if ($friends = get_user_friends($owner->guid, "", false, 0)) { $friendguids = array(); foreach ($friends as $friend) { $friendguids[] = $friend->getGUID(); } $result = elgg_list_entities(array('type' => 'object', 'subtype' => 'album', 'owner_guids' => $friendguids, 'limit' => $limit, 'offset' => $offset, 'full_view' => false, 'pagination' => true, 'list_type' => 'gallery', 'list_type_toggle' => false, 'gallery_class' => 'tidypics-gallery')); if (!empty($result)) { $area2 = $result; } else { $area2 = elgg_echo("tidypics:none"); } } else { $area2 = elgg_echo("friends:none:you"); } $logged_in_guid = elgg_get_logged_in_user_guid(); elgg_register_menu_item('title', array('name' => 'addphotos', 'href' => "ajax/view/photos/selectalbum/?owner_guid=" . $logged_in_guid, 'text' => elgg_echo("photos:addphotos"), 'link_class' => 'elgg-button elgg-button-action elgg-lightbox'));
<?php /** * Elgg add a collection of friends * * @package Elgg.Core * @subpackage Social.Collections */ // You need to be logged in for this one gatekeeper(); $title = elgg_echo('friends:collections:add'); $content = elgg_view_title($title); $content .= elgg_view_form('friends/collections/add', array(), array('friends' => get_user_friends(elgg_get_logged_in_user_guid(), "", 9999))); $body = elgg_view_layout('one_sidebar', array('content' => $content)); echo elgg_view_page(elgg_echo('friends:collections:add'), $body);
* * Elgg-markdown_wiki friend's markdown_wiki page **/ $offset = (int) get_input('offset', 0); $timelower = (int) get_input('timelower', 0); $timeupper = (int) get_input('timeupper', 0); $owner = elgg_get_logged_in_user_entity(); if (!$owner) { forward('markdown_wiki/all'); } elgg_push_breadcrumb($owner->name, "markdown_wiki/owner/{$owner->username}"); elgg_push_breadcrumb(elgg_echo('friends')); $title = elgg_echo('markdown_wiki:friends'); //$content = list_user_friends_objects($owner->guid, 'markdown_wiki', 10, false); /* list_user_friends_objects check for friend object with strange config with container_guid. * We have to rewrite it */ if ($friends = get_user_friends($owner->guid, "", 999999, 0)) { $friendguids = array(); foreach ($friends as $friend) { $friendguids[] = $friend->getGUID(); } $content = elgg_list_entities_from_annotations(array('type' => 'object', 'subtype' => 'markdown_wiki', 'annotation_owner_guids' => $friendguids, 'full_view' => false, 'limit' => '20', 'offset' => $offset, 'created_time_lower' => $timelower, 'created_time_upper' => $timeupper)); } if (!$content) { $content = elgg_echo('markdown_wiki:none'); } $sidebar = elgg_view('markdown_wiki/sidebar/sidebar'); $params = array('filter_context' => 'friends', 'content' => $content, 'title' => $title, 'sidebar' => $sidebar); $body = elgg_view_layout('content', $params); echo elgg_view_page($title, $body);
} else { elgg_push_breadcrumb(elgg_echo('all')); } // title if (!$owner) { // world files $title = elgg_echo('all') . ' ' . elgg_echo("file:type:{$file_type}"); } else { $friend_string = $friends ? elgg_echo('file:title:friends') : ''; $type_string = elgg_echo("file:type:{$file_type}"); $title = elgg_echo('file:list:title', array($owner->name, $friend_string, $type_string)); } $sidebar = file_get_type_cloud($page_owner_guid, $friends); if ($friends) { // elgg_does not support getting objects that belong to an entity's friends $friend_entities = get_user_friends($page_owner_guid, "", 999999, 0); if ($friend_entities) { $friend_guids = array(); foreach ($friend_entities as $friend) { $friend_guids[] = $friend->getGUID(); } } $page_owner_guid = $friend_guids; } $limit = 10; if ($listtype == "gallery") { $limit = 12; } $params = array('types' => 'object', 'subtypes' => 'file', 'container_guid' => $page_owner_guid, 'limit' => $limit, 'full_view' => false); if ($file_type) { $params['metadata_name'] = $md_type;
function tasks_get_json($options) { $entities_options = array('type' => 'object', 'subtype' => 'task_top', 'limit' => false, 'metadata_name_value_pairs_operator' => 'OR', 'joins' => array(), 'wheres' => array(), 'order_by_metadata' => array("name" => 'start_date', "direction" => 'ASC', "as" => "text")); $oEntity = get_entity($options['owner']); if (elgg_instanceof($oEntity, 'group')) { $entities_options['container_guid'] = $options['owner']; } elseif ($options["owner"] && $options['filter'] == 'mine') { $entities_options['owner_guid'] = $options['owner']; $entities_options['container_guid'] = $options['owner']; } elseif ($options["owner"] && $options['filter'] == 'friends') { $friends = get_user_friends($options["owner"], "", 999999, 0); $friendguids = array(); foreach ($friends as $friend) { $friendguids[] = $friend->getGUID(); } $entities_options['owner_guid'] = $friendguids; } if (!empty($options['start_date'])) { $entities_options['metadata_name_value_pairs'][] = array('name' => 'start_date', 'value' => $options['start_date'], 'operand' => '>='); } if (!empty($options['end_date'])) { $entities_options['metadata_name_value_pairs'][] = array('name' => 'end_date', 'value' => $options['end_date'], 'operand' => '<='); } $tasks = elgg_get_entities_from_metadata($entities_options); $result = array(); foreach ($tasks as $task) { $oname = $task->getOwnerEntity()->name; $mine = $task->getOwnerGUID() == elgg_get_logged_in_user_entity()->guid; $friend = $task->getOwnerEntity()->isFriendsWith(elgg_get_logged_in_user_entity()->guid); $group = elgg_instanceof($task->getContainerEntity(), 'group'); $tag_string = ''; if (is_array($task->tags)) { $tags = array(); foreach ($task->tags as $tag) { if (is_string($tag)) { $tags[] = $tag; } else { $tags[] = $tag->value; } } $tag_string = implode(", ", $tags); } $result[] = array("id" => $task->guid, "container_guid" => $task->getContainerGUID(), "parent_guid" => $task->parent_guid, 'title' => $task->title, 'start' => $task->start_date, 'end' => $task->end_date, 'description' => $task->description, 'task_type' => $task->task_type, 'status' => $task->status, 'assigned_to' => $task->assigned_to, 'percent_done' => $task->percent_done, 'work_remaining' => $task->work_remaining, 'tags' => $tag_string, 'access_id' => $task->access_id, 'write_access_id' => $task->write_access_id, "oname" => $oname, "color" => $group ? 'DarkSlateBlue' : ($friend ? 'HotPink' : ($mine ? 'DarkGreen' : '')), "url" => elgg_get_site_url() . 'tasks/view/' . $task->guid, "editable" => $task->canEdit() ? 'true' : 'false'); } die(json_encode($result)); }
<?php /** * @package Elgg * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2 * @author Roger Curry, Grid Research Centre [curry@cpsc.ucalgary.ca] * @author Tingxi Tan, Grid Research Centre [txtan@cpsc.ucalgary.ca] * @link http://grc.ucalgary.ca/ */ define('everyonepublication', 'true'); require_once dirname(dirname(dirname(__FILE__))) . "/engine/start.php"; $page_owner = page_owner_entity(); if ($page_owner === false || is_null($page_owner)) { $page_owner = $_SESSION['user']; set_page_owner($_SESSION['guid']); } if (!$page_owner instanceof ElggEntity) { forward(); } if ($page_owner == $_SESSION['user']) { $area2 = elgg_view_title(elgg_echo('publication:friendsselect')); } else { $area2 = elgg_view_title($page_owner->username . "'s " . elgg_echo('publication:friends')); } $area2 .= '<div class="contentWrapper">'; $friends = get_user_friends($_SESSION['user']->guid, 'user', 9999); $area2 .= elgg_view('publication/friends_list', array('friends' => $friends, 'baseurl' => $_SERVER['REQUEST_URI'])); $area3 = elgg_view('publication/search'); $body = elgg_view_layout("two_column_left_sidebar", '', $area1 . $area2, $area3); page_draw(elgg_echo('publication:friends'), $body);
<?php /** * OpenSource-SocialNetwork * * @package (Informatikon.com).ossn * @author OSSN Core Team <*****@*****.**> * @copyright 2014 iNFORMATIKON TECHNOLOGIES * @license General Public Licence http://opensource-socialnetwork.com/licence * @link http://www.opensource-socialnetwork.com/licence */ echo '<div style="margin-left:3px;">'; $users['users'] = get_user_friends($params['user']->guid); echo ossn_view("system/templates/users", $users); echo '</div>';
<td class="<?php echo $method; ?> togglefield"><?php echo elgg_echo('notification:method:' . $method); ?> </td> <?php $i++; } ?> <td> </td> </tr> <?php $members = array(); if ($friends = get_user_friends($vars['user']->guid, '', 9999, 0)) { foreach ($friends as $friend) { $members[] = $friend->guid; } } $memberno = sizeof($members); $members = implode(',', $members); ?> <tr> <td class="namefield"> <p> <?php echo elgg_echo('friends:all'); ?> (<?php echo $memberno;
$submodule = $options['query']['0']; $template = 'user_favorite_' . $submodule; require 'modules/user/favorite_' . $submodule . '.php'; } else { session_write_close(); header('Location: ' . $config['BASE_URL'] . '/error/invalid_module'); die; } } else { $template = 'user_' . $module; require 'modules/user/' . $module . '.php'; } } else { $prefs = get_user_prefs($uid); $is_friend = is_friend($uid); $friends = get_user_friends($uid, $prefs['show_friends'], $is_friend); $playlist = get_user_playlist($uid, $prefs['show_playlist'], $is_friend); $favorites = get_user_favorites($uid, $prefs['show_favorites'], $is_friend); $subscriptions = get_user_subscriptions($uid, $prefs['show_subscriptions'], $is_friend); $subscribers = get_user_subscribers($uid, $prefs['show_subscribers'], $is_friend); $albums = get_user_albums($uid); $photos = get_user_favorite_photos($uid, $prefs['show_favorites'], $is_friend); $games = get_user_favorite_games($uid, $prefs['show_favorites'], $is_friend); $show_wall = false; $wall_public = $prefs['wall_public']; $walls = array(); $walls_total = 0; if ($wall_public == '1') { $show_wall = true; } else { if ($is_friend) {
/** * Displays a user's access collections, using the friends/collections view * * @param int $owner_guid The GUID of the owning user * @return string A formatted rendition of the collections */ function elgg_view_access_collections($owner_guid) { if ($collections = get_user_access_collections($owner_guid)) { foreach ($collections as $key => $collection) { $collections[$key]->members = get_members_of_access_collection($collection->id, true); $collections[$key]->entities = get_user_friends($owner_guid, "", 9999); } } return elgg_view('friends/collections', array('collections' => $collections)); }
<?php /** * Elgg default user view * * @package Elgg * @subpackage Core */ // @todo update when get_user_friends is deprecated in 1.9 $friends = get_user_friends(elgg_get_page_owner_guid(), $subtype = "", $limit = 10000, $offset = 0); foreach ($friends as $friend) { ?> <foaf:knows> <foaf:Person> <foaf:nick><?php echo $friend->username; ?> </foaf:nick> <foaf:name><?php echo $friend->name; ?> </foaf:name> <rdfs:seeAlso rdf:resource="<?php echo $friend->getURL() . "?view=foaf"; ?> " /> </foaf:Person> </foaf:knows> <?php
/** * Returns a list of filetypes * * @param int $container_guid The GUID of the container of the files * @param bool $friends Whether we're looking at the container or the container's friends * @return string The typecloud */ function file_get_type_cloud($container_guid = "", $friends = false) { $container_guids = $container_guid; if ($friends) { // tags interface does not support pulling tags on friends' content so // we need to grab all friends $friend_entities = get_user_friends($container_guid, "", 999999, 0); if ($friend_entities) { $friend_guids = array(); foreach ($friend_entities as $friend) { $friend_guids[] = $friend->getGUID(); } } $container_guids = $friend_guids; } elgg_register_tag_metadata_name('simpletype'); $options = array('type' => 'object', 'subtype' => 'file', 'container_guids' => $container_guids, 'threshold' => 0, 'limit' => 10, 'tag_names' => array('simpletype')); $types = elgg_get_tags($options); $params = array('friends' => $friends, 'types' => $types); return elgg_view('file/typecloud', $params); }
function pleio_api_get_sub_wikis($group_id = 0, $parent_id = 0, $user_id = 0, $offset = 0, $search = null, $filter = 0) { $total = 0; $offset = intval($offset); $list = array(); $user = elgg_get_logged_in_user_entity(); if ($filter == 1) { $user_id = $user->guid; } if (strlen($parent_id) == 32) { $swordfish_group = $parent_id; } else { $swordfish_group = $group_id ? pleio_api_swordfish_group($group_id) : false; } $url = false; if ($swordfish_group) { return pleio_api_get_swordfish_wikis($user, $group_id, $swordfish_group, $parent_id); } else { $wheres = array(); $joins = array(); if ($group_id) { $wheres[] = sprintf("e.container_guid = %d", $group_id); } if ($parent_id) { $more = elgg_get_entity_metadata_where_sql('e', 'metadata', null, null, array("name" => "parent_guid", "value" => (int) $parent_id)); $wheres = array_merge($wheres, $more["wheres"]); $joins = array_merge($joins, $more["joins"]); } if ($user_id) { $wheres[] = sprintf("e.owner_guid = %d", $user_id); } elseif ($filter == 2) { // friends $friends = get_user_friends($user->guid, "", 999999, 0); if (sizeof($friends)) { $wheres[] = " e.owner_guid IN (" . implode(",", array_map(create_function('$user', 'return $user->guid;'), $friends)) . ") "; } else { return array("total" => 0, "list" => array(), "offset" => $offset); } } if ($search) { $search = sanitise_string($search); $wheres[] = " (o.description LIKE '%%{$search}%%' OR o.title LIKE '%%{$search}%%') "; $joins[] = sprintf("INNER JOIN %sobjects_entity o on e.guid = o.guid", get_config("dbprefix")); } $options = array('type' => 'object', 'subtypes' => $parent_id ? array('page_top', 'page') : 'page_top', 'limit' => 20, 'offset' => $offset, 'count' => true, "wheres" => $wheres, "joins" => $joins); $total = elgg_get_entities($options); if ($total) { $options["count"] = false; $options["order_by"] = "e.time_created DESC"; $data = elgg_get_entities($options); foreach ($data as $item) { $export = pleio_api_export($item, array("guid", "time_created", "owner_guid", "container_guid", "title", "site_guid")); $export["likes_count"] = pleio_api_fetch_likes($item->guid); $export["liked"] = 0; if ($export["likes_count"]) { $export["liked"] = pleio_api_fetch_likes($item->guid, 1, 0, 0, $user->guid) > 0 ? 1 : 0; } $list[] = $export; } } } return array("total" => $total, "list" => $list, "offset" => $offset); }
<?php /** * Elgg add a collection of friends * * @package Elgg * @subpackage Core * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2 * @author Curverider Ltd * @copyright Curverider Ltd 2008-2009 * @link http://elgg.org/ */ // Start engine require_once dirname(dirname(__FILE__)) . "/engine/start.php"; // You need to be logged in for this one gatekeeper(); $area2 = elgg_view('friends/forms/edit', array('friends' => get_user_friends($_SESSION['user']->getGUID(), "", 9999))); // Format page $body = elgg_view_layout('two_column_left_sidebar', '', elgg_view_title(elgg_echo('friends:collections:add')) . $area2); // Draw it page_draw(elgg_echo('friends:collections:add'), $body);
function userfind_page_handler() { //$user_friends = elgg_get_entities_from_relationship(array('guid' => elgg_get_logged_in_user_guid())); $user_friends = get_user_friends(elgg_get_logged_in_user_guid(), null, 0); $query = htmlspecialchars($_GET['query']); $result = array(); foreach ($user_friends as $u) { // Complete match for first name if (strpos(strtolower(' ' . $u['name']) . ' ', ' ' . strtolower($query) . ' ') === 0) { $result[] = array('value' => $u->get('name'), 'guid' => $u->get('guid'), 'pic' => elgg_view_entity_icon($u, 'tiny', array('use_hover' => false, 'href' => false)), 'avatar' => elgg_view_entity_icon($u, 'small', array('use_hover' => false, 'href' => false)), 'pos' => 0); //error_log('Result: ' . var_dump($result)); } elseif (strpos(strtolower(' ' . $u['name']) . ' ', ' ' . strtolower($query) . ' ') !== FALSE) { $result[] = array('value' => $u->get('name'), 'guid' => $u->get('guid'), 'pic' => elgg_view_entity_icon($u, 'tiny', array('use_hover' => false, 'href' => false)), 'avatar' => elgg_view_entity_icon($u, 'small', array('use_hover' => false, 'href' => false)), 'pos' => 1); //error_log('Result: ' . var_dump($result)); } elseif (strpos(strtolower(' ' . $u['name']), ' ' . strtolower($query)) === 0) { $result[] = array('value' => $u->get('name'), 'guid' => $u->get('guid'), 'pic' => elgg_view_entity_icon($u, 'tiny', array('use_hover' => false, 'href' => false)), 'avatar' => elgg_view_entity_icon($u, 'small', array('use_hover' => false, 'href' => false)), 'pos' => 2); //error_log('Result: ' . var_dump($result)); } elseif (strpos(strtolower(' ' . $u['name']), ' ' . strtolower($query)) !== FALSE) { $result[] = array('value' => $u->get('name'), 'guid' => $u->get('guid'), 'pic' => elgg_view_entity_icon($u, 'tiny', array('use_hover' => false, 'href' => false)), 'avatar' => elgg_view_entity_icon($u, 'small', array('use_hover' => false, 'href' => false)), 'pos' => 3); //error_log('Result: ' . var_dump($result)); } elseif (strpos(strtolower($u['name']), strtolower($query)) !== FALSE) { $result[] = array('value' => $u->get('name'), 'guid' => $u->get('guid'), 'pic' => elgg_view_entity_icon($u, 'tiny', array('use_hover' => false, 'href' => false)), 'avatar' => elgg_view_entity_icon($u, 'small', array('use_hover' => false, 'href' => false)), 'pos' => 4); //error_log('Result: ' . var_dump($result)); } } $highest_relevance = array(); $high_relevance = array(); $med_relevance = array(); $low_relevance = array(); $lowest_relevance = array(); foreach ($result as $r) { if ($r['pos'] == 0) { $highest_relevance[] = $r; } elseif ($r['pos'] == 1) { $high_relevance[] = $r; } elseif ($r['pos'] == 2) { $med_relevance[] = $r; } elseif ($r['pos'] == 3) { $low_relevance[] = $r; } elseif ($r['pos'] == 4) { $lowest_relevance[] = $r; } } $result = array_merge($highest_relevance, $high_relevance, $med_relevance, $low_relevance, $lowest_relevance); //error_log(print_r('Result: ' . $result, true)); //error_log(print_r($med_relevance, true)); echo json_encode($result); return json_encode($result); }
* MODIFICATION LOG * +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * * USER DATE DESCRIPTION * MBlondin 2016-03-11 Creation of widget ***********************************************************************/ try { $user_guid = elgg_get_logged_in_user_guid(); $site_url = elgg_get_site_url(); $num_group = count(get_users_membership($user_guid)); $title = get_user($user_guid)->job; $dept = get_user($user_guid)->department; $dipName = get_user($user_guid)->getDisplayName(); $avatar = get_user($user_guid)->getIcon('medium'); $Uname = get_user($user_guid)->username; $NumFriends = count(get_user_friends($user_guid)); ?> <div class="col-xs-12 col-md-12 col-lg-12 panel"> <div class="col-lg-2 elgg-avatar elgg-avatar-medium-wet4"> <img src="<?php echo $avatar; ?> " alt="Avatar of <?php echo $dipName; ?> " class="img-circle img-responsive" /> </div> <div class="col-lg-7 brdr-rght"> <h2 class="h2"><?php echo $dipName; ?>
<?php $users = mysql_query("SELECT guid FROM {$CONFIG->dbprefix}users_entity\n\tWHERE username != ''"); // recorro todos los usuarios while ($user = mysql_fetch_object($users)) { update_user_personal_notifications_settings($user->guid, get_input('personal_batch_method')); update_user_friends_notifications_settings($user->guid, get_input('friends_batch_method')); // actualizo las relaciones de notificacion entre un usuario y todos sus amigos $friends_method = get_input('friends_batch_method'); if ($friends_method != 'nocambiar') { $friends = get_user_friends($user->guid); foreach ($friends as $friend) { switch (get_input('friends_batch_method')) { case 'email': add_entity_relationship($user->guid, 'notifyemail', $friend->guid); remove_entity_relationships($user->guid, 'notifysite', false, 'user'); break; case 'site': add_entity_relationship($user->guid, 'notifysite', $friend->guid); remove_entity_relationships($user->guid, 'notifyemail', false, 'user'); break; case 'todos': add_entity_relationship($user->guid, 'notifyemail', $friend->guid); add_entity_relationship($user->guid, 'notifysite', $friend->guid); break; case 'ninguno': remove_entity_relationships($user->guid, 'notifyemail', false, 'user'); remove_entity_relationships($user->guid, 'notifysite', false, 'user'); default: // metodo (nocambiar) break;
* Elgg file search * * @package ElggFile * @author Curverider Ltd * @copyright Curverider Ltd 2008-2009 * @link http://elgg.com/ */ // Load Elgg engine require_once dirname(dirname(dirname(__FILE__))) . "/engine/start.php"; // Get input $md_type = 'simpletype'; $tag = get_input('tag'); $search_viewtype = get_input('search_viewtype'); $friends = (int) get_input('friends_guid', 0); if ($friends) { if ($owner_guid = get_user_friends($user_guid, $subtype, 999999, 0)) { foreach ($owner_guid as $key => $friend) { $owner_guid[$key] = (int) $friend->getGUID(); } } else { $owner_guid = array(); } } else { $owner_guid = get_input('owner_guid', 0); if (substr_count($owner_guid, ',')) { $owner_guid = explode(",", $owner_guid); } } $page_owner = get_input('page_owner', 0); if ($page_owner) { set_page_owner($page_owner);
/** * get a list of people that can be tagged in an image * * @param $viewer entity * @return array of guid->name for tagging */ function tp_get_tag_list($viewer) { $friends = get_user_friends($viewer->getGUID(), '', 999, 0); $friend_list = array(); if ($friends) { foreach ($friends as $friend) { //error_log("friend $friend->name"); $friend_list[$friend->guid] = $friend->name; } } // is this a group $is_group = tp_is_group_page(); if ($is_group) { $group_guid = page_owner(); $viewer_guid = $viewer->guid; $members = get_group_members($group_guid, 999); if (is_array($members)) { foreach ($members as $member) { if ($viewer_guid != $member->guid) { $group_list[$member->guid] = $member->name; //error_log("group $member->name"); } } // combine group and friends list $intersect = array_intersect_key($friend_list, $group_list); $unique_friends = array_diff_key($friend_list, $group_list); $unique_members = array_diff_key($group_list, $friend_list); //$friend_list = array_merge($friend_list, $group_list); //$friend_list = array_unique($friend_list); $friend_list = $intersect + $unique_friends + $unique_members; } } asort($friend_list); return $friend_list; }
/** * Get page components to list of the user's friends' posts. * * @param int $user_guid * @return array */ function blog_get_page_content_friends($user_guid) { $user = get_user($user_guid); if (!$user) { forward('blog/all'); } $return = array(); $return['filter_context'] = 'friends'; $return['title'] = elgg_echo('blog:title:friends'); $crumbs_title = $user->name; elgg_push_breadcrumb($crumbs_title, "blog/owner/{$user->username}"); elgg_push_breadcrumb(elgg_echo('friends')); elgg_register_title_button(); if (!($friends = get_user_friends($user_guid, ELGG_ENTITIES_ANY_VALUE, 0))) { $return['content'] .= elgg_echo('friends:none:you'); return $return; } else { $options = array('type' => 'object', 'subtype' => 'blog', 'full_view' => FALSE); foreach ($friends as $friend) { $options['container_guids'][] = $friend->getGUID(); } // admin / owners can see any posts // everyone else can only see published posts if (!(elgg_is_admin_logged_in() || elgg_is_logged_in() && $owner_guid == elgg_get_logged_in_user_guid())) { if ($upper > $now) { $upper = $now; } $options['metadata_name_value_pairs'][] = array(array('name' => 'status', 'value' => 'published')); } $list = elgg_list_entities_from_metadata($options); if (!$list) { $return['content'] = elgg_echo('blog:none'); } else { $return['content'] = $list; } } return $return; }
* Elgg file search * * @package ElggFile * @author Curverider Ltd * @copyright Curverider Ltd 2008-2010 * @link http://elgg.com/ */ // Load Elgg engine require_once dirname(dirname(dirname(__FILE__))) . "/engine/start.php"; // Get input $md_type = 'simpletype'; $tag = get_input('tag'); $search_viewtype = get_input('search_viewtype'); $friends = (int) get_input('friends_guid', 0); if ($friends) { if ($owner_guid = get_user_friends($user_guid, "", 999999, 0)) { foreach ($owner_guid as $key => $friend) { $owner_guid[$key] = (int) $friend->getGUID(); } } else { $owner_guid = array(); } } else { $owner_guid = get_input('owner_guid', 0); if (substr_count($owner_guid, ',')) { $owner_guid = explode(",", $owner_guid); } } $page_owner = get_input('page_owner', 0); if ($page_owner) { set_page_owner($page_owner);