mirror of
				https://gitlab.com/animath/si/plateforme.git
				synced 2025-11-04 13:12:17 +01:00 
			
		
		
		
	Fill channel selector using JavaScript
Signed-off-by: Emmy D'Anello <emmy.danello@animath.fr>
This commit is contained in:
		@@ -60,11 +60,27 @@ function sendMessage() {
 | 
			
		||||
 | 
			
		||||
function setChannels(new_channels) {
 | 
			
		||||
    channels = {}
 | 
			
		||||
    let navTab = document.getElementById('nav-channels-tab')
 | 
			
		||||
    navTab.innerHTML = ''
 | 
			
		||||
 | 
			
		||||
    for (let channel of new_channels) {
 | 
			
		||||
        channels[channel['id']] = channel
 | 
			
		||||
        if (!messages[channel['id']])
 | 
			
		||||
            messages[channel['id']] = new Map()
 | 
			
		||||
 | 
			
		||||
        let navItem = document.createElement('li')
 | 
			
		||||
        navItem.classList.add('list-group-item')
 | 
			
		||||
        navItem.id = `tab-channel-${channel['id']}`
 | 
			
		||||
        navItem.setAttribute('data-bs-dismiss', 'offcanvas')
 | 
			
		||||
        navItem.onclick = () => selectChannel(channel['id'])
 | 
			
		||||
        navTab.appendChild(navItem)
 | 
			
		||||
 | 
			
		||||
        let channelButton = document.createElement('button')
 | 
			
		||||
        channelButton.classList.add('nav-link')
 | 
			
		||||
        channelButton.type = 'button'
 | 
			
		||||
        channelButton.innerText = channel['name']
 | 
			
		||||
        navItem.appendChild(channelButton)
 | 
			
		||||
 | 
			
		||||
        fetchMessages(channel['id'])
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -73,7 +89,7 @@ function setChannels(new_channels) {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function receiveMessage(message) {
 | 
			
		||||
    messages[message['channel_id']].push(message)
 | 
			
		||||
    messages[message['channel_id']].set(message['id'], message)
 | 
			
		||||
    redrawMessages()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user