let lastIdReceiver = null; function messageReceiver(messageData, childType = "append", returnTemplate = false) { let div = ""; let existsReaction = false; // INICIO DA DIV DA MENSAGEM // if (!returnTemplate) div += `
` if ((messageData.printPicture && childType === 'prepend' && ((lastIdReceiver != 0 && messageData.sender.id != 0) && (lastIdReceiver == messageData.sender.id)))) { let lastUserPick = $('.body-message .message-data .user-pick').eq(0); let containerPick = $(lastUserPick).parent().parent(); $(containerPick).find('.user-pick').remove(); $(containerPick).find('.div-user-pick').remove(); $(containerPick).find('.user-name-recipient').remove(); } // FOTO E NOME DO USUÁRIO // if ((messageData.printPicture && childType === 'prepend') || (!$('.body-message .message-data:last').hasClass('message-recipient-content') && childType === 'append' && !returnTemplate) || (document.querySelector(`#message-${messageData.messageId} .user-pick`) && childType === 'append')) { div += `
` div += ` `; div += `
`; div += `
`; div += `
`; div += ` ${messageData.sender.name}`; div += `
`; lastIdReceiver = messageData.sender.id; } else div += `
`; let idMsg = 0; if (messageData.dataReply) idMsg = messageData.dataReply.messageId; // CONTEÚDO DA MENSAGEM div += `
`; if (idMsg > 0 && !messageData.user_exclusao > 0) { let funcOpenMessage = ''; const senderReplyId = messageData.dataReply.id_remetente; const senderReplyName = messageData.dataReply.name_remetente; const ReceiverReplyId = messageData.dataReply.id_destinatario; const depReplyId = messageData.dataReply.id_departamento; if (messageData.dataReply.id_departamento > 0) { funcOpenMessage = `openMessage(${idMsg}, ${senderReplyId}, null, ${depReplyId})`; } else { funcOpenMessage = `openMessage(${idMsg}, ${senderReplyId}, ${ReceiverReplyId}, null)`; } let color = ''; if(messageData.dataReply.id_remetente == messageData.sender.id) color = '#1DC370'; else color = '#409fd5'; div += `
`; div += `
`; div += `
${senderReplyName}
`; const existsFilesReply = messageData.dataReply.caminho_arquivo.replace("{", "").replace("}", "").split(","); const namesFilesReply = ((messageData.dataReply.nome_arquivo) ? messageData.dataReply.nome_arquivo.split(",") : ''); if (existsFilesReply[0] != "") { existsFilesReply.forEach((file, key) => { const fileUrlReply = (`${FILE_URL}/${file}`).replaceAll(" ", ""); const fileExtensionReply = getFileExtension(fileUrlReply); const fileNameReply = fileUrlReply.split('ArqEscritorio/'); fileNameReply.push(messageData.dataReply.nome_arquivo); // image if (['png', 'jpg', 'gif', 'jpeg'].includes(fileExtensionReply)) div += `
`; else if (['mp3'].includes(fileExtensionReply)) div += ``; else if (['mp4'].includes(fileExtensionReply)) div += ` `; // doc else { div += ""; } }) } else { div += ` ${messageData.dataReply.message}`; } div += '
'; div += '
'; } if (!messageData.user_exclusao > 0) { // VERIFICA SE FOI ENVIADO ALGUM ARQUIVO const existsFiles = messageData.files.replace("{", "").replace("}", "").split(","); const namesFiles = ((messageData.nome_arquivo) ? messageData.nome_arquivo.split(",") : ''); if (existsFiles[0] != "") { existsFiles.forEach((file, key) => { const fileUrl = (`${FILE_URL}/${file}`).replaceAll(" ", ""); const fileExtension = getFileExtension(fileUrl); const fileName = fileUrl.split('ArqEscritorio/'); fileName.push(messageData.nome_arquivo); // image if (['png', 'jpg', 'gif', 'jpeg'].includes(fileExtension)) div += `
`; else if (['mp3'].includes(fileExtension)) div += ``; else if (['mp4'].includes(fileExtension)) div += ` `; // doc else { div += ""; } }) } // VERIFICA SE HÁ MENSAGEM div += ` ${identificaLink(messageData.message)}`; } else { div += ` Mensagem apagada` } // HORA DA MENSAGEM div += ` ${messageData.hour}` if (!messageData.user_exclusao > 0) { // FAVORITO // if (messageData.favorite && messageData.favorite.includes(SESSION_DATA.id)) div += `
`; // AÇÕES DA MENSAGEM div += "
"; let objResponse = { messageId: messageData.messageId, senderId: messageData.sender.id, senderName: messageData.sender.name, receiverId: messageData.receiver.id, receiverName: messageData.receiver.name, classIndex: 'message-recipient-message', departamentId: null } let jsonResponse = JSON.stringify(objResponse); // REAÇÕES div += '
'; div += ' '; div += '
'; div += '
' div += `
Responder
`; // div += `
Encaminhar
`; div += `
Marcar como não lido
`; // div += `
Favoritar Mensagem
`; div += '
'; div += ` 👍`; div += ` 👎`; div += ` 😂`; div += ` 😍`; div += ` 😥`; div += ` 🎯`; div += ` 🆗`; div += '
'; div += '
'; div += '
'; div += '
' div += "
"; // --------------- RESULTADO REAÇÕES --------------------- // const reactions = ['👍', '👎', '😂', '😍', '😥', '🎯', '🆗']; div += `
`; reactions.forEach(reaction => { if (messageData.reactions && messageData.reactions[reaction].amount > 0) { const names = messageData.reactions[reaction].names.split(','); existsReaction = true; div += `
`; div += ` ${messageData.reactions[reaction].amount > 1 ? messageData.reactions[reaction].amount : ''} ${reaction}`; div += `
`; names.forEach(name => div += `${name}`); div += `
`; div += `
`; } }) div += `
`; // --------------- FIM RESULTADO REAÇÕES -------------- // } div += `
` div += `
`; div += `
`; div += ` ` if (!returnTemplate) div += `` // PULA UMA LINHA QUANDO EXISTE REAÇÃO if (existsReaction && !messageData.user_exclusao > 0) div += '

'; // VERIFICA SE É PARA RETORNAR O TEMPLATE if (returnTemplate) return div; if (childType === 'prepend') { $('.body-message').prepend(div); } else { if ($('.body-message #container-reply').length > 0) { $(div).insertBefore('.body-message #container-reply'); defaultScroll(); } else { $('.body-message').append(div); } } checarPosicaoChat(); }