Kaynağa Gözat

Ticket #1904 - Courses: bugfixes.

AntonLV 6 yıl önce
ebeveyn
işleme
a0534b4ddc

+ 1 - 1
modules/base/groups/classes/BxBaseModGroupsMenuSnippetMeta.php

@@ -90,7 +90,7 @@ class BxBaseModGroupsMenuSnippetMeta extends BxBaseModProfileMenuSnippetMeta
         if(!$iFriends)
             return false;
 
-        return $this->getUnitMetaItemText(_t('_sys_menu_item_title_sm_members', $iFriends));
+        return $this->getUnitMetaItemText(_t(!empty($aItem['title']) ? $aItem['title'] : '_sys_menu_item_title_sm_members', $iFriends));
     }
 
     protected function _getMenuItemConnectionsTitle($sAction, &$oConnection)

+ 30 - 0
modules/boonex/courses/classes/BxCoursesMenuSnippetMeta.php

@@ -20,6 +20,36 @@ class BxCoursesMenuSnippetMeta extends BxBaseModGroupsMenuSnippetMeta
         unset($this->_aConnectionToFunctionCheck['sys_profiles_friends']);
         unset($this->_aConnectionToFunctionTitle['sys_profiles_friends']);
     }
+
+    protected function _getMenuItemConnectionsTitle($sAction, &$oConnection)
+    {
+        $iProfile = bx_get_logged_profile_id();
+        $iContentProfile = $this->_oContentProfile->id();
+
+        $aResult = array();
+        if($oConnection->isConnectedNotMutual($iProfile, $iContentProfile))
+            $aResult = array(
+                'add' => '',
+                'remove' => _t('_bx_courses_menu_item_title_sm_leave_cancel'),
+            );
+        else if($oConnection->isConnectedNotMutual($iContentProfile, $iProfile))
+            $aResult = array(
+                'add' => _t('_bx_courses_menu_item_title_sm_join_confirm'),
+                'remove' => _t('_bx_courses_menu_item_title_sm_leave_reject'),
+            );
+        else if($oConnection->isConnected($iProfile, $iContentProfile, true))
+            $aResult = array(
+                'add' => '',
+                'remove' => _t('_bx_courses_menu_item_title_sm_leave'),
+            );
+        else
+            $aResult = array(
+                'add' => _t('_bx_courses_menu_item_title_sm_join'),
+                'remove' => '',
+            );
+
+        return !empty($sAction) && isset($aResult[$sAction]) ? $aResult[$sAction] : $aResult;
+    }
 }
 
 /** @} */

+ 4 - 1
modules/boonex/courses/install/langs/en.xml

@@ -246,7 +246,10 @@
     <string name="_bx_courses_menu_item_title_sm_members"><![CDATA[{0} students]]></string>
     <string name="_bx_courses_menu_item_title_system_sm_join"><![CDATA[Attend]]></string>
     <string name="_bx_courses_menu_item_title_sm_join"><![CDATA[Attend]]></string>
-
+    <string name="_bx_courses_menu_item_title_sm_join_confirm"><![CDATA[Accept attend request]]></string>
+    <string name="_bx_courses_menu_item_title_sm_leave"><![CDATA[Leave]]></string>
+    <string name="_bx_courses_menu_item_title_sm_leave_reject"><![CDATA[Reject attend request]]></string>
+    <string name="_bx_courses_menu_item_title_sm_leave_cancel"><![CDATA[Cancel attend request]]></string>
 
     <string name="_bx_courses_grid_filter_item_title_adm_select_one_filter1"><![CDATA[All Statuses]]></string>
     <string name="_bx_courses_grid_filter_item_title_adm_active"><![CDATA[Active]]></string>