Exemplo n.º 1
0
$personal_course_list = UserManager::get_personal_session_course_list($my_user_id);
$course_list_code = array();
$i = 1;
$list = [];
if (is_array($personal_course_list)) {
    foreach ($personal_course_list as $my_course) {
        if ($i <= 10) {
            $list[] = SocialManager::get_logged_user_course_html($my_course, $i);
            $course_list_code[] = array('code' => $my_course['code']);
        } else {
            break;
        }
        $i++;
    }
    //to avoid repeted courses
    $course_list_code = array_unique_dimensional($course_list_code);
}
//Social Block Menu
$social_menu_block = SocialManager::show_social_menu('shared_profile', null, $user_id, $show_full_profile);
//Setting some session info
$user_info = api_get_user_info($my_user_id);
$sessionList = SessionManager::getSessionsFollowedByUser($my_user_id, $user_info['status']);
// My friends
$friend_html = SocialManager::listMyFriendsBlock($user_id, $link_shared, $show_full_profile);
$wallSocialAddPost = SocialManager::getWallForm();
$social_wall_block = $wallSocialAddPost;
// Social Post Wall
$posts = SocialManager::getWallMessagesByUser($my_user_id, $friendId);
$posts = empty($posts) ? '<p>' . get_lang("NoPosts") . '</p>' : $posts;
$social_post_wall_block = Display::panel($posts, get_lang('Posts'));
$socialAutoExtendLink = Display::url(get_lang('SeeMore'), $socialAjaxUrl . '?u=' . $my_user_id . '&a=listWallMessage&start=10&length=5', array('class' => 'nextPage next'));
Exemplo n.º 2
0
/**
 * Search a term in the language
 * @param string $term the term to search
 * @param bool $search_in_variable the search will include the variable definition of the term
 * @param bool $search_in_english the search will include the english language variables
 * @param bool $search_in_parent the search will include the parent language variables of the sub language
 * @param bool $search_in_sub_language the search will include the sub language variables
 * @author Julio Montoya
 *
 */
