Quellcode durchsuchen

#4558 Build-in API support (user info)

roman.lesnikov@gmail.com vor 2 Jahren
Ursprung
Commit
3d4e509ed5
2 geänderte Dateien mit 26 neuen und 28 gelöschten Zeilen
  1. 26 0
      inc/classes/BxDolProfile.php
  2. 0 28
      template/scripts/BxBasePage.php

+ 26 - 0
inc/classes/BxDolProfile.php

@@ -188,6 +188,32 @@ class BxDolProfile extends BxDolFactory implements iBxDolProfile
             'active' => $oProfile->isActive(),
             'status' => $oProfile->getStatus(),
         ];
+        
+        if ($iId == bx_get_logged_profile_id()){
+            $oInformer = BxDolInformer::getInstance(BxDolTemplate::getInstance());
+            $sRet = $oInformer ? $oInformer->display() : '';
+            if ($sRet){
+                $aRv['informer'] = $sRet;
+            }
+
+            $oPayments = BxDolPayments::getInstance();
+            if($oPayments->isActive())
+                $aRv['cart'] = $oPayments->getCartItemsCount();
+            
+            $sModuleNotifications = 'bx_notifications';
+            if(BxDolRequest::serviceExists($sModuleNotifications, 'get_unread_notifications_num'))
+                $aRv['notifications'] = bx_srv($sModuleNotifications, 'get_unread_notifications_num', [$iId]);
+
+            if($o !== false && BxDolAccount::isAllowedCreateMultiple($iId)) {
+                $oAccount = BxDolAccount::getInstance();
+                if($oAccount != false && !$oAccount->isProfilesLimitReached()) {
+                    $oMenuProfileAdd = BxDolMenu::getObjectInstance('sys_add_profile');
+                    if($oMenuProfileAdd !== false)
+                        $aRv['menu'] = $oMenuProfileAdd->getCodeAPI();
+                }
+            }
+        }
+
 
         return $aRv;
     }

+ 0 - 28
template/scripts/BxBasePage.php

@@ -601,36 +601,8 @@ class BxBasePage extends BxDolPage
         }
 
         if (isLogged()) {
-            /* temporatery commented
-                if(($oMenuAddContent = BxDolMenu::getObjectInstance('sys_add_content')) !== false)
-                $a['menu_add'] = $oMenuAddContent->getCodeAPI();
-            */
-
             $o = BxDolProfile::getInstance();
             $a['user'] = BxDolProfile::getDataForPage($o);
-
-            $oInformer = BxDolInformer::getInstance(BxDolTemplate::getInstance());
-            $sRet = $oInformer ? $oInformer->display() : '';
-            if ($sRet){
-                $a['user']['informer'] = $sRet;
-            }
-            
-            $sModuleNotifications = 'bx_notifications';
-            if(BxDolRequest::serviceExists($sModuleNotifications, 'get_unread_notifications_num'))
-                $a['user']['notifications'] = bx_srv($sModuleNotifications, 'get_unread_notifications_num', [$o->id()]);
-
-            $oPayments = BxDolPayments::getInstance();
-            if($oPayments->isActive())
-                $a['user']['cart'] = $oPayments->getCartItemsCount();
-
-            if($o !== false && BxDolAccount::isAllowedCreateMultiple($o->id())) {
-                $oAccount = BxDolAccount::getInstance();
-                if($oAccount != false && !$oAccount->isProfilesLimitReached()) {
-                    $oMenuProfileAdd = BxDolMenu::getObjectInstance('sys_add_profile');
-                    if($oMenuProfileAdd !== false)
-                        $a['user']['menu'] = $oMenuProfileAdd->getCodeAPI();
-                }
-            }
         }
         
         $aExtras = [