Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 16303 | Rev 16701 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 16303 Rev 16321
Línea 206... Línea 206...
206
    public function heartBeatAction()
206
    public function heartBeatAction()
207
    {
207
    {
Línea 208... Línea 208...
208
 
208
 
209
        $request    = $this->getRequest();
209
        $request    = $this->getRequest();
210
        if ($request->isGet()) {
210
        if ($request->isGet()) {
211
            
211
 
212
            $utilMapper = UtilMapper::getInstance($this->adapter);
212
            $utilMapper = UtilMapper::getInstance($this->adapter);
Línea 213... Línea 213...
213
            $now = $utilMapper->getDatebaseNow();
213
            $now = $utilMapper->getDatebaseNow();
214
 
214
 
215
 
215
 
216
            $currentUserPlugin = $this->plugin('currentUserPlugin');
216
            $currentUserPlugin = $this->plugin('currentUserPlugin');
217
            $currentUser = $currentUserPlugin->getUser();
217
            $currentUser = $currentUserPlugin->getUser();
Línea 218... Línea 218...
218
            
218
 
219
            $currentNetworkPlugin = $this->plugin('currentNetworkPlugin');
219
            $currentNetworkPlugin = $this->plugin('currentNetworkPlugin');
Línea 320... Línea 320...
320
                }
320
                }
321
            }
321
            }
Línea 322... Línea 322...
322
 
322
 
323
            $chatUserMapper = ChatUserMapper::getInstance($this->adapter);
323
            $chatUserMapper = ChatUserMapper::getInstance($this->adapter);
324
            $chatMessageMapper = ChatMessageMapper::getInstance($this->adapter);
324
            $chatMessageMapper = ChatMessageMapper::getInstance($this->adapter);
325
            
325
 
326
            
326
 
327
            
327
 
328
            if($currentNetwork->relationship_user_mode == Network::RELATIONSHIP_USER_MODE_USER_2_USER)  {
328
            if ($currentNetwork->relationship_user_mode == Network::RELATIONSHIP_USER_MODE_USER_2_USER) {
329
                $connectionMapper = ConnectionMapper::getInstance($this->adapter);
329
                $connectionMapper = ConnectionMapper::getInstance($this->adapter);
330
                $userConnectionIds = $connectionMapper->fetchAllConnectionsByUserReturnIds($currentUser->id);
330
                $userConnectionIds = $connectionMapper->fetchAllConnectionsByUserReturnIds($currentUser->id);
331
            } else {
331
            } else {
332
                $userConnectionIds = [];
332
                $userConnectionIds = [];
333
            }
333
            }
334
            
334
 
335
            
335
 
336
            $userIds = [];
336
            $userIds = [];
337
            $records = $chatUserMapper->fetchAllByUserId($currentUser->id);
337
            $records = $chatUserMapper->fetchAllByUserId($currentUser->id);
338
            foreach ($records as $record) {
338
            foreach ($records as $record) {
339
                if($currentNetwork->relationship_user_mode == Network::RELATIONSHIP_USER_MODE_USER_2_USER)  {
339
                if ($currentNetwork->relationship_user_mode == Network::RELATIONSHIP_USER_MODE_USER_2_USER) {
340
                    
340
 
341
                    if ($record->user_id1 == $currentUser->id) {
341
                    if ($record->user_id1 == $currentUser->id) {
342
                        $connection_user_id = $record->user_id2;
342
                        $connection_user_id = $record->user_id2;
343
                    } else {
343
                    } else {
344
                        $connection_user_id = $record->user_id1;
344
                        $connection_user_id = $record->user_id1;
345
                    }
345
                    }
346
                    
346
 
347
                    if(in_array($connection_user_id, $userConnectionIds)) {
347
                    if (in_array($connection_user_id, $userConnectionIds)) {
348
                        array_push($userIds, $connection_user_id);
348
                        array_push($userIds, $connection_user_id);
349
                    }
-
 
350
                    
349
                    }
351
                } else {
350
                } else {
352
                    
351
 
353
                    
352
 
354
                    if ($record->user_id1 == $currentUser->id) {
353
                    if ($record->user_id1 == $currentUser->id) {
355
                        array_push($userIds, $record->user_id2);
354
                        array_push($userIds, $record->user_id2);
356
                    } else {
355
                    } else {
357
                        array_push($userIds, $record->user_id1);
356
                        array_push($userIds, $record->user_id1);
358
                    }
357
                    }
359
                }
358
                }
360
            }
359
            }
