//
// Data types:
// Posts - Posts are the main items in backchannel, useful for questions or discussion points
+// [[ example object needed with explanation E.G:
+/*
+ Post: { postID: '999-1',
+ userID: '1234',
+ userName: 'Bob Jones',
+ userAffil: 'Instructor',
+ body: 'This is the text content of the post.',
+ comments: { {<commentObj>, <commentObj>, ...},
+ public: true,
+ votes: [ <userID>, <userID>, ...],
+ reports: [ <userID>, <userID>, ...]
+ }
+ Comment: { body: 'foo bar', userName: 'Bob Jones', userAffil: 'Instructor' }
+
+ if anonymous: userName => 'Anonymous', userAffil => 'N/A'
+*/
+//
+//
+//
// Comments - Comments are replies to posts, for clarification or answering questions
+// [[ example object needed]]
// Votes - Votes signifyg a users approval of a post
+// [[ example object needed]]
// Flags - Flagging a post signifies that it is against the rules, 2 flags moves it to the bottomw
+// [[ example object needed]]
//
//
// Post Schema
// date - Date post was made, updates when any comments are made for the post
// comments - An array of comments which contain a body, userName, and userAffil
// votes - An array of user ids which are the users that voted
+// [[ example needed ]]
// reports - An array of user ids which are the users that reported the post
+// [[ reports would be "this post is flagged as inappropriate"? ]]
+// [[ bruml: consistent terminology needed ]]
//
// Posts and comments can be made anonymously. When a post is anonymous, the users info is stripped
// from the post and the userName is set to Anonymous and the userAffil to N/A. This is to allow