Plots2: GSoC'20: "Spam Management Dashboard" Project Planning

Created on 8 May 2020  路  19Comments  路  Source: publiclab/plots2

Hey everyone!! :smile: This is the Planning Issue for Spam management Dashboard. All the major project Goals are divided into small tasks that will be covered in the upcoming weeks and all are open for further discussion and improvements.(Docs)

UI Improvements (https://github.com/publiclab/plots2/pull/7969, https://github.com/publiclab/plots2/pull/8022, https://github.com/publiclab/plots2/pull/8063)

  • [x] Integrate DataTable jquery library with Spam Dashboard
  • [x] Add a new Side nav for and top nav
  • [x] Integrate side nav items with the respective pages
  • [x] Make nav sliding
  • [x] Add required columns and integrate it with backend
  • [x] Add Color Scheme of tags and Icons used
  • [x] Add relevant Buttons and Cards as shown in UI
  • [x] Take review of UI form moderators
  • [x] Make UI responsive
  • [x] Integrate new with current spam Dashboard

Bulk Moderation (https://github.com/publiclab/plots2/pull/8034, https://github.com/publiclab/plots2/pull/8038)

  • [x] Make Bulk Moderation nav and add all the relevant Bulk actions
  • [x] Implement Select all feature and Undect all feature
  • [x] Implement Publish selected rows
  • [x] Add filter for each column
  • [x] Add Search feature along with Regex Search
  • [x] Add extensive Search feature in the Top Nav
  • [x] Add date filter option
  • [x] Implement remove filter feature
  • [x] Implement State Save feature
  • [x] Add Bulk Action to an individual item in the dropdown
  • [x] Implement Spam and ban selected rows

Daily/Weekly Digest (https://github.com/publiclab/plots2/pull/8058, https://github.com/publiclab/plots2/pull/8130)

  • [x] Display a page of "All the flagged posts" in a list at flag posts section
  • [x] Decide Email template for Flagged Digest by Using current Digest template (Design)
  • [x] Integrate it with whatever gem and regularly scheduled email triggers with ActiveJob
  • [x] Add a method in subscription mailer for sending digests
  • [x] Write its unit test
  • [x] Add feature button for weekly and daily digest or opt-out from it
  • [x] Integrate it with current Digest

The Queue https://github.com/publiclab/plots2/pull/8196

  • [x] Initially integrate with all the posts
  • [x] Get subscription tags of moderators
  • [x] Implement filter of tags and Display only filtered tagged posts
  • [x] Add all bulk moderation features and add total in card

Flagged posts (https://github.com/publiclab/plots2/pull/8107)

  • [x] Initially integrates with all the posts(Similar to queue)
  • [x] Get All the flagged posts and integrate it with the table
  • [x] Implement all the feature of bulk moderation

Filtered posts https://github.com/publiclab/plots2/pull/8107

  • [x] Add all of its Subsections i.e. comments, Notes, and wiki
  • [x] Integrate filtered posts with data tables

Settings https://github.com/publiclab/plots2/pull/8196

  • [x] Make its new nav with relevant options after deciding its UI
  • [x ] Feature to Subscribe to tag
  • [x] Feature to change digest frequency and type(Refer Proposal)
  • [x] Write its unit tests
  • [x] Banned user list with data tables
  • [x] Feature to unban users

Insight https://github.com/publiclab/plots2/pull/8289 https://github.com/publiclab/plots2/pull/8352

  • [x] Add feature to count moderated posts by moderator
  • [x] Integrate ChartKick gem
  • [x] Add chart for the moderated post wrt dates
  • [x] Add animation in chart

Documentations and regular Blogs https://publiclab.org/notes/keshav_sethi0004/08-29-2020/spam-management-dashboard-gsoc-2020-report

  • [x] Spam management Policy and user guide of the dashboard
  • [x] Regular Updates of tasks done documentation

Refer to this Image for UI

output-onlinepngtools

More changes in UI can be implemented and it is open to suggestions. Only Bootstrap is used here. Automatic tagging of posts is removed from here as suggested by @jywarren and @SidharthBansal Further break-up of points and UI suggestions are welcomed.:heart: :v:

@pydevsg @jywarren @ebarry @ananyaarun @emilyashley @cesswairimu @SidharthBansal
and others, please review this task bask-up and give suggestions :pray:
Thank You!! :smiley:

gsoc planning summer-of-code

All 19 comments

All the moderators of Public Lab can also review this UI, features and can give their feedback. It will be very useful for this.
Thanks!! :smiley:

@keshavsethi from where did you design the mockup. It looks really nice and clean!!

@keshavsethi Very well structured !! It shows you have a great understanding of the goals of your project which is very good :smiley:
Are you planning to start with UI improvements and bulk moderation aspects from this list first ?
Also while working keep updating this list and if you find any easy issues especially under UI improvements like responsiveness and minor design changes do make a few newcomer issues out of them. Thanks !!

Hey @keshavsethi , the planning seems really great for me . As suggested by @ananya do update the list while working on them. Create issues accordingly and feel free to ping or tag whenever you need help. All the best :100: .

This looks great :tada: :tada: Thanks @keshavsethi for opening this :rocket:

This is a great start, and I've brought it to the PL staff's attention for some input! We will also spend some time next Tuesday discussing and writing feedback. Thanks a ton!!!

You can also create a milestone for all this as the issues start to be broken out!

Awesome planning issue @keshavsethi

Hi, just chiming in that perhaps the UI section and bulk moderation section might need some system tests to ensure stability of those features! More feedback coming soon!!!

Sure @jywarren, I have made one UI issue and made one PR related to that. Can you please give your reviews.
Thanks!!

Good morning! Just wanted to let you know a few of us Public Lab staff members are looking over this today and I'll be collecting the feedback. Thank you so much!

Hi! we've left some good notes on process (breaking work into separate PRs/milestones, using a "shadow" page like /spam2, etc) in the PR here: https://github.com/publiclab/plots2/pull/7928. But I also wanted to suggest that we try to get @ebarry or others to video their usage of the current page so that @keshavsethi has good understanding of the nuances of how it currently works. Let's try to coordinate this and @keshavsethi will have more context for the changes that will be occuring!

Thanks, @keshavsethi !

Hi @keshavsethi !!! Just chiming in because we wanted to know if the "users" tab on https://github.com/publiclab/plots2/pull/7969 resolves this issue? https://github.com/publiclab/plots2/issues/2377 or will it in the future? Would you mind adding this issue to your plan and/or closing it and redirecting it to your own issue?

Thank you!

Uh, and sorry, just to edit - https://github.com/publiclab/plots2/issues/2377 has gone WAY into adjacent topics related to automated filtering and keyword searching. So, we should really break it up into separate issues, and perhaps all the brainstorming in there could be reference in several parts; the most important would be simply a tab showing users, that we can ban, etc.

But then there are a range of other ideas that could be triaged or prioritized... i think searching users for keywords, maybe? I think we would need to succinctly make a list of the ideas, many of which you've already written about in your proposal, and figure out how they might integrate (say, at the end of your timeline, or just as stretch goals?) without putting you off track or stressing you out. Thanks!

I have updated this planning issue and added PRs with them.
The initial stage of spam2 is done i.e UI, bulk moderation, and digest. You can use it on stable once https://github.com/publiclab/plots2/pull/8063 and https://github.com/publiclab/plots2/pull/8058 are merged.
These are some of my major PRs for Spam2
https://github.com/publiclab/plots2/pull/7969
https://github.com/publiclab/plots2/pull/8022
https://github.com/publiclab/plots2/pull/8063
https://github.com/publiclab/plots2/pull/8034
https://github.com/publiclab/plots2/pull/8038
https://github.com/publiclab/plots2/pull/8058
ezgif com-crop (3)

@jywarren @cesswairimu @VladimirMikulic @emilyashley @SidharthBansal @pydevsg @ananyaarun @ebarry
If you want any changes anything here, I can do that
_Thank you for all your support and suggestions_. :heart: :tada:

Hi, just wanted to say this planning doc is super easy to follow and I appreciate your organization!!!!

Hi @keshavsethi - was just checking off items in related issues such as #2377, and although i saw filtering by keyword for the currently displayed results, in the search box in /spam2, I wasn't sure if there were also a way to filter /all/ results using a search keyword? Just to clarify! Thanks!

Hi @keshavsethi - was just checking off items in related issues such as #2377, and although i saw filtering by keyword for the currently displayed results, in the search box in /spam2, I wasn't sure if there were also a way to filter /all/ results using a search keyword? Just to clarify! Thanks!

@jywarren search box will only search in the current page(Although the user can increase the current page length). /filter/{keyword} will only filter nodes as per their type/status/flag/pagination

OK, closing this now, and I'll add a clarifying placeholder or tooltip to that search box, thank you!!!!!!

Was this page helpful?
0 / 5 - 0 ratings