Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

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

Rev 1733 Rev 1734
Línea 26... Línea 26...
26
        } catch (error) {
26
        } catch (error) {
27
            console.log('>>: error > ', error)
27
            console.log('>>: error > ', error)
28
        }
28
        }
29
    }
29
    }
Línea 30... Línea 30...
30
 
30
 
31
    const getMessages = async (conversation = selectedConversation, _page = defaultPages.current, justPaginate = false) => {
31
    const getMessages = async ({ messages_link = selectedConversation.messages_link, _page = defaultPages.current }) => {
32
        try {
-
 
33
            const res = await axios.get(conversation.messages_link + '?page=' + _page)
-
 
34
            if (res.data.pagination?.last !== page.last) {
32
        try {
35
                setPage({
-
 
36
                    ...page,
33
            setIsGettingMessages(true)
37
                    last: res.data.pagination.last
-
 
38
                })
34
            const { data } = await axios.get(messages_link + '?page=' + _page)
39
            }
35
 
40
            if (justPaginate) {
36
            if (data.success) {
41
                setMessages([...messages, ...res.data.data])
-
 
42
            } else {
37
                setIsGettingMessages(false)
43
                setMessages(res.data.data)
38
                return { pages: data.pagination, msgs: data.data }
44
            }
-
 
45
            setIsGettingMessages(false)
39
            }
46
        }
40
        }
47
        catch (error) {
41
        catch (error) {
48
            console.log('>>: error > ', error)
42
            console.log('>>: error > ', error)
49
        }
43
        }
Línea 50... Línea 44...
50
    }
44
    }
51
 
45
 
52
    const handleChangeConversation = async conversation => {
46
    const handleChangeConversation = async conversation => {
53
        setPage(defaultPages)
47
        setPage(defaultPages)
54
        setMessages([])
-
 
55
        setSelectedConversation(conversation)
48
        setMessages([])
Línea 56... Línea 49...
56
        getMessages(conversation, defaultPages.current)
49
        setSelectedConversation(conversation)
57
    }
50
    }
58
 
51
 
Línea 73... Línea 66...
73
            }
66
            }
74
        }
67
        }
75
    }
68
    }
Línea 76... Línea 69...
76
 
69
 
77
    const getMoreMessages = () => {
-
 
78
        if (!isGettingMessages) {
-
 
79
            setIsGettingMessages(true)
-
 
80
        }
70
    const getMoreMessages = () => {
81
        if (page.last > page.current) {
71
        if (page.last > page.current) {
82
            setPage({ ...page, current: page.current += 1 })
-
 
83
            getMessages(selectedConversation, page.current, true)
72
            setPage({ ...page, current: page.current += 1 })
84
        }
73
        }
Línea 85... Línea 74...
85
    }
74
    }
86
 
75
 
Línea 99... Línea 88...
99
        }
88
        }
100
    }
89
    }
Línea 101... Línea 90...
101
 
90
 
102
    const handleInmailPerson = uuid => {
91
    const handleInmailPerson = uuid => {
-
 
92
        onClose()
103
        onClose()
93
        axios.get(uuid)
-
 
94
            .then(({ data }) => {
-
 
95
                if (data.success) {
-
 
96
                    const newConversation = data.data.find(conversation => conversation.uuid === uuid)
-
 
97
                    handleChangeConversation(newConversation)
-
 
98
                }
104
        window.location.href = '/inmail/' + uuid
99
            })
105
        setTimeout(() => {
100
        setTimeout(() => {
106
            window.location.reload()
101
            window.location.reload()
107
        }, 1000)
102
        }, 1000)
Línea 123... Línea 118...
123
 
118
 
124
    useEffect(() => {
119
    useEffect(() => {
125
        searchUsers()
120
        searchUsers()
Línea -... Línea 121...
-
 
121
    }, [search]);
-
 
122
 
-
 
123
    useEffect(() => {
-
 
124
        if (selectedConversation && !isGettingMessages) {
-
 
125
            getMessages()
-
 
126
                .then(({ pages, msgs }) => {
-
 
127
 
-
 
128
                    setPage({ ...page, last: pages.last })
-
 
129
                    setMessages(msgs)
-
 
130
                })
-
 
131
        }
-
 
132
    }, [selectedConversation]);
-
 
133
 
-
 
134
    useEffect(() => {
-
 
135
        if (selectedConversation && !isGettingMessages) {
-
 
136
            getMessages({ _page: page.current })
-
 
137
                .then(({ pages, msgs }) => {
-
 
138
 
-
 
139
                    setPage({ ...page, last: pages.last })
-
 
140
                    setMessages(prev => prev.push(msgs))
-
 
141
                })
-
 
142
        }
126
    }, [search]);
143
    }, [page.current]);
127
 
144
 
128
    return (
145
    return (
129
        <>
146
        <>
130
            <Modal
147
            <Modal