Browse Source

Removing message/social links when the message tool is disable see BT#6575

Julio Montoya 11 years ago
parent
commit
93334257c2

+ 56 - 44
main/inc/lib/social.lib.php

@@ -429,7 +429,8 @@ class SocialManager extends UserManager {
      * @param bool show profile or not (show or hide the user image/information)
      *
      */
-    public static function show_social_menu($show = '', $group_id = 0, $user_id = 0, $show_full_profile = false, $show_delete_account_button = false) {
+    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();
         }
@@ -445,65 +446,70 @@ class SocialManager extends UserManager {
             $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');
+        $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) :'');
 
         $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 = $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 = '<div class="social-menu">';
-          if (in_array($show, $show_groups) && !empty($group_id)) {
+        if (in_array($show, $show_groups) && !empty($group_id)) {
             //--- Group image
             $group_info = $usergroup->get($group_id);
             $big        = $usergroup->get_picture_group($group_id, $group_info['picture'],160,GROUP_IMAGE_SIZE_BIG);
 
             $html .= '<div class="social-content-image">';
-                $html .= '<div class="well social-background-content">';
-                $html .= Display::url('<img src='.$big['file'].' class="social-groups-image" /> </a><br /><br />', api_get_path(WEB_PATH).'main/social/groups.php?id='.$group_id);
-                if ($usergroup->is_group_admin($group_id, api_get_user_id())) {
-                    $html .= '<div id="edit_image" class="hidden_message" style="display:none"><a href="'.api_get_path(WEB_PATH).'main/social/group_edit.php?id='.$group_id.'">'.get_lang('EditGroup').'</a></div>';
-                }
-                $html .= '</div>';
-              $html .= '</div>';
-
-          } else {
+            $html .= '<div class="well social-background-content">';
+            $html .= Display::url('<img src='.$big['file'].' class="social-groups-image" /> </a><br /><br />', api_get_path(WEB_PATH).'main/social/groups.php?id='.$group_id);
+            if ($usergroup->is_group_admin($group_id, api_get_user_id())) {
+                $html .= '<div id="edit_image" class="hidden_message" style="display:none"><a href="'.api_get_path(WEB_PATH).'main/social/group_edit.php?id='.$group_id.'">'.get_lang('EditGroup').'</a></div>';
+            }
+            $html .= '</div>';
+            $html .= '</div>';
+        } else {
             $img_array = UserManager::get_user_picture_path_by_id($user_id,'web',true,true);
             $big_image = UserManager::get_picture_user($user_id, $img_array['file'],'', USER_IMAGE_SIZE_BIG);
             $big_image = $big_image['file'];
             $normal_image = $img_array['dir'].$img_array['file'];
 
-              //--- User image
+            //--- User image
 
             $html .= '<div class="well social-background-content">';
-                if ($img_array['file'] != 'unknown.jpg') {
-                    $html .= '<a class="thumbnail ajax" href="'.$big_image.'"><img src='.$normal_image.' /> </a>';
-                } else {
-                    $html .= '<img src='.$normal_image.' width="110px" />';
-                }
-                if (api_get_user_id() == $user_id) {
-                    $html .= '<div id="edit_image" class="hidden_message" style="display:none">';
-                    $html .= '<a href="'.api_get_path(WEB_PATH).'main/auth/profile.php">'.get_lang('EditProfile').'</a></div>';
-                }
+            if ($img_array['file'] != 'unknown.jpg') {
+                $html .= '<a class="thumbnail ajax" href="'.$big_image.'"><img src='.$normal_image.' /> </a>';
+            } else {
+                $html .= '<img src='.$normal_image.' width="110px" />';
+            }
+            if (api_get_user_id() == $user_id) {
+                $html .= '<div id="edit_image" class="hidden_message" style="display:none">';
+                $html .= '<a href="'.api_get_path(WEB_PATH).'main/auth/profile.php">'.get_lang('EditProfile').'</a></div>';
+            }
             $html .= '</div>';
-          }
+        }
 
         if (!in_array($show, array('shared_profile', 'groups', 'group_edit', 'member_list','waiting_list','invite_friends'))) {
 
             $html .= '<div class="well sidebar-nav"><ul class="nav nav-list">';
+
             $active = $show=='home' ? 'active' : null;
             $html .= '<li class="'.$active.'"><a href="'.api_get_path(WEB_PATH).'main/social/home.php">'.Display::return_icon('home.png',get_lang('Home'),array()).get_lang('Home').'</a></li>';
-            $active = $show=='messages' ? 'active' : null;
-            $html .= '<li class="'.$active.'"><a href="'.api_get_path(WEB_PATH).'main/messages/inbox.php?f=social">'.Display::return_icon('instant_message.png',get_lang('Messages'),array()).get_lang('Messages').$count_unread_message.'</a></li>';
 
-            //Invitations
-            $active = $show=='invitations' ? 'active' : null;
-            $html .= '<li class="'.$active.'"><a href="'.api_get_path(WEB_PATH).'main/social/invitations.php">'.Display::return_icon('invitation.png',get_lang('Invitations'),array()).get_lang('Invitations').$total_invitations.'</a></li>';
+            if (api_get_setting('allow_message_tool') == 'true') {
+                $active = $show=='messages' ? 'active' : null;
+                $html .= '<li class="'.$active.'"><a href="'.api_get_path(WEB_PATH).'main/messages/inbox.php?f=social">'.Display::return_icon('instant_message.png',get_lang('Messages'),array()).get_lang('Messages').$count_unread_message.'</a></li>';
+            }
+
+            // Invitations
+            if (api_get_setting('allow_message_tool') == 'true') {
+                $active = $show=='invitations' ? 'active' : null;
+                $html .= '<li class="'.$active.'"><a href="'.api_get_path(WEB_PATH).'main/social/invitations.php">'.Display::return_icon('invitation.png',get_lang('Invitations'),array()).get_lang('Invitations').$total_invitations.'</a></li>';
+            }
 
             //Shared profile and groups
             $active = $show=='shared_profile' ? 'active' : null;
@@ -535,10 +541,13 @@ class SocialManager extends UserManager {
 
               // My own profile
             if ($show_full_profile && $user_id == intval(api_get_user_id())) {
-                $html .= '<li><a href="'.api_get_path(WEB_PATH).'main/social/home.php">'.Display::return_icon('home.png',get_lang('Home'),array()).get_lang('Home').'</a></li>
-                          <li><a href="'.api_get_path(WEB_PATH).'main/messages/inbox.php?f=social">'.Display::return_icon('instant_message.png', get_lang('Messages'),array()).get_lang('Messages').$count_unread_message.'</a></li>';
-                $active = $show=='invitations' ? 'active' : null;
-                $html .= '<li class="'.$active.'"><a href="'.api_get_path(WEB_PATH).'main/social/invitations.php">'.Display::return_icon('invitation.png',get_lang('Invitations'),array()).get_lang('Invitations').$total_invitations.'</a></li>';
+                $html .= '<li><a href="'.api_get_path(WEB_PATH).'main/social/home.php">'.Display::return_icon('home.png',get_lang('Home'),array()).get_lang('Home').'</a></li>';
+
+                if (api_get_setting('allow_message_tool') == 'true') {
+                    $html .= '<li><a href="'.api_get_path(WEB_PATH).'main/messages/inbox.php?f=social">'.Display::return_icon('instant_message.png', get_lang('Messages'),array()).get_lang('Messages').$count_unread_message.'</a></li>';
+                    $active = $show=='invitations' ? 'active' : null;
+                    $html .= '<li class="'.$active.'"><a href="'.api_get_path(WEB_PATH).'main/social/invitations.php">'.Display::return_icon('invitation.png',get_lang('Invitations'),array()).get_lang('Invitations').$total_invitations.'</a></li>';
+                }
 
                 $html .= '<li class="active"><a href="'.api_get_path(WEB_PATH).'main/social/profile.php">'.Display::return_icon('my_shared_profile.png', get_lang('ViewMySharedProfile'), array('style'=>'float:left')).''.get_lang('ViewMySharedProfile').'</a></li>
                           <li><a href="'.api_get_path(WEB_PATH).'main/social/friends.php">'.Display::return_icon('friend.png',get_lang('Friends'),array()).get_lang('Friends').'</a></li>
@@ -551,19 +560,22 @@ class SocialManager extends UserManager {
 
             // My friend profile
 
-            if ($user_id != api_get_user_id()) {
-                $html .=  '<li><a href="javascript:void(0);" onclick="javascript:send_message_to_user(\''.$user_id.'\');" title="'.get_lang('SendMessage').'">';
-                $html .=  Display::return_icon('compose_message.png',get_lang('SendMessage')).'&nbsp;&nbsp;'.get_lang('SendMessage').'</a></li>';
-            }
+            if (api_get_setting('allow_message_tool') == 'true') {
+
+                if ($user_id != api_get_user_id()) {
+                    $html .=  '<li><a href="javascript:void(0);" onclick="javascript:send_message_to_user(\''.$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());
+                //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_PATH).'main/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  href="javascript:void(0);" onclick="javascript:send_invitation_to_user(\''.$user_id.'\');" title="'.get_lang('SendInvitation').'">'.Display :: return_icon('invitation.png', get_lang('SocialInvitationToFriends')).'&nbsp;'.get_lang('SendInvitation').'</a></li>';
+                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_PATH).'main/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  href="javascript:void(0);" onclick="javascript:send_invitation_to_user(\''.$user_id.'\');" title="'.get_lang('SendInvitation').'">'.Display :: return_icon('invitation.png', get_lang('SocialInvitationToFriends')).'&nbsp;'.get_lang('SendInvitation').'</a></li>';
+                    }
                 }
             }
 

+ 3 - 1
main/inc/lib/template.lib.php

@@ -1190,7 +1190,9 @@ class Template
                     $navigation['myprofile'] = $possible_tabs['myprofile'];
                 }
             } else {
-                $menu_navigation['myprofile'] = $possible_tabs['myprofile'];
+                if (isset($possible_tabs['myprofile'])) {
+                    $menu_navigation['myprofile'] = $possible_tabs['myprofile'];
+                }
             }
 
             // My Agenda

