ComunicWeb/assets/js/pages/conversations/main.js

75 lines
1.6 KiB
JavaScript

/**
* Conversation page main script file
*
* @author Pierre HUBERT
*/
ComunicWeb.pages.conversations.main = {
/**
* Open settings page
*
* @param {object} args Optionnal arguments
* @param {HTMLElement} target The target for the page
*/
open: function(args, target){
//Conversation page is organized like an array with two columns
//Left column : the list of conversations
//Rigth column : the message of the currently opened conversation
//Create a row
var row = createElem2({
appendTo: target,
type: "div",
class: "row conversations-page-container"
});
//Left area: The list of conversations
var leftArea = createElem2({
appendTo: row,
type: "div",
class: "col-md-3"
});
//Right area : The conversations
var rightArea = createElem2({
appendTo: row,
type: "div",
class: "col-md-9"
});
/**
* Open a conversation
*
* @param {Number} id The ID of the conversation
*/
var conversationOpener = function(id){
//Empty the target
emptyElem(rightArea);
//Open the conversation
ComunicWeb.pages.conversations.conversation.open(id, rightArea);
//Update website URI
ComunicWeb.common.page.update_uri("Conversations", "conversations/" + id);
}
//Display the list of conversation
ComunicWeb.pages.conversations.listPane.display(leftArea, {
opener: conversationOpener
});
//Check if a conversation has to be opened
if(args.subfolder){
//Determine conversation ID
var convID = args.subfolder;
if(convID.includes("/"))
convID = convID.split("/")[0];
//Open the conversation
conversationOpener(Number(convID));
}
}
}