Post Group with Upvoting UI
This is a fully responsive repeating group block that contains UI elements for upvoting functionality, and a functional, 3-level commenting widget within each repeating group cell. It is ideal for displaying a post in a feed, creating a discussion board, or displaying a thread of posts related to a single Topic.
When this block is added to a page, it is placed within a group called Blocks container 860 (do not rename) on the page. This group contains the responsive settings for all blocks.
- Group postUpvoteComments This group contains all of the UI components for a post. RepeatingGroup Posts stores the data for these posts (you will have to change the repeating group data source as it is currently set to a placeholder dummy data source).
- Group Inner upvotes content This group contains the UI components for upvoting the post (no workflows associated).
- Group Inner post details This group contains the post title, creator info, description, the attached post and a copy of the nestedcomments_template reusable element.
- Group Inner post comment displays the total number of comments from the post. Please note that the UI for displaying the actual comments is not included in this block.
- In order to store a list of comments on each post, please make a copy of the nestedcomments_template and name the copied version to be nestedcomments_posts. This preserves the original instance of the nestedcomments_template reusable elements, just in case a Post's commenting functionality may differ from other comment functionality in your application. More information on the nestedcomments_template can be found here: Comments thread (with like and reply). You could also place the copy of the nestedcomments_posts reusable in a group, and set that group to be hidden on page load and collapse in height. Then, users can click to view comments by clicking on the Group Inner post comment element.
- Update the data source of RepeatingGroup Posts.
- Set up workflows for upvoting
- Clicking on Group Inner upvote button should upvote the post. Example workflow: When Group Inner upvote button is clicked and current post's user likes doesn't contain current user, then add current user to current post's user likes field.*
- Update Text upvote count's data source so it dynamically refers to the current post's upvote count (or user likes)*
- Update the text and image content in Group Inner post details
- You should make these dynamic and set it to current cell's post's title / creator / description / attached image.*
- Update the data source of Text Comment to dynamically refer to the current cell's post's # of comments (or user likes).*
- Make a copy of the nestedcomments_template reusable and replace the nestedcomments_template element in this repeating group block, with the copied reusable. More information about how to associate a custom object with a list of Comments can be found here: Comments thread (with like and reply).
*Please note that these conditionals and workflows will vary depending on how you have set up your database.