361
            
360
 
362
            /*
361
            /*
Línea 363... Línea 362...
363
             if($currentNetwork->relationship_user_mode == Network::RELATIONSHIP_USER_MODE_USER_2_USER)  {
362
             if($currentNetwork->relationship_user_mode == Network::RELATIONSHIP_USER_MODE_USER_2_USER)  {
364
             
363
             
Línea 377... Línea 376...
377
             }
376
             }
378
             }
377
             }
Línea 379... Línea 378...
379
             
378
             
380
             }
379
             }
381
             */
380
             */
382
            
381
 
383
            
382
 
384
            
383
 
385
            if ($userIds) {
384
            if ($userIds) {
386
                
385
 
387
                $userMapper = UserMapper::getInstance($this->adapter);
386
                $userMapper = UserMapper::getInstance($this->adapter);
388
                $users = $userMapper->fetchAllByIds($userIds);
387
                $users = $userMapper->fetchAllByIds($userIds);
389
                
388
 
390
                foreach ($users as $user) {
389
                foreach ($users as $user) {
391
                    $chatUser = $chatUserMapper->fetchOneByUserId1AndUserId2($currentUser->id, $user->id);
390
                    $chatUser = $chatUserMapper->fetchOneByUserId1AndUserId2($currentUser->id, $user->id);
392
                    if ($chatUser) {
391
                    if ($chatUser) {
393
                        $count_not_received_messages = $chatMessageMapper->countNotReceivedMessagesByChatIdAndToId($chatUser->id, $currentUser->id);
392
                        $count_not_received_messages = $chatMessageMapper->countNotReceivedMessagesByChatIdAndToId($chatUser->id, $currentUser->id);
394
                        $count_not_seen_messages = $chatMessageMapper->countNotSeenMessagesByChatIdAndToId($chatUser->id, $currentUser->id);
393
                        $count_not_seen_messages = $chatMessageMapper->countNotSeenMessagesByChatIdAndToId($chatUser->id, $currentUser->id);
395
                        $lastMessage = $chatMessageMapper->fetchLastMessage($chatUser->id, $currentUser->id);
394
                        $lastMessage = $chatMessageMapper->fetchLastMessage($chatUser->id, $currentUser->id);
396
                        
395
 
397
                        if ($lastMessage) {
396
                        if ($lastMessage) {
398
                            $lastMessage = Functions::timeAgo($lastMessage->added_on, $now);
397
                            $lastMessage = Functions::timeAgo($lastMessage->added_on, $now);
399
                        } else {
398
                        } else {
400
                            $lastMessage = '';
399
                            $lastMessage = '';
401
                        }
400
                        }
402
                        
401
 
403
                        if ($currentUser->id == $chatUser->user_id1) {
402
                        if ($currentUser->id == $chatUser->user_id1) {
404
                            $is_open = $chatUser->user_open1 == ChatUser::OPEN_YES;
403
                            $is_open = $chatUser->user_open1 == ChatUser::OPEN_YES;
405
                        } else {
404
                        } else {
406
                            $is_open = $chatUser->user_open2 == ChatUser::OPEN_YES;
405
                            $is_open = $chatUser->user_open2 == ChatUser::OPEN_YES;
407
                        }
406
                        }
408
                        
407
 
409
                        
408
 
410
                        $not_received_messages = $count_not_received_messages > 0;
409
                        $not_received_messages = $count_not_received_messages > 0;
411
                        $not_seen_messages = $count_not_seen_messages > 0;
410
                        $not_seen_messages = $count_not_seen_messages > 0;
412
                    } else {
411
                    } else {
413
                        $is_open = false;
412
                        $is_open = false;
414
                        $count_not_received_messages = 0;
413
                        $count_not_received_messages = 0;
415
                        $count_not_seen_messages =  0;
414
                        $count_not_seen_messages =  0;
416
                        $not_seen_messages = false;
415
                        $not_seen_messages = false;
417
                        $not_received_messages = false;
416
                        $not_received_messages = false;
418
                        $lastMessage = '';
417
                        $lastMessage = '';
419
                    }
418
                    }
420
                    
419
 
421
                    
420
 
422
                    $chat = [
421
                    $chat = [
423
                        'url_clear'                 => $this->url()->fromRoute('chat/clear', ['id' => $user->uuid]),
422
                        'url_clear'                 => $this->url()->fromRoute('chat/clear', ['id' => $user->uuid]),
424
                        'url_close'                 => $this->url()->fromRoute('chat/close', ['id' => $user->uuid]),
423
                        'url_close'                 => $this->url()->fromRoute('chat/close', ['id' => $user->uuid]),
425
                        'url_open'                  => $this->url()->fromRoute('chat/open', ['id' => $user->uuid]),
424
                        'url_open'                  => $this->url()->fromRoute('chat/open', ['id' => $user->uuid]),
Línea 430... Línea 429...
430
                        'url_get_all_messages'      => $this->url()->fromRoute('chat/get-all-messages', ['id' => $user->uuid]),
429
                        'url_get_all_messages'      => $this->url()->fromRoute('chat/get-all-messages', ['id' => $user->uuid]),
431
                        'url_zoom'                  => $this->url()->fromRoute('chat/zoom', ['id' => $user->uuid, 'type' => 'chat']),
430
                        'url_zoom'                  => $this->url()->fromRoute('chat/zoom', ['id' => $user->uuid, 'type' => 'chat']),
432
                        'id'                        => $user->uuid,
431
                        'id'                        => $user->uuid,
433
                        'name'                      => trim($user->first_name . ' ' . $user->last_name),
432
                        'name'                      => trim($user->first_name . ' ' . $user->last_name),
434
                        'image'                     => $this->url()->fromRoute('storage', ['code' => $user->uuid, 'type' => 'user', 'filename' => $user->image]),
433
                        'image'                     => $this->url()->fromRoute('storage', ['code' => $user->uuid, 'type' => 'user', 'filename' => $user->image]),
435
                       // 'profile'                   => $this->url()->fromRoute('profile/view', ['id' => $user->uuid]),
434
                        // 'profile'                   => $this->url()->fromRoute('profile/view', ['id' => $user->uuid]),
436
                        'type'                      => 'user',
435
                        'type'                      => 'user',
437
                        'online'                    => $user->online ? 1 : 0,
436
                        'online'                    => $user->online ? 1 : 0,
438
                        'is_open'                   => $is_open ? 1 : 0,
437
                        'is_open'                   => $is_open ? 1 : 0,
439
                        'not_seen_messages'         => $not_seen_messages,
438
                        'not_seen_messages'         => $not_seen_messages,
440
                        'not_received_messages'     => $not_received_messages,
439
                        'not_received_messages'     => $not_received_messages,
441
                        'count_not_seen_messages'       => $count_not_seen_messages,
440
                        'count_not_seen_messages'       => $count_not_seen_messages,
442
                        'count_not_received_messages'   => $count_not_received_messages,
441
                        'count_not_received_messages'   => $count_not_received_messages,
443
                        'last_message'                  => $lastMessage
442
                        'last_message'                  => $lastMessage
444
                        
443
 
445
                    ];
444
                    ];
446
                    
445
 
447
                    array_push($chats, $chat);
446
                    array_push($chats, $chat);
448
                }
447
                }
449
            }
448
            }
Línea 450... Línea 449...
450
 
449