Proyectos de Subversion LeadersLinked - Backend

Rev

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

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