feat: Add VoteMod, ref jarvis-bot#178

This commit is contained in:
Zeva Rose 2023-05-10 22:26:58 +00:00
parent 2521b7d6c9
commit 515cf96208
2 changed files with 303 additions and 270 deletions

View file

@ -9,6 +9,7 @@ from jarvis_core.db.models.actions import Ban, Kick, Mute, Unban, Warning
from jarvis_core.db.models.modlog import Action, Modlog, Note from jarvis_core.db.models.modlog import Action, Modlog, Note
from jarvis_core.db.models.reddit import Subreddit, SubredditFollow from jarvis_core.db.models.reddit import Subreddit, SubredditFollow
from jarvis_core.db.models.twitter import TwitterAccount, TwitterFollow from jarvis_core.db.models.twitter import TwitterAccount, TwitterFollow
from jarvis_core.db.models.votemod import Karma, Vote, VoteMod
from jarvis_core.db.utils import NowField from jarvis_core.db.utils import NowField
__all__ = [ __all__ = [
@ -42,6 +43,9 @@ __all__ = [
"Unban", "Unban",
"UserSetting", "UserSetting",
"Warning", "Warning",
"Karma",
"Vote",
"VoteMod",
"all_models", "all_models",
] ]
@ -246,6 +250,7 @@ all_models = [
Config, Config,
Filter, Filter,
Guess, Guess,
Karma,
Kick, Kick,
Lock, Lock,
Lockdown, Lockdown,
@ -266,5 +271,7 @@ all_models = [
TwitterFollow, TwitterFollow,
Unban, Unban,
UserSetting, UserSetting,
Vote,
VoteMod,
Warning, Warning,
] ]

View file

@ -0,0 +1,26 @@
"""VoteMod models."""
from typing import Optional
from beanie import Document
from pydantic import BaseModel
class Vote(BaseModel):
user: int
score: int
class Karma(Document):
user: int
karma: int = 1
revoked: bool = False
class VoteMod(Document):
initiator: int
target: int
message: int
content: str
attachments: list[str]
score: int
votes: list[Vote]