function search_language_term($term, $search_in_variable = true, $search_in_english = true, $search_in_parent = true, $search_in_sub_language = true)
{
    //These the $_REQUEST['id'] and the $_REQUEST['sub_language_id'] variables are process in global.inc.php (LOAD LANGUAGE FILES SECTION)
    /*
    	These 4 arrays are set in global.inc.php with the condition that will be load from sub_language.php or sub_language_ajax.inc.php
    	$english_language_array
    	$parent_language_array
    	$sub_language_array
    	$language_files_to_load
    */
    global $language_files_to_load, $sub_language_array, $english_language_array, $parent_language_array;
    $language_files_to_load_keys = array_flip($language_files_to_load);
    $array_to_search = $parent_language_array;
    $list_info = array();
    $term = '/' . Security::remove_XSS(trim($_REQUEST['txt_search_word'])) . '/i';
    //@todo optimize this foreach
    foreach ($language_files_to_load as $lang_file) {
        //searching in parent language of the sub language
        if ($search_in_parent) {
            $variables = $parent_language_array[$lang_file];
            foreach ($variables as $parent_name_variable => $parent_variable_value) {
                //arrays are avoided
                if (is_array($parent_variable_value)) {
                    continue;
                }
                $founded = false;
                // searching the item in the parent tool
                if (preg_match($term, $parent_variable_value) !== 0) {
                    $founded = true;
                }
                if ($founded) {
                    //loading variable from the english array
                    $sub_language_name_variable = $sub_language_array[$lang_file][$parent_name_variable];
                    //loading variable from the english array
                    $english_name_variable = $english_language_array[$lang_file][$parent_name_variable];
                    //config buttons
                    /*if (strlen($english_name_variable)>1500) {
                    			$size =20;
                    		} else {
                    			$size =4;
                    		}*/
                    $obj_text = '<textarea rows="10" cols="40" name="txt|' . $parent_name_variable . '|' . $language_files_to_load_keys[$lang_file] . '" id="txtid_' . $language_files_to_load_keys[$lang_file] . '_' . $parent_name_variable . '" >' . $sub_language_name_variable . '</textarea>';
                    $obj_button = '<button class="save" type="button" name="btn|' . $parent_name_variable . '|' . $language_files_to_load_keys[$lang_file] . '" id="btnid_' . $parent_name_variable . '"  />' . get_lang('Save') . '</button>';
                    $list_info[] = array($lang_file . '.inc.php', $parent_name_variable, $english_name_variable, $parent_variable_value, $obj_text, $obj_button);
                }
            }
        }
        //search in english
        if ($search_in_english || $search_in_variable) {
            $variables = $english_language_array[$lang_file];
            foreach ($variables as $name_variable => $variable_value) {
                if (is_array($variable_value)) {
                    continue;
                }
                if (is_array($variable_value)) {
                    echo $lang_file;
                }
                $founded = false;
                if ($search_in_english && $search_in_variable) {
                    // searching the item in the parent tool
                    if (preg_match($term, $variable_value) !== 0 || preg_match($term, $name_variable) !== 0) {
                        $founded = true;
                    }
                } else {
                    if ($search_in_english) {
                        if (preg_match($term, $variable_value) !== 0) {
                            $founded = true;
                        }
                    } else {
                        if (preg_match($term, $name_variable) !== 0) {
                            $founded = true;
                        }
                    }
                }
                if ($founded) {
                    //loading variable from the english array
                    $sub_language_name_variable = null;
                    if (isset($sub_language_array[$lang_file][$name_variable])) {
                        $sub_language_name_variable = $sub_language_array[$lang_file][$name_variable];
                    }
                    $parent_variable_value = null;
                    if (isset($parent_language_array[$lang_file][$name_variable])) {
                        $parent_variable_value = $parent_language_array[$lang_file][$name_variable];
                    }
                    //config buttons
                    $obj_text = '<textarea rows="10" cols="40" name="txt|' . $name_variable . '|' . $language_files_to_load_keys[$lang_file] . '" id="txtid_' . $language_files_to_load_keys[$lang_file] . '_' . $name_variable . '" >' . $sub_language_name_variable . '
						</textarea>';
                    $obj_button = '<button class="save" type="button" name="btn|' . $name_variable . '|' . $language_files_to_load_keys[$lang_file] . '" id="btnid_' . $name_variable . '"  />' . get_lang('Save') . '</button>';
                    //loading variable from the english array
                    $english_name_variable = $english_language_array[$lang_file][$name_variable];
                    $list_info[] = array($lang_file . '.inc.php', $name_variable, $english_name_variable, $parent_variable_value, $obj_text, $obj_button);
                }
            }
        }
        // Search in sub language
        if ($search_in_sub_language) {
            $variables = $sub_language_array[$lang_file];
            foreach ($variables as $name_variable => $variable_value) {
                if (is_array($parent_variable_value)) {
                    continue;
                }
                $founded = false;
                // searching the item in the parent tool
                if (preg_match($term, $variable_value) !== 0) {
                    $founded = true;
                }
                if ($founded) {
                    //loading variable from the english array
                    $sub_language_name_variable = $sub_language_array[$lang_file][$name_variable];
                    $parent_variable_value = $parent_language_array[$lang_file][$name_variable];
                    //config buttons
                    $obj_text = '<textarea rows="10" cols="40" name="txt|' . $name_variable . '|' . $language_files_to_load_keys[$lang_file] . '" id="txtid_' . $language_files_to_load_keys[$lang_file] . '_' . $name_variable . '" >' . $sub_language_name_variable . '</textarea>';
                    $obj_button = '<button class="save" type="button" name="btn|' . $name_variable . '|' . $language_files_to_load_keys[$lang_file] . '" id="btnid_' . $name_variable . '"  />' . get_lang('Save') . '</button>';
                    //loading variable from the english array
                    $english_name_variable = $english_language_array[$lang_file][$name_variable];
                    $list_info[] = array($lang_file . '.inc.php', $name_variable, $english_name_variable, $parent_variable_value, $obj_text, $obj_button);
                }
            }
        }
    }
    $list_info = array_unique_dimensional($list_info);
    return $list_info;
}
Exemplo n.º 3
0
 /**
  * Shows the right menu of the Social Network tool
  *
  * @param string $show highlight link possible values:
  * group_add,
  * home,
  * messages,
  * messages_inbox,
  * messages_compose ,
  * messages_outbox,
  * invitations,
  * shared_profile,
  * friends,
  * groups search
  * @param int $group_id group id
  * @param int $user_id user id
  * @param bool $show_full_profile show profile or not (show or hide the user image/information)
  * @param bool $show_delete_account_button
  *
  */
 public static function show_social_menu($show = '', $group_id = 0, $user_id = 0, $show_full_profile = false, $show_delete_account_button = false)
 {
     if (empty($user_id)) {
         $user_id = api_get_user_id();
     }
     $usergroup = new UserGroup();
     $user_info = api_get_user_info($user_id, true);
     $current_user_id = api_get_user_id();
     $current_user_info = api_get_user_info($current_user_id, true);
     if ($current_user_id == $user_id) {
         $user_friend_relation = null;
     } else {
         $user_friend_relation = SocialManager::get_relation_between_contacts($current_user_id, $user_id);
     }
     $show_groups = array('groups', 'group_messages', 'messages_list', 'group_add', 'mygroups', 'group_edit', 'member_list', 'invite_friends', 'waiting_list', 'browse_groups');
     // get count unread message and total invitations
     $count_unread_message = MessageManager::get_number_of_messages(true);
     $count_unread_message = !empty($count_unread_message) ? Display::badge($count_unread_message) : null;
     $number_of_new_messages_of_friend = SocialManager::get_message_number_invitation_by_user_id(api_get_user_id());
     $group_pending_invitations = $usergroup->get_groups_by_user(api_get_user_id(), GROUP_USER_PERMISSION_PENDING_INVITATION, false);
     $group_pending_invitations = count($group_pending_invitations);
     $total_invitations = $number_of_new_messages_of_friend + $group_pending_invitations;
     $total_invitations = !empty($total_invitations) ? Display::badge($total_invitations) : '';
     $filesIcon = Display::return_icon('sn-files.png', get_lang('MyFiles'), '', ICON_SIZE_SMALL);
     $friendsIcon = Display::return_icon('sn-friends.png', get_lang('Friends'), '', ICON_SIZE_SMALL);
     $groupsIcon = Display::return_icon('sn-groups.png', get_lang('SocialGroups'), '', ICON_SIZE_SMALL);
     $homeIcon = Display::return_icon('sn-home.png', get_lang('Home'), '', ICON_SIZE_SMALL);
     $invitationsIcon = Display::return_icon('sn-invitations.png', get_lang('Invitations'), '', ICON_SIZE_SMALL);
     $messagesIcon = Display::return_icon('sn-message.png', get_lang('Messages'), '', ICON_SIZE_SMALL);
     $sharedProfileIcon = Display::return_icon('sn-profile.png', get_lang('ViewMySharedProfile'));
     $searchIcon = Display::return_icon('sn-search.png', get_lang('Search'), '', ICON_SIZE_SMALL);
     $html = '';
     $active = null;
     if (!in_array($show, array('shared_profile', 'groups', 'group_edit', 'member_list', 'waiting_list', 'invite_friends'))) {
         $links = '<ul class="nav nav-pills nav-stacked">';
         $active = $show == 'home' ? 'active' : null;
         $links .= '
             <li class="home-icon ' . $active . '">
                 <a href="' . api_get_path(WEB_CODE_PATH) . 'social/home.php">
                     ' . $homeIcon . ' ' . get_lang('Home') . '
                 </a>
             </li>';
         $active = $show == 'messages' ? 'active' : null;
         $links .= '
             <li class="messages-icon ' . $active . '">
                 <a href="' . api_get_path(WEB_CODE_PATH) . 'messages/inbox.php?f=social">
                     ' . $messagesIcon . ' ' . get_lang('Messages') . $count_unread_message . '
                 </a>
             </li>';
         //Invitations
         $active = $show == 'invitations' ? 'active' : null;
         $links .= '
             <li class="invitations-icon ' . $active . '">
                 <a href="' . api_get_path(WEB_CODE_PATH) . 'social/invitations.php">
                     ' . $invitationsIcon . ' ' . get_lang('Invitations') . $total_invitations . '
                 </a>
             </li>';
         //Shared profile and groups
         $active = $show == 'shared_profile' ? 'active' : null;
         $links .= '
             <li class="shared-profile-icon' . $active . '">
                 <a href="' . api_get_path(WEB_CODE_PATH) . 'social/profile.php">
                     ' . $sharedProfileIcon . ' ' . get_lang('ViewMySharedProfile') . '
                 </a>
             </li>';
         $active = $show == 'friends' ? 'active' : null;
         $links .= '
             <li class="friends-icon ' . $active . '">
                 <a href="' . api_get_path(WEB_CODE_PATH) . 'social/friends.php">
                     ' . $friendsIcon . ' ' . get_lang('Friends') . '
                 </a>
             </li>';
         $active = $show == 'browse_groups' ? 'active' : null;
         $links .= '
             <li class="browse-groups-icon ' . $active . '">
                 <a href="' . api_get_path(WEB_CODE_PATH) . 'social/groups.php">
                     ' . $groupsIcon . ' ' . get_lang('SocialGroups') . '
                 </a>
             </li>';
         //Search users
         $active = $show == 'search' ? 'active' : null;
         $links .= '
             <li class="search-icon ' . $active . '">
                 <a href="' . api_get_path(WEB_CODE_PATH) . 'social/search.php">
                     ' . $searchIcon . ' ' . get_lang('Search') . '
                 </a>
             </li>';
         //My files
         $active = $show == 'myfiles' ? 'active' : null;
         $links .= '
             <li class="myfiles-icon ' . $active . '">
                 <a href="' . api_get_path(WEB_CODE_PATH) . 'social/myfiles.php">
                     ' . $filesIcon . ' ' . get_lang('MyFiles') . '
                 </a>
             </li>';
         $links .= '</ul>';
         $html .= Display::panelCollapse(get_lang('SocialNetwork'), $links, 'social-network-menu', null, 'sn-sidebar', 'sn-sidebar-collapse');
     }
     if (in_array($show, $show_groups) && !empty($group_id)) {
         $html .= $usergroup->show_group_column_information($group_id, api_get_user_id(), $show);
     }
     if ($show == 'shared_profile') {
         $links = '<ul class="nav nav-pills nav-stacked">';
         // My own profile
         if ($show_full_profile && $user_id == intval(api_get_user_id())) {
             $links .= '
                 <li class="home-icon ' . $active . '">
                     <a href="' . api_get_path(WEB_CODE_PATH) . 'social/home.php">
                         ' . $homeIcon . ' ' . get_lang('Home') . '
                     </a>
                 </li>
                 <li class="messages-icon ' . $active . '">
                     <a href="' . api_get_path(WEB_CODE_PATH) . 'messages/inbox.php?f=social">
                         ' . $messagesIcon . ' ' . get_lang('Messages') . $count_unread_message . '
                     </a>
                 </li>';
             $active = $show == 'invitations' ? 'active' : null;
             $links .= '
                 <li class="invitations-icon' . $active . '">
                     <a href="' . api_get_path(WEB_CODE_PATH) . 'social/invitations.php">
                         ' . $invitationsIcon . ' ' . get_lang('Invitations') . $total_invitations . '
                     </a>
                 </li>';
             $links .= '
                 <li class="shared-profile-icon active">
                     <a href="' . api_get_path(WEB_CODE_PATH) . 'social/profile.php">
                         ' . $sharedProfileIcon . ' ' . get_lang('ViewMySharedProfile') . '
                     </a>
                 </li>
                 <li class="friends-icon">
                     <a href="' . api_get_path(WEB_CODE_PATH) . 'social/friends.php">
                         ' . $friendsIcon . ' ' . get_lang('Friends') . '
                     </a>
                 </li>
                 <li class="browse-groups-icon">
                     <a href="' . api_get_path(WEB_CODE_PATH) . 'social/groups.php">
                         ' . $groupsIcon . ' ' . get_lang('SocialGroups') . '
                     </a>
                 </li>';
             $active = $show == 'search' ? 'active' : null;
             $links .= '
                 <li class="search-icon ' . $active . '">
                     <a href="' . api_get_path(WEB_CODE_PATH) . 'social/search.php">
                         ' . $searchIcon . ' ' . get_lang('Search') . '
                     </a>
                 </li>';
             $active = $show == 'myfiles' ? 'active' : null;
             $links .= '
                 <li class="myfiles-icon ' . $active . '">
                  <a href="' . api_get_path(WEB_CODE_PATH) . 'social/myfiles.php">
                         ' . $filesIcon . ' ' . get_lang('MyFiles') . '
                     </a>
                 </li>';
         }
         // My friend profile.
         if ($user_id != api_get_user_id()) {
             $sendMessageText = get_lang('SendMessage');
             $sendMessageIcon = Display::return_icon('compose_message.png', $sendMessageText);
             $sendMesssageUrl = api_get_path(WEB_AJAX_PATH) . 'user_manager.ajax.php?' . http_build_query(['a' => 'get_user_popup', 'user_id' => $user_id]);
             $links .= '<li>';
             $links .= Display::url("{$sendMessageIcon} {$sendMessageText}", $sendMesssageUrl, ['class' => 'ajax', 'title' => $sendMessageText, 'data-title' => $sendMessageText]);
             $links .= '</li>';
         }
         // Check if I already sent an invitation message
         $invitation_sent_list = SocialManager::get_list_invitation_sent_by_user_id(api_get_user_id());
         if (isset($invitation_sent_list[$user_id]) && is_array($invitation_sent_list[$user_id]) && count($invitation_sent_list[$user_id]) > 0) {
             $links .= '<li><a href="' . api_get_path(WEB_CODE_PATH) . 'social/invitations.php">' . Display::return_icon('invitation.png', get_lang('YouAlreadySentAnInvitation')) . '&nbsp;&nbsp;' . get_lang('YouAlreadySentAnInvitation') . '</a></li>';
         } else {
             if (!$show_full_profile) {
                 $links .= '<li><a class="btn-to-send-invitation" href="#" data-send-to="' . $user_id . '" title="' . get_lang('SendInvitation') . '">' . Display::return_icon('invitation.png', get_lang('SocialInvitationToFriends')) . '&nbsp;' . get_lang('SendInvitation') . '</a></li>';
             }
         }
         $links .= '</ul>';
         $html .= Display::panelCollapse(get_lang('SocialNetwork'), $links, 'social-network-menu', null, 'sn-sidebar', 'sn-sidebar-collapse');
         if ($show_full_profile && $user_id == intval(api_get_user_id())) {
             $personal_course_list = UserManager::get_personal_session_course_list($user_id);
             $course_list_code = array();
             $i = 1;
             if (is_array($personal_course_list)) {
                 foreach ($personal_course_list as $my_course) {
                     if ($i <= 10) {
                         $course_list_code[] = array('code' => $my_course['code']);
                     } else {
                         break;
                     }
                     $i++;
                 }
                 // To avoid repeated courses
                 $course_list_code = array_unique_dimensional($course_list_code);
             }
             // Announcements
             $my_announcement_by_user_id = intval($user_id);
             $announcements = array();
             foreach ($course_list_code as $course) {
                 $course_info = api_get_course_info($course['code']);
                 if (!empty($course_info)) {
                     $content = AnnouncementManager::get_all_annoucement_by_user_course($course_info['code'], $my_announcement_by_user_id);
                     if (!empty($content)) {
                         $url = Display::url(Display::return_icon('announcement.png', get_lang('Announcements')) . $course_info['name'] . ' (' . $content['count'] . ')', api_get_path(WEB_CODE_PATH) . 'announcements/announcements.php?cidReq=' . $course['code']);
                         $announcements[] = Display::tag('li', $url);
                     }
                 }
             }
             if (!empty($announcements)) {
                 $html .= '<div class="social_menu_items">';
                 $html .= '<ul>';
                 foreach ($announcements as $announcement) {
                     $html .= $announcement;
                 }
                 $html .= '</ul>';
                 $html .= '</div>';
             }
         }
     }
     if ($show_delete_account_button) {
         $html .= '<div class="sidebar-nav"><ul><li>';
         $url = api_get_path(WEB_CODE_PATH) . 'auth/unsubscribe_account.php';
         $html .= Display::url(Display::return_icon('delete.png', get_lang('Unsubscribe'), array(), ICON_SIZE_TINY) . get_lang('Unsubscribe'), $url);
         $html .= '</li></ul></div>';
     }
     $html .= '';
     return $html;
 }
