chat: fix the core update
This commit is contained in:
parent
0c59dd4005
commit
5bc847ad88
@ -8,28 +8,19 @@ class Channels {
|
||||
|
||||
async createChannel(members_id, reload) {
|
||||
|
||||
let null_id = false;
|
||||
members_id.forEach(member_id => {
|
||||
if (member_id == null)
|
||||
null_id = true;
|
||||
});
|
||||
if (null_id)
|
||||
return console.log(members_id, "createChannel error, null id;");
|
||||
|
||||
let response = await this.client._post("/api/chat/", {
|
||||
members_id:members_id
|
||||
});
|
||||
|
||||
let data = await response.json();
|
||||
if (data.status >= 300)
|
||||
if (response.status >= 300)
|
||||
return undefined;
|
||||
|
||||
let data = await response.json();
|
||||
|
||||
let messages = undefined;
|
||||
if (exit_code == 200)
|
||||
if (response.status == 200)
|
||||
messages = data.messages;
|
||||
|
||||
console.log(response);
|
||||
console.log(data);
|
||||
this.channel = new Channel(this.client, data.channel_id, members_id, messages, reload);
|
||||
return this.channel;
|
||||
}
|
||||
|
@ -9,17 +9,17 @@ export default class extends AbstractView {
|
||||
|
||||
async postInit() {
|
||||
|
||||
let logged = await client.isAuthentificate();
|
||||
let profiles = await client.profiles.all();
|
||||
|
||||
let search = document.getElementById("input_user");
|
||||
search.oninput = this.users;
|
||||
search.oninput = () => this.users(logged, profiles);
|
||||
|
||||
let chat_input = document.getElementById("input_chat");
|
||||
//chat_input.addEventListener("keydown", this.chat_manager)
|
||||
|
||||
this.last_add_chat = undefined;
|
||||
|
||||
let logged = await client.isAuthentificate();
|
||||
let profiles = await client.profiles.all();
|
||||
|
||||
this.users(logged, profiles);
|
||||
this.chat(logged, profiles);
|
||||
|
||||
@ -69,9 +69,8 @@ export default class extends AbstractView {
|
||||
|
||||
await client.channels.channel.disconnect();
|
||||
}
|
||||
|
||||
client.channels.channel = await client.channels.createChannel([client.me.user_id , user.user_id], this.chat);
|
||||
this.chat();
|
||||
client.channels.channel = await client.channels.createChannel([client.me.id , user.id], () => this.chat(logged, profiles));
|
||||
this.chat(logged, profiles);
|
||||
if (this.last_add_chat != undefined)
|
||||
this.last_add_chat.id = "add_chat_off";
|
||||
this.last_add_chat = add_chat;
|
||||
@ -101,14 +100,13 @@ export default class extends AbstractView {
|
||||
|
||||
async chat(logged, profiles)
|
||||
{
|
||||
|
||||
let reloads = ["members"];
|
||||
reloads.forEach(reload => {
|
||||
if (document.getElementById(reload) != undefined)
|
||||
document.getElementById(reload).remove();
|
||||
});
|
||||
|
||||
if (client.channels.channel == undefined || !logged)
|
||||
if (client.channels.channel === undefined || logged === false)
|
||||
return ;
|
||||
|
||||
let chats = document.getElementById("chats");
|
||||
@ -120,7 +118,7 @@ export default class extends AbstractView {
|
||||
}
|
||||
|
||||
|
||||
// div des messages
|
||||
// diconsole.log("CACA")v des messages
|
||||
let messages = document.getElementById("messages");
|
||||
if (messages == null) {
|
||||
messages = document.createElement("div");
|
||||
@ -139,16 +137,27 @@ export default class extends AbstractView {
|
||||
let date = new Date(message.time);
|
||||
text.title = date.toLocaleString("fr-FR");
|
||||
text.appendChild(document.createTextNode(message.content));
|
||||
if (message.author_id == client.me)
|
||||
text.id = "you";
|
||||
else
|
||||
text.id = "other";
|
||||
text.id = message.author_id === client.me.id ? "you" : "other";
|
||||
|
||||
messages.appendChild(text);
|
||||
}
|
||||
i++;
|
||||
});
|
||||
|
||||
// nom des membres du chat
|
||||
let members = document.createElement("h2");
|
||||
members.id = "members";
|
||||
let usernames = "";
|
||||
client.channels.channel.members_id.forEach((member_id) => {
|
||||
if (member_id != client.me.user_id) {
|
||||
if (usernames.length > 0)
|
||||
usernames += ", ";
|
||||
usernames += (profiles.filter(user => user.id == member_id)[0].username);
|
||||
}
|
||||
});
|
||||
members.appendChild(document.createTextNode(usernames));
|
||||
messages.before(members);
|
||||
|
||||
// Input pour rentrer un message
|
||||
let chat_input = document.getElementById("input_chat") || document.createElement("input");
|
||||
chat_input.id="input_chat";
|
||||
@ -164,11 +173,11 @@ export default class extends AbstractView {
|
||||
let chat_text = chat_input.value;
|
||||
|
||||
let receivers_id = [];
|
||||
client.channel.members_id.forEach((member_id) => {
|
||||
if (member_id != client.me)
|
||||
receivers_id.push(profiles.filter(user => user.id == member_id)[0].user_id);
|
||||
client.channels.channel.members_id.forEach((member_id) => {
|
||||
if (member_id != client.me.id)
|
||||
receivers_id.push(profiles.filter(user => user.id == member_id)[0].id);
|
||||
});
|
||||
await client.channel.sendMessageChannel(chat_text, receivers_id)
|
||||
await client.channels.channel.sendMessageChannel(chat_text, receivers_id)
|
||||
|
||||
// Reset
|
||||
chat_input.value = "";
|
||||
@ -176,20 +185,6 @@ export default class extends AbstractView {
|
||||
};
|
||||
chat_input.focus();
|
||||
|
||||
// nom des membres du chat
|
||||
let members = document.createElement("h2");
|
||||
members.id = "members";
|
||||
let usernames = "";
|
||||
client.channels.channel.members_id.forEach((member_id) => {
|
||||
if (member_id != client.me.user_id) {
|
||||
if (usernames.length > 0)
|
||||
usernames += ", ";
|
||||
usernames += (profiles.filter(user => user.id == member_id)[0].username);
|
||||
}
|
||||
});
|
||||
members.appendChild(document.createTextNode(usernames));
|
||||
messages.before(members);
|
||||
|
||||
|
||||
// Scroll to the bottom of messages
|
||||
messages.scrollTop = messages.scrollHeight;
|
||||
|
Loading…
Reference in New Issue
Block a user