+ 4 - 5
main/messages/inbox.php

@@ -11,9 +11,8 @@
 $language_file = array('registration', 'messages', 'userInfo');
 $cidReset = true;
 
-require_once '../inc/global.inc.php';
-
 api_block_anonymous_users();
+
 if (isset($_GET['messages_page_nr'])) {
     $social_link = '';
     if ($_REQUEST['f'] == 'social') {
@@ -24,11 +23,11 @@ if (isset($_GET['messages_page_nr'])) {
     }
 }
 if (api_get_setting('allow_message_tool') != 'true') {
-    api_not_allowed();
+    api_not_allowed(true);
+    return;
 }
 
 $htmlHeadXtra[] = '<script>
-
 function show_icon_edit(element_html) {
 	ident="#edit_image";
 	$(ident).show();
@@ -179,4 +178,4 @@ if (api_get_setting('allow_social_tool') == 'true') {
     $tpl->assign('message', $show_message);
     $tpl->assign('content', $content);
     $tpl->display_one_col_template();
-}
+}

+ 3 - 6
main/social/home.php

@@ -7,24 +7,21 @@
 /**
  * Initialization
  */
-$language_file = array('userInfo');
 $cidReset = true;
 
-require_once '../inc/global.inc.php';
-
 $user_id = api_get_user_id();
 $show_full_profile = true;
+
 // Social tab
 $this_section = SECTION_SOCIAL;
 unset($_SESSION['this_section']);//for hmtl editor repository
 
 api_block_anonymous_users();
 
-if (api_get_setting('allow_social_tool') !='true' ) {
+if (api_get_setting('allow_social_tool') != 'true') {
     $url = api_get_path(WEB_CODE_PATH).'auth/profile.php';
     header('Location: '.$url);
     exit;
-    api_not_allowed();
 }
 
 // Fast upload image
@@ -191,4 +188,4 @@ $tpl = $app['template'];
 $tpl->assign('social_left_content', $social_left_content);
 $tpl->assign('social_right_content', $social_right_content);
 $social_layout = $tpl->get_template('layout/social_layout.tpl');
-$tpl->display($social_layout);
+$tpl->display($social_layout);

+ 13 - 8
main/social/invitations.php

@@ -7,15 +7,20 @@
 /**
  * Initialization
  */
-$language_file = array('messages','userInfo');
-$cidReset=true;
-require_once '../inc/global.inc.php';
-
+$cidReset = true;
 api_block_anonymous_users();
 
-if (api_get_setting('allow_social_tool') !='true') {
+if (api_get_setting('allow_social_tool') != 'true') {
     api_not_allowed();
+    return;
+}
+
+if (api_get_setting('allow_message_tool') != 'true') {
+    api_not_allowed(true);
+    return;
 }
+
+
 $usergroup = new UserGroup();
 $this_section = SECTION_SOCIAL;
 
@@ -113,7 +118,7 @@ if ($number_loop != 0) {
         $sender_user_id = $invitation['user_sender_id'];
         $social_right_content .= '<div id="id_'.$sender_user_id.'" class="invitation_confirm span8">';
 
-        $picture = UserManager::get_user_picture_path_by_id($sender_user_id,'web',false,true);
+        $picture = UserManager::get_user_picture_path_by_id($sender_user_id, 'web', false, true);
         $friends_profile = SocialManager::get_picture_user($sender_user_id, $picture['file'], 92);
         $user_info	= api_get_user_info($sender_user_id);
         $title 		= Security::remove_XSS($invitation['title'], STUDENT, true);
@@ -141,14 +146,14 @@ if ($number_loop != 0) {
     }
 }
 
-if (count($list_get_invitation_sent) > 0 ) {
+if (count($list_get_invitation_sent) > 0) {
     $social_right_content .= '<div class="span8">'.Display::page_subheader(get_lang('InvitationSent')).'</div>';
     foreach ($list_get_invitation_sent as $invitation) {
         $sender_user_id = $invitation['user_receiver_id'];
 
         $social_right_content .= '<div id="id_'.$sender_user_id.'" class="invitation_confirm span8">';
 
-        $picture = UserManager::get_user_picture_path_by_id($sender_user_id,'web',false,true);
+        $picture = UserManager::get_user_picture_path_by_id($sender_user_id,'web', false, true);
         $friends_profile = SocialManager::get_picture_user($sender_user_id, $picture['file'], 92);
         $user_info	= api_get_user_info($sender_user_id);
 

+ 9 - 10
main/template/default/layout/menu.tpl

@@ -19,17 +19,13 @@
 
                 {% if _u.logged == 1 %}
                 <ul class="nav pull-right">
-
-                    {% if user_notifications is not null %}
-                    <li>
-                        <a href="{{ profile_url }}">{{ user_notifications }}</a>
-                    </li>
-                    {% endif %}
-
                     {% if is_profile_editable == true %}
                         <li class="dropdown">
                             <a class="dropdown-toggle" data-toggle="dropdown" href="#">
-                                {{ _u.messages_count }}  <img src="{{ _u.avatar_small }}"/>
+                                {% if ('allow_message_tool' | get_setting) == 'true' %}
+                                    {{ _u.messages_count }}
+                                {% endif %}
+                                <img src="{{ _u.avatar_small }}"/>
                                 {{ _u.complete_name }}
                                 <b class="caret"></b>
                             </a>
@@ -43,8 +39,11 @@
                     {% else %}
                         <li>
                             <a>
-                            {{ _u.messages_count }}  <img src="{{ _u.avatar_small }}"/>
-                            {{ _u.complete_name }}
+                                {% if ('allow_message_tool' | get_setting) == 'true' %}
+                                    {{ _u.messages_count }}
+                                {% endif %}
+                                <img src="{{ _u.avatar_small }}"/>
+                                {{ _u.complete_name }}
                             </a>
                         </li>
                     {% endif %}