Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

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

Rev 3086 Rev 3099
Línea 28... Línea 28...
28
use LeadersLinked\Mapper\UtilMapper;
28
use LeadersLinked\Mapper\UtilMapper;
Línea 29... Línea 29...
29
 
29
 
30
 
30
 
31
class ChatController extends AbstractActionController
-
 
32
{
31
class ChatController extends AbstractActionController
33
    const SESSION_CHAT_OPEN_BOXES = 'chat_open_boxes';
-
 
34
    
32
{
35
    
33
 
36
    /**
34
    /**
37
     *
35
     *
38
     * @var AdapterInterface
36
     * @var AdapterInterface
Línea 68... Línea 66...
68
    {
66
    {
69
        $this->adapter  = $adapter;
67
        $this->adapter  = $adapter;
70
        $this->cache    = $cache;
68
        $this->cache    = $cache;
71
        $this->logger   = $logger;
69
        $this->logger   = $logger;
72
        $this->config   = $config;
70
        $this->config   = $config;
73
        
-
 
74
 
71
 
75
        if(!isset($_SESSION[self::SESSION_CHAT_OPEN_BOXES])) {
-
 
76
            $_SESSION[self::SESSION_CHAT_OPEN_BOXES] = [];
-
 
77
        }
-
 
Línea 78... Línea 72...
78
 
72
 
Línea 79... Línea 73...
79
    }
73
    }
80
    
74
    
Línea 240... Línea 234...
240
            
234
            
241
            if (is_array($results)) {
235
            if (is_array($results)) {
242
                foreach ($results as $r) 
236
                foreach ($results as $r) 
Línea 243... Línea 237...
243
                {
237
                {
244
                    
238
                    
245
                    $chatGroup = $chatGroupMapper->fetchOne($r->group_id); 
-
 
246
                    $chatUserOwner = $chatGroupUserMapper->fetchOwnerByGroupId($chatGroup->id);
-
 
247
                    
-
 
248
                    
239
                    $chatGroup      = $chatGroupMapper->fetchOne($r->group_id); 
249
                    $is_open = in_array($chatGroup->uuid, $_SESSION[self::SESSION_CHAT_OPEN_BOXES]);
-
 
250
                    //$not_seen_messages     = $chatGroupUserMessageMapper->existNotSeenMessages($chatGroup->id, $currentUser->id);
240
                    $chatUserOwner  = $chatGroupUserMapper->fetchOwnerByGroupId($chatGroup->id);
251
                    //$not_received_messages = $chatGroupUserMessageMapper->existNotReceivedMessages($chatGroup->id, $currentUser->id);
241
                    $chatUser       = $chatGroupUserMapper->fetchOneByGroupIdAndUserId($chatGroup->id, $currentUser->id);
252
                    
-
 
253
                    //$not_seen_messages     = $chatGroupUserMessageMapper->existNotSeenMessages($chatGroup->id, $currentUser->id);
-
 
254
                    //$not_received_messages = $chatGroupUserMessageMapper->existNotReceivedMessages($chatGroup->id, $currentUser->id);
242
 
255
                    
243
                    $is_open                        = $chatUser->open == ChatGroupUser::OPEN_YES;
256
                    $count_not_seen_messages     = $chatGroupUserMessageMapper->countNotSeenMessages($chatGroup->id, $currentUser->id);
244
                    $count_not_seen_messages        = $chatGroupUserMessageMapper->countNotSeenMessages($chatGroup->id, $currentUser->id);
Línea 257... Línea 245...
257
                    $count_not_received_messages = $chatGroupUserMessageMapper->countNotReceivedMessages($chatGroup->id, $currentUser->id);
245
                    $count_not_received_messages    = $chatGroupUserMessageMapper->countNotReceivedMessages($chatGroup->id, $currentUser->id);
258
                    $lastMessage                    = $chatGroupUserMessageMapper->fetchLastMessage($chatGroup->id, $currentUser->id);
246
                    $lastMessage                    = $chatGroupUserMessageMapper->fetchLastMessage($chatGroup->id, $currentUser->id);
259
                    
247
                    
Línea 362... Línea 350...
362
                            }
350
                            }
363
                        } else {
351
                        } else {
364
                            $lastMessage = '';
352
                            $lastMessage = '';
365
                        }
353
                        }
Línea -... Línea 354...
-
 
354
                        
-
 
355
                        if($currentUser->id == $chatUser->user_id1) {
-
 
356
                            $is_open = $chatUser->user_open1 == ChatUser::OPEN_YES;
-
 
357
                        } else {
-
 
358
                            $is_open = $chatUser->user_open2 == ChatUser::OPEN_YES;
Línea 366... Línea -...
366
                        
-
 
-
 
359
                        }
367
                        
360
                        
368
                        $is_open = in_array($chatUser->uuid, $_SESSION[self::SESSION_CHAT_OPEN_BOXES]);
361
 
369
                        $not_received_messages = $count_not_received_messages > 0;
362
                        $not_received_messages = $count_not_received_messages > 0;
370
                        $not_seen_messages = $count_not_seen_messages > 0;
363
                        $not_seen_messages = $count_not_seen_messages > 0;
371
                    } else {
364
                    } else {
Línea 899... Línea 892...
899
                'success' => false,
892
                'success' => false,
900
                'data' => 'ERROR_CHAT_GROUP_YOU_NOT_MEMBER'
893
                'data' => 'ERROR_CHAT_GROUP_YOU_NOT_MEMBER'
901
            ];
894
            ];
902
        }
895
        }
Línea 903... Línea -...
903
        
-
 
904
        if(!in_array(trim($chatGroup->uuid), $_SESSION[self::SESSION_CHAT_OPEN_BOXES])) {
896
        
905
            $_SESSION[self::SESSION_CHAT_OPEN_BOXES][] = $chatGroup->uuid;
897
        $chatGroupUserMapper->markIsOpen($chatGroupUser->group_id, $chatGroupUser->user_id);
Línea 906... Línea 898...
906
        }
898
        
907
        
899
        
Línea 908... Línea 900...
908
        $chatGroupMessageMapper = ChatGroupMessageMapper::getInstance($this->adapter);
900
        $chatGroupMessageMapper = ChatGroupMessageMapper::getInstance($this->adapter);
Línea 976... Línea 968...
976
    private function getAllMessagesForChatUser($chatUser, $page = 0)
968
    private function getAllMessagesForChatUser($chatUser, $page = 0)
977
    {
969
    {
978
        $currentUserPlugin = $this->plugin('currentUserPlugin');
970
        $currentUserPlugin = $this->plugin('currentUserPlugin');
979
        $currentUser = $currentUserPlugin->getUser();
971
        $currentUser = $currentUserPlugin->getUser();
Línea -... Línea 972...
-
 
972
        
980
        
973
        $chatUserMapper = ChatUserMapper::getInstance($this->adapter);
981
        if(!in_array(trim($chatUser->uuid), $_SESSION[self::SESSION_CHAT_OPEN_BOXES])) {
974
        if($currentUser->id == $chatUser->user_id1) {
-
 
975
            $chatUserMapper->markIsOpen1($chatUser->id);
-
 
976
        } else {
982
            $_SESSION[self::SESSION_CHAT_OPEN_BOXES][] = $chatUser->uuid;
977
            $chatUserMapper->markIsOpen2($chatUser->id);
983
        }
978
        }
984
        
979
 
985
        $chatMessageMapper = ChatMessageMapper::getInstance($this->adapter);
980
        $chatMessageMapper = ChatMessageMapper::getInstance($this->adapter);
986
        $paginator = $chatMessageMapper->getAllMessagesPaginatorByChatId($chatUser->id, $page);
981
        $paginator = $chatMessageMapper->getAllMessagesPaginatorByChatId($chatUser->id, $page);
987
        $pages = $paginator->count();
982
        $pages = $paginator->count();
Línea 1815... Línea 1810...
1815
                    'success' => false,
1810
                    'success' => false,
1816
                    'data' => 'ERROR_PARAMETERS_ARE_INVALID'
1811
                    'data' => 'ERROR_PARAMETERS_ARE_INVALID'
1817
                ]);
1812
                ]);
1818
            }
1813
            }
Línea 1819... Línea -...
1819
            
-
 
Línea 1820... Línea 1814...
1820
            $uuid = '';
1814
            
1821
            
1815
            
1822
            $chatGroupMapper = ChatGroupMapper::getInstance($this->adapter);
1816
            $chatGroupMapper = ChatGroupMapper::getInstance($this->adapter);
-
 
1817
            $chatGroup = $chatGroupMapper->fetchOneByUuid($id);
-
 
1818
            if ($chatGroup) {
1823
            $chatGroup = $chatGroupMapper->fetchOneByUuid($id);
1819
                
-
 
1820
                $chatGroupUserMapper = ChatGroupUserMapper::getInstance($this->adapter);
-
 
1821
                $chatGroupUserMapper->markIsClose($chatGroup->id, $currentUser->id);
1824
            if ($chatGroup) {
1822
                
Línea 1825... Línea 1823...
1825
                $uuid = $chatGroup->uuid;
1823
 
1826
            } else {
1824
            } else {
1827
                
1825
                
Línea 1836... Línea 1834...
1836
                
1834
                
1837
                
1835
                
1838
                $chatUserMapper = ChatUserMapper::getInstance($this->adapter);
1836
                $chatUserMapper = ChatUserMapper::getInstance($this->adapter);
-
 
1837
                $chatUser = $chatUserMapper->fetchOneByUserId1AndUserId2($currentUser->id, $user->id);
1839
                $chatUser = $chatUserMapper->fetchOneByUserId1AndUserId2($currentUser->id, $user->id);
1838
                if($chatUser) {
-
 
1839
                   
-
 
1840
                    if($currentUser->id == $chatUser->user_id1) {
-
 
1841
                        $chatUserMapper->markIsClose1($chatUser->id);
-
 
1842
                    } else {
-
 
1843
                        $chatUserMapper->markIsClose2($chatUser->id);
-
 
1844
                    }
1840
                if($chatUser) {
1845
                    
1841
                    $uuid = $chatUser->uuid;
1846
                    
Línea 1842... Línea -...
1842
                }
-
 
1843
            }
-
 
1844
            
-
 
1845
            if($uuid) {
-
 
1846
                $_SESSION[self::SESSION_CHAT_OPEN_BOXES] = array_filter($_SESSION[self::SESSION_CHAT_OPEN_BOXES], function($var) use($uuid)  {
-
 
1847
                    return $uuid != $var;
-
 
Línea 1848... Línea 1847...
1848
                });
1847
                }
Línea 1849... Línea 1848...
1849
            }
1848
            }
1850
            
1849
            
Línea 1898... Línea 1897...
1898
            $uuid = '';
1897
            $uuid = '';
Línea 1899... Línea 1898...
1899
            
1898
            
1900
            $chatGroupMapper = ChatGroupMapper::getInstance($this->adapter);
1899
            $chatGroupMapper = ChatGroupMapper::getInstance($this->adapter);
1901
            $chatGroup = $chatGroupMapper->fetchOneByUuid($id);
1900
            $chatGroup = $chatGroupMapper->fetchOneByUuid($id);
-
 
1901
            if ($chatGroup) {
1902
            if ($chatGroup) {
1902
                $chatGroupUserMapper = ChatGroupUserMapper::getInstance($this->adapter);
1903
                $uuid = $chatGroup->uuid;
1903
                $chatGroupUserMapper->markIsClose($chatGroup->id, $currentUser->id);
Línea 1904... Línea 1904...
1904
            } else {
1904
            } else {
1905
                
1905
                
1906
                $userMapper = UserMapper::getInstance($this->adapter);
1906
                $userMapper = UserMapper::getInstance($this->adapter);
Línea 1914... Línea 1914...
1914
                
1914
                
1915
                
1915
                
1916
                $chatUserMapper = ChatUserMapper::getInstance($this->adapter);
1916
                $chatUserMapper = ChatUserMapper::getInstance($this->adapter);
1917
                $chatUser = $chatUserMapper->fetchOneByUserId1AndUserId2($currentUser->id, $user->id);
1917
                $chatUser = $chatUserMapper->fetchOneByUserId1AndUserId2($currentUser->id, $user->id);
-
 
1918
                if($chatUser) {
-
 
1919
                    if($currentUser->id == $chatUser->user_id1) {
-
 
1920
                        $chatUserMapper->markIsClose1($chatUser->id);
-
 
1921
                    } else {
-
 
1922
                        $chatUserMapper->markIsClose2($chatUser->id);
1918
                if($chatUser) {
1923
                    }
1919
                    $uuid = $chatUser->uuid;
1924
                    
1920
                }
1925
                }
1921
            }
-
 
1922
            
-
 
1923
            if($uuid) {
-
 
1924
                $_SESSION[self::SESSION_CHAT_OPEN_BOXES] = array_filter($_SESSION[self::SESSION_CHAT_OPEN_BOXES], function($var) use($uuid)  {
-
 
1925
                    return $uuid != $var;
-
 
1926
                });
-
 
Línea 1927... Línea 1926...
1927
            }
1926
            }
Línea 1928... Línea 1927...
1928
            
1927
 
1929
 
1928