Exemplo n.º 4
0
 /**
  * Shows the right menu of the Social Network tool
  *
  * @param string $show highlight link possible values:
  * group_add,
  * home,
  * messages,
  * messages_inbox,
  * messages_compose ,
  * messages_outbox,
  * invitations,
  * shared_profile,
  * friends,
  * groups search
  * @param int $group_id group id
  * @param int $user_id user id
  * @param bool $show_full_profile show profile or not (show or hide the user image/information)
  * @param bool $show_delete_account_button
  *
  */
 public static function show_social_menu($show = '', $group_id = 0, $user_id = 0, $show_full_profile = false, $show_delete_account_button = false)
 {
     if (empty($user_id)) {
         $user_id = api_get_user_id();
     }
     $usergroup = new UserGroup();
     $user_info = api_get_user_info($user_id, true);
     $current_user_id = api_get_user_id();
     $current_user_info = api_get_user_info($current_user_id, true);
     if ($current_user_id == $user_id) {
         $user_friend_relation = null;
     } else {
         $user_friend_relation = SocialManager::get_relation_between_contacts($current_user_id, $user_id);
     }
     $show_groups = array('groups', 'group_messages', 'messages_list', 'group_add', 'mygroups', 'group_edit', 'member_list', 'invite_friends', 'waiting_list', 'browse_groups');
     // get count unread message and total invitations
     $count_unread_message = MessageManager::get_number_of_messages(true);
     $count_unread_message = !empty($count_unread_message) ? Display::badge($count_unread_message) : null;
     $number_of_new_messages_of_friend = SocialManager::get_message_number_invitation_by_user_id(api_get_user_id());
     $group_pending_invitations = $usergroup->get_groups_by_user(api_get_user_id(), GROUP_USER_PERMISSION_PENDING_INVITATION, false);
     $group_pending_invitations = count($group_pending_invitations);
     $total_invitations = $number_of_new_messages_of_friend + $group_pending_invitations;
     $total_invitations = !empty($total_invitations) ? Display::badge($total_invitations) : '';
     $html = '';
     $active = null;
     if (!in_array($show, array('shared_profile', 'groups', 'group_edit', 'member_list', 'waiting_list', 'invite_friends'))) {
         $html .= '<div class="panel panel-default sidebar-nav">';
         $html .= '<div class="panel-body">';
         $html .= '<ul class="nav nav-pills nav-stacked">';
         $active = $show == 'home' ? 'active' : null;
         $html .= '<li class="home-icon ' . $active . '"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/home.php">' . Display::return_icon('social-home.png', get_lang('Home'), '', ICON_SIZE_SMALL) . ' ' . get_lang('Home') . '</a></li>';
         $active = $show == 'messages' ? 'active' : null;
         $html .= '<li class="messages-icon ' . $active . '"><a href="' . api_get_path(WEB_CODE_PATH) . 'messages/inbox.php?f=social">' . Display::return_icon('social-message.png', get_lang('Messages'), '', ICON_SIZE_SMALL) . ' ' . get_lang('Messages') . $count_unread_message . '</a></li>';
         //Invitations
         $active = $show == 'invitations' ? 'active' : null;
         $html .= '<li class="invitations-icon ' . $active . '"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/invitations.php">' . Display::return_icon('social-invitations.png', get_lang('Invitations'), '', ICON_SIZE_SMALL) . ' ' . get_lang('Invitations') . $total_invitations . '</a></li>';
         //Shared profile and groups
         $active = $show == 'shared_profile' ? 'active' : null;
         $html .= '<li class="shared-profile-icon' . $active . '"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/profile.php">' . Display::return_icon('social-profile.png', get_lang('ViewMySharedProfile'), '', ICON_SIZE_SMALL) . ' ' . get_lang('ViewMySharedProfile') . '</a></li>';
         $active = $show == 'friends' ? 'active' : null;
         $html .= '<li class="friends-icon ' . $active . '"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/friends.php">' . Display::return_icon('social-friends.png', get_lang('Friends'), '', ICON_SIZE_SMALL) . ' ' . get_lang('Friends') . '</a></li>';
         $active = $show == 'browse_groups' ? 'active' : null;
         $html .= '<li class="browse-groups-icon ' . $active . '"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/groups.php">' . Display::return_icon('social-groups.png', get_lang('SocialGroups'), '', ICON_SIZE_SMALL) . ' ' . get_lang('SocialGroups') . '</a></li>';
         //Search users
         $active = $show == 'search' ? 'active' : null;
         $html .= '<li class="search-icon ' . $active . '"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/search.php">' . Display::return_icon('social-search.png', get_lang('Search'), '', ICON_SIZE_SMALL) . ' ' . get_lang('Search') . '</a></li>';
         //My files
         $active = $show == 'myfiles' ? 'active' : null;
         $html .= '<li class="myfiles-icon ' . $active . '"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/myfiles.php">' . Display::return_icon('social-files.png', get_lang('MyFiles'), '', ICON_SIZE_SMALL) . ' ' . get_lang('MyFiles') . '</span></a></li>';
         $html .= '</ul></div></div>';
     }
     if (in_array($show, $show_groups) && !empty($group_id)) {
         $html .= $usergroup->show_group_column_information($group_id, api_get_user_id(), $show);
     }
     if ($show == 'shared_profile') {
         $html .= '<div class="panel panel-default sidebar-nav">';
         $html .= '<div class="panel-body">';
         $html .= '<ul class="nav nav-pills nav-stacked">';
         // My own profile
         if ($show_full_profile && $user_id == intval(api_get_user_id())) {
             $html .= '<li class="home-icon ' . $active . '"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/home.php">' . Display::return_icon('social-home.png', get_lang('Home'), '', ICON_SIZE_SMALL) . ' ' . get_lang('Home') . '</a></li>
                       <li class="messages-icon ' . $active . '"><a href="' . api_get_path(WEB_CODE_PATH) . 'messages/inbox.php?f=social">' . Display::return_icon('social-message.png', get_lang('Messages'), '', ICON_SIZE_SMALL) . ' ' . get_lang('Messages') . $count_unread_message . '</a></li>';
             $active = $show == 'invitations' ? 'active' : null;
             $html .= '<li class="invitations-icon' . $active . '"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/invitations.php">' . Display::return_icon('social-invitations.png', get_lang('Invitations'), '', ICON_SIZE_SMALL) . ' ' . get_lang('Invitations') . $total_invitations . '</a></li>';
             $html .= '<li class="shared-profile-icon active"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/profile.php">' . Display::return_icon('social-profile.png', get_lang('ViewMySharedProfile'), '', ICON_SIZE_SMALL) . ' ' . get_lang('ViewMySharedProfile') . '</a></li>
                       <li class="friends-icon"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/friends.php">' . Display::return_icon('social-friends.png', get_lang('Friends'), '', ICON_SIZE_SMALL) . ' ' . get_lang('Friends') . '</a></li>
                       <li class="browse-groups-icon"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/groups.php">' . Display::return_icon('social-groups.png', get_lang('SocialGroups'), '', ICON_SIZE_SMALL) . ' ' . get_lang('SocialGroups') . '</a></li>';
             $active = $show == 'search' ? 'active' : null;
             $html .= '<li class="search-icon ' . $active . '"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/search.php">' . Display::return_icon('social-search.png', get_lang('Search'), '', ICON_SIZE_SMALL) . ' ' . get_lang('Search') . '</a></li>';
             $active = $show == 'myfiles' ? 'active' : null;
             $html .= '<li class="myfiles-icon ' . $active . '"><a href="' . api_get_path(WEB_CODE_PATH) . 'social/myfiles.php">' . Display::return_icon('social-files.png', get_lang('MyFiles'), '', ICON_SIZE_SMALL) . ' ' . get_lang('MyFiles') . '</a></li>';
         }
         // My friend profile.
         if ($user_id != api_get_user_id()) {
             $html .= '<li><a href="#" class="btn-to-send-message" data-send-to="' . $user_id . '" title="' . get_lang('SendMessage') . '">';
             $html .= Display::return_icon('compose_message.png', get_lang('SendMessage')) . '&nbsp;&nbsp;' . get_lang('SendMessage') . '</a></li>';
         }
         // Check if I already sent an invitation message
         $invitation_sent_list = SocialManager::get_list_invitation_sent_by_user_id(api_get_user_id());
         if (isset($invitation_sent_list[$user_id]) && is_array($invitation_sent_list[$user_id]) && count($invitation_sent_list[$user_id]) > 0) {
             $html .= '<li><a href="' . api_get_path(WEB_CODE_PATH) . 'social/invitations.php">' . Display::return_icon('invitation.png', get_lang('YouAlreadySentAnInvitation')) . '&nbsp;&nbsp;' . get_lang('YouAlreadySentAnInvitation') . '</a></li>';
         } else {
             if (!$show_full_profile) {
                 $html .= '<li><a class="btn-to-send-invitation" href="#" data-send-to="' . $user_id . '" title="' . get_lang('SendInvitation') . '">' . Display::return_icon('invitation.png', get_lang('SocialInvitationToFriends')) . '&nbsp;' . get_lang('SendInvitation') . '</a></li>';
             }
         }
         // Chat
         //@todo check if user is online and if it's a friend to show the chat link
         /*if (api_is_global_chat_enabled()) {
                         $user_name = $user_info['complete_name'];
         
                         if ($user_friend_relation == USER_RELATION_TYPE_FRIEND) {
                             if ($user_id != api_get_user_id()) {
                                 //Only show chat if I'm available to talk
                                 if ($current_user_info['user_is_online_in_chat'] == 1) {
                                     $options = array('onclick' => "javascript:chatWith('".$user_id."', '".Security::remove_XSS($user_name)."', '".$user_info['user_is_online_in_chat']."')");
                                     $chat_icon = $user_info['user_is_online_in_chat'] ? Display::return_icon('online.png', get_lang('Online')) : Display::return_icon('offline.png', get_lang('Offline'));
                                     $html .= Display::tag('li',
                                         Display::url(
                                             $chat_icon.'&nbsp;&nbsp;'.get_lang('Chat'),
                                             'javascript:void(0);',
                                             $options
                                         )
                                     );
                                 }
                             }
                         } else {
                             if ($user_id != api_get_user_id()) {
                                 if ($current_user_info['user_is_online_in_chat'] == 1) {
                                     $message = Security::remove_XSS(sprintf(get_lang("YouHaveToAddXAsAFriendFirst"), $user_name));
                                     $options = array('onclick' => "javascript:chatNotYetWith('".$message."')");
                                     $chat_icon = $user_info['user_is_online_in_chat'] ? Display::return_icon('online.png', get_lang('Online')) : Display::return_icon('offline.png', get_lang('Offline'));
                                     $html .= Display::tag('li',
                                         Display::url(
                                             $chat_icon.'&nbsp;&nbsp;'.get_lang('Chat'),
                                             'javascript:void(0);',
                                             $options
                                         )
                                     );
                                 }
                             }
                         }
                     }*/
         $html .= '</ul></div></div>';
         if ($show_full_profile && $user_id == intval(api_get_user_id())) {
             $personal_course_list = UserManager::get_personal_session_course_list($user_id);
             $course_list_code = array();
             $i = 1;
             if (is_array($personal_course_list)) {
                 foreach ($personal_course_list as $my_course) {
                     if ($i <= 10) {
                         $course_list_code[] = array('code' => $my_course['code']);
                     } else {
                         break;
                     }
                     $i++;
                 }
                 // To avoid repeated courses
                 $course_list_code = array_unique_dimensional($course_list_code);
             }
             // Announcements
             $my_announcement_by_user_id = intval($user_id);
             $announcements = array();
             foreach ($course_list_code as $course) {
                 $course_info = api_get_course_info($course['code']);
                 if (!empty($course_info)) {
                     $content = AnnouncementManager::get_all_annoucement_by_user_course($course_info['code'], $my_announcement_by_user_id);
                     if (!empty($content)) {
                         $url = Display::url(Display::return_icon('announcement.png', get_lang('Announcements')) . $course_info['name'] . ' (' . $content['count'] . ')', api_get_path(WEB_CODE_PATH) . 'announcements/announcements.php?cidReq=' . $course['code']);
                         $announcements[] = Display::tag('li', $url);
                     }
                 }
             }
             if (!empty($announcements)) {
                 $html .= '<div class="social_menu_items">';
                 $html .= '<ul>';
                 foreach ($announcements as $announcement) {
                     $html .= $announcement;
                 }
                 $html .= '</ul>';
                 $html .= '</div>';
             }
         }
     }
     if ($show_delete_account_button) {
         $html .= '<div class="sidebar-nav"><ul><li>';
         $url = api_get_path(WEB_CODE_PATH) . 'auth/unsubscribe_account.php';
         $html .= Display::url(Display::return_icon('delete.png', get_lang('Unsubscribe'), array(), ICON_SIZE_TINY) . get_lang('Unsubscribe'), $url);
         $html .= '</li></ul></div>';
     }
     $html .= '';
     return $html;
 }