From b24cf9682ac0e96d2d09fe46407db6e85e875542 Mon Sep 17 00:00:00 2001 From: Pierre Date: Tue, 16 Jan 2018 18:51:35 +0100 Subject: [PATCH] Can reload single post --- assets/js/components/posts/actions.js | 42 +++++++++++++++++++++++++++ assets/js/components/posts/ui.js | 17 +++++++---- 2 files changed, 53 insertions(+), 6 deletions(-) create mode 100644 assets/js/components/posts/actions.js diff --git a/assets/js/components/posts/actions.js b/assets/js/components/posts/actions.js new file mode 100644 index 00000000..7711bfac --- /dev/null +++ b/assets/js/components/posts/actions.js @@ -0,0 +1,42 @@ +/** + * Post actions + * + * @author Pierre HUBERT + */ + +ComunicWeb.components.posts.actions = { + + /** + * Reload a single post + * + * @param {int} postID The ID of the post to reload + * @param {HTMLElement} container The current container of the post + */ + reload_post: function(postID, container){ + + //Lock the post + container.style.visibility = "hidden"; + + //Perform a request through the interface + ComunicWeb.components.posts.interface.get_single(postID, function(infos){ + + //Make the post visible + container.style.visibility = "visible"; + + //Check for errors + if(infos.error){ + ComunicWeb.common.notificationSystem.showNotification("An error occured while getting informations about the post !", "danger"); + return; + } + + //Empty the post container + emptyElem(container); + + //Display post + ComunicWeb.components.posts.ui.display_post(infos, container); + + }); + + }, + +} \ No newline at end of file diff --git a/assets/js/components/posts/ui.js b/assets/js/components/posts/ui.js index b384595c..4447cd1a 100644 --- a/assets/js/components/posts/ui.js +++ b/assets/js/components/posts/ui.js @@ -14,12 +14,17 @@ ComunicWeb.components.posts.ui = { */ display_post: function(infos, target){ - //Create post root element - var postRoot = createElem2({ - appendTo: target, - type: "div", - class: "post" - }); + //Check if it is required to create a post root element or not + if(target.className.includes("post")) + postRoot = target; + + else + //Create post root element + var postRoot = createElem2({ + appendTo: target, + type: "div", + class: "post" + }); //Display user block var userBlock = createElem2({