Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Recieve webmentions - Store comments, likes, etc. #20

Closed
13 tasks done
TomboFry opened this issue May 11, 2019 · 3 comments
Closed
13 tasks done

Recieve webmentions - Store comments, likes, etc. #20

TomboFry opened this issue May 11, 2019 · 3 comments
Assignees
Labels
feature New feature or request

Comments

@TomboFry
Copy link
Owner

TomboFry commented May 11, 2019

If people comment, like, or repost one of your entries, this should be reflected on the entry page. This is likely going to require another database table (or two) to store them.

  • Person table for storing unique individuals interacting.
  • Interaction table, referring to a specific person and post.

However, because I value data collection and privacy, a disclaimer should be displayed somewhere on the page stating that their data can be permanently removed from the site by emailing the site owner. Hooray for GDPR!

  • Create tables
  • Display webmentions
  • Webmention endpoint
    • Determine entry type on source URL
    • Determine post content on source URL
    • Determine published date on source URL
    • Determine author card details (image, name, URL)
    • Store interaction in database
    • Retrieve person from database if they already exist (instead of inserting)
    • Update person cache's image URL and name if they already exist
    • Support updating existing webmentions (which includes preventing duplicate interactions)
    • Support deleting existing webmentions (if, upon updating, the source URL return 410 Gone)
    • Limit fetching source contents to 5 seconds or 1MB of data
    • (optional) Provide CSRF token on a post's webmention URL and validate it before accepting. See Cross-Site Request Forgery.
@TomboFry TomboFry added the feature New feature or request label May 11, 2019
@TomboFry TomboFry added this to the Initial Version 1.0 milestone May 11, 2019
@TomboFry TomboFry self-assigned this May 11, 2019
@TomboFry TomboFry added this to To Do in Initial Release v1.0 via automation May 11, 2019
@TomboFry TomboFry changed the title Store interactions (comments, likes, reposts, etc.) Recieve webmentions - Store comments, likes, etc. May 16, 2019
@TomboFry TomboFry moved this from To Do to In progress in Initial Release v1.0 Sep 7, 2019
@TomboFry
Copy link
Owner Author

TomboFry commented Sep 8, 2019

Webmentions processed and stored as of 4872db8, but further processing will need to be done to prevent duplicate webmentions from being stored, as well as determining what type of webmention is being added (eg. reply, like, repost, bookmark, etc)

@TomboFry
Copy link
Owner Author

Webmentions are now updated (no more duplicates) and deleted as of 73d2765. Coming up next: post type detection!

@TomboFry
Copy link
Owner Author

Post type detection as of 095cc52! Just going to tighten security a little and call this done.

Initial Release v1.0 automation moved this from In progress to Done Sep 13, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request
Projects
No open projects
Development

No branches or pull requests

1 participant