Link Search Menu Expand Document

Comment Edit

/api/v2/feed/comment/edit

Post

posts

profiles

groups

jwt


Purpose

To allow a user to edit one of his/her existing comments on a post that he/she is allowed to comment on.

Body Content [input]

{
    uid: string,
    postID: string,
    commentID: string,
    comment: string,
    visibility: string
}

Returns if valid [output]

{
    message: string,
    error: 0
}

What the API does

  • Finds the profile corresponding to the uid passed and fetches a list of all values inside of the following and blocked fields.
  • Finds the record from the posts collection having a postID corresponding to the one passed [404].
  • Ensures that the record found does not have a value for its visibility field set to none [403].
  • If the record does not have a visibility of none, followers or public, fetch the members field of the AccessGroup corresponding to the value of the visibility field and ensures that uid is among the values of that members field [403].
  • If the record has a value for its groupID field, find the group corresponding to that groupID and check if uid is a value among that group’s members field with a status of accepted [403].
  • Ensures that the record’s uid field does not equal to a value among those of the fetched blocked field above [403].
  • Ensures that the profile that has a uid corresponding to that of the record does not contain a value corresponding to the uid passed in its blocked field [403].
  • Else, if the record does not have a value for its groupID field, and has a value of followers for its visibility field check if uid is among the values of the following field or if it is equal to the uid of the post itself [403].
  • Checks that there is a comment corresponding to the value of the commentID field passed inside of that post’s comments field [404].
  • Ensures that the found comment has the same uid as that passed [403].
  • Validates the value of the visibility field passed to make sure that its value is either public, followers, none or one among the accessIDs found in the access_groups field in the record corresponding to that of the uid passed from the profiles collection [400].
  • Generates a timestamp for the current date/time.
  • Updates and saves the object inside of that post’s comments field corresponding to the commentID passed with the values of the comment and/or visibility fields passed, along with the value of the generated timestamp for the modified_on field.