Kaynağa Gözat

#4558 - Build-in API support (clearNotifs + connections)

romanlesnikov 1 yıl önce
ebeveyn
işleme
f0d7767b1b

+ 25 - 22
inc/classes/BxDolConnection.php

@@ -372,6 +372,30 @@ class BxDolConnection extends BxDolFactory implements iBxDolFactoryObject
         $this->checkAllowedConnect ($iInitiator, $iContent, true, $iMutual, false);
 
         $bMutual = false;
+        
+        /**
+         * Call socket.
+         */
+        if(($oSockets = BxDolSockets::getInstance()) && $oSockets->isEnabled()){
+            $aMessageInitiator = $aMessageContent = [
+                'object' => $this->_sObject, 
+                'action' => 'added',
+            ];
+
+            if(bx_is_api()) {
+                $aMessageInitiator = array_merge($aMessageInitiator, [
+                    'user' => BxDolProfile::getDataForPage($iInitiator)
+                ]);
+
+                $aMessageContent = array_merge($aMessageContent, [
+                    'user' => BxDolProfile::getDataForPage($iContent)
+                ]);
+            }
+
+            $oSockets->sendEvent('sys_connections', $iInitiator , 'changed', json_encode($aMessageInitiator));
+            $oSockets->sendEvent('sys_connections', $iContent , 'changed', json_encode($aMessageContent));
+        }
+        
         if($this->_aObject['type'] == BX_CONNECTIONS_TYPE_ONE_WAY || ($bMutual = ($this->_aObject['type'] == BX_CONNECTIONS_TYPE_MUTUAL && $iMutual))) {
             $oProfileQuery = BxDolProfileQuery::getInstance();
 
@@ -390,28 +414,7 @@ class BxDolConnection extends BxDolFactory implements iBxDolFactoryObject
                     BxDolRecommendation::updateData($iContent);
             }
 
-            /**
-             * Call socket.
-             */
-            if(($oSockets = BxDolSockets::getInstance()) && $oSockets->isEnabled()){
-                $aMessageInitiator = $aMessageContent = [
-                    'object' => $this->_sObject, 
-                    'action' => 'added',
-                ];
-
-                if(bx_is_api()) {
-                    $aMessageInitiator = array_merge($aMessageInitiator, [
-                        'user' => BxDolProfile::getDataForPage($iInitiator)
-                    ]);
-
-                    $aMessageContent = array_merge($aMessageContent, [
-                        'user' => BxDolProfile::getDataForPage($iContent)
-                    ]);
-                }
-
-                $oSockets->sendEvent('sys_connections', $iInitiator , 'changed', json_encode($aMessageInitiator));
-                $oSockets->sendEvent('sys_connections', $iContent , 'changed', json_encode($aMessageContent));
-            }
+            
         }
     }
 

+ 2 - 2
modules/boonex/notifications/classes/BxNtfsModule.php

@@ -256,8 +256,8 @@ class BxNtfsModule extends BxBaseModNotificationsModule
                 $aParams['start'] = end($aContent)['id'];
             }
 
-            if($aParams['start'] == 0)
-                $this->markAsRead($iOwnerId, $aParams);
+            //if($aParams['start'] == 0)
+            //    $this->markAsRead($iOwnerId, $aParams);
 
             return [bx_api_get_block('browse', [
                 'unit' => 'notifications',