$(document).ready(function () {
    $('.modal').modal();
    $('select').formSelect();
});

//-------------------------Chat-----------------------------------

function openForm() {
    document.getElementById("myForm").style.display = "block";
}

function llenaListaChat() {

    $('#chatSel').append("<option value='1'>Juanito</option>");
    $('#chatSel').append("<option value='2'>Pepe</option>");
    $('#chatSel').append("<option value='3'>Pedro</option>");
    $('#chatSel').append("<option value='4'>Paco</option>");
    $('#chatSel').append("<option value='5'>Jason</option>");

    $('select').formSelect();

}

function closeForm() {
    document.getElementById("myForm").style.display = "none";
}

//-------------------------Chat-----------------------------------

llenaListaChat();

var app = new Vue({
    el: '#chats',
    data: {
        listaSalasActivas: new Map(),
        mensajesSalasActivas: [],
        salaActiva: "",
        usuarios: [],
        salas: [],
        salaModal: ""

    }
})

const socket = io('https://' + document.domain + ':2021');
socket.on("connect", (data) => {
    socket.emit("firstTime", { usuario: Usuario, socketId: socket.id })
});
socket.on("finallyConnect", (data) => {
    data.Mesajes.forEach(mensaje => {
        if (app.listaSalasActivas.has(mensaje.sala)) {
            app.mensajesSalasActivas[mensaje.sala].append(mensaje)
        }
        else {
            app.listaSalasActivas.set(mensaje.sala, mensaje.nombreSala);
            app.mensajesSalasActivas[mensaje.sala] = [mensaje];
        }
    });
})
socket.on("tryJoin", (data) => {
    socket.emit("join", { usuario: Usuario, socketId: socket.id, idSala: data.idSala })
})
socket.on("finallyJoin", (data) => {
    app.listaSalasActivas.set(data.sala, data.nombreSala);
    app.mensajesSalasActivas[data.sala] = [];
    data.Mensajes.forEach(mensaje => {
        mensaje.sala = data.idSala
        app.mensajesSalasActivas[mensaje.sala].append(mensaje);
    })
})
socket.on("receive", (data) => {
    app.mensajesSalasActivas[data.Mensaje.sala].append(data.Mensaje);
})
function sendMessage(to, contenido) {
    socket.emit('send', { destinatario: to, contenido: contenido });
}