j3k0 / ganomede-admin

Ganomede administration interface
0 stars 0 forks source link

Users reports and blocks #85

Closed j3k0 closed 2 years ago

j3k0 commented 3 years ago

In the user page:

Reported by: name1, name2, name3, name4, ... Blocked by: name5, name6, name7, ...

Reports: name8, name9, ... Blocks: name10, name11, ...


j3k0 commented 3 years ago

Discussion...

(EDIT: we're not using CouchDB for the events, but Redis)

The ganomede-events module doesn't give any access to aggregate information (like the list of blocks for a given user). It's totally usage independent don't have the notion of what a block or report is.

At the moment, implementing this feature would require getting the full list of events and creating the aggregate in software, which isn't scalable (and we're probably already beyond the point were it was possible).

ganomede-events stores events into a Redis database. What ganomede-events could expose is a way to specify an index on the data, then access this indexed data. This way, it remains flexible and we keep a clean layered architecture.

Allowing ganomede-admin direct access to events database might be simpler, but that's the kind of shortcut we might regret later...

I'll specify a proposed implementation of the indices feature in ganomede-events right now.

j3k0 commented 2 years ago

Ref https://github.com/j3k0/ganomede-users/issues/58

j3k0 commented 2 years ago

Finally, make sure clicking on the "block" or "report" leads to the chat between the 2 players. This way we can easily check what happened.