diff --git a/files/classes/__init__.py b/files/classes/__init__.py index 1ccd67762..750723a77 100644 --- a/files/classes/__init__.py +++ b/files/classes/__init__.py @@ -18,4 +18,5 @@ from files.__main__ import app from .mod_logs import * from .award import * from .marsey import * -from .sub_block import * \ No newline at end of file +from .sub_block import * +from .saves import * \ No newline at end of file diff --git a/files/classes/saves.py b/files/classes/saves.py new file mode 100644 index 000000000..885f8a1b4 --- /dev/null +++ b/files/classes/saves.py @@ -0,0 +1,20 @@ +from sqlalchemy import * +from sqlalchemy.orm import relationship +from files.__main__ import Base + + +class SaveRelationship(Base): + + __tablename__="save_relationship" + + user_id=Column(Integer, primary_key=True) + submission_id=Column(Integer, primary_key=True) + + + +class CommentSaveRelationship(Base): + + __tablename__="comment_save_relationship" + + user_id=Column(Integer, primary_key=True) + comment_id=Column(Integer, primary_key=True) \ No newline at end of file diff --git a/files/classes/submission.py b/files/classes/submission.py index e5a70b786..69005aca3 100644 --- a/files/classes/submission.py +++ b/files/classes/submission.py @@ -479,14 +479,4 @@ class Submission(Base): @property @lazy - def active_flags(self): return self.flags.count() - - -class SaveRelationship(Base): - - __tablename__="save_relationship" - - id=Column(Integer, primary_key=True) - user_id=Column(Integer) - submission_id=Column(Integer) - comment_id=Column(Integer) \ No newline at end of file + def active_flags(self): return self.flags.count() \ No newline at end of file diff --git a/files/classes/user.py b/files/classes/user.py index 7cc9b9a86..e003b5d85 100644 --- a/files/classes/user.py +++ b/files/classes/user.py @@ -5,7 +5,7 @@ from files.helpers.discord import remove_user from files.helpers.images import * from files.helpers.const import * from .alts import Alt -from .submission import SaveRelationship +from .saves import * from .comment import Notification from .award import AwardRelationship from .subscriptions import * @@ -581,7 +581,7 @@ class User(Base): @lazy def saved_idlist(self, page=1): - saved = [x[0] for x in g.db.query(SaveRelationship.submission_id).filter(SaveRelationship.user_id == self.id).all()] + saved = [x[0] for x in g.db.query(SaveRelationship.submission_id).filter_by(user_id=self.id).all()] posts = g.db.query(Submission.id).filter(Submission.id.in_(saved), Submission.is_banned == False, Submission.deleted_utc == 0) if self.admin_level == 0: @@ -602,8 +602,7 @@ class User(Base): @lazy def saved_comment_idlist(self, page=1): - try: saved = [x[0] for x in g.db.query(SaveRelationship.comment_id).filter(SaveRelationship.user_id == self.id).all()] - except: return [] + saved = [x[0] for x in g.db.query(CommentSaveRelationship.comment_id).filter_by(user_id=self.id).all()] comments = g.db.query(Comment.id).filter(Comment.id.in_(saved), Comment.is_banned == False, Comment.deleted_utc == 0) if self.admin_level == 0: diff --git a/files/routes/comments.py b/files/routes/comments.py index b8c6779e4..6a1989459 100644 --- a/files/routes/comments.py +++ b/files/routes/comments.py @@ -1003,10 +1003,10 @@ def save_comment(cid, v): comment=get_comment(cid) - save=g.db.query(SaveRelationship).filter_by(user_id=v.id, comment_id=comment.id).one_or_none() + save=g.db.query(CommentSaveRelationship).filter_by(user_id=v.id, comment_id=comment.id).one_or_none() if not save: - new_save=SaveRelationship(user_id=v.id, comment_id=comment.id) + new_save=CommentSaveRelationship(user_id=v.id, comment_id=comment.id) g.db.add(new_save) try: g.db.commit() @@ -1021,7 +1021,7 @@ def unsave_comment(cid, v): comment=get_comment(cid) - save=g.db.query(SaveRelationship).filter_by(user_id=v.id, comment_id=comment.id).one_or_none() + save=g.db.query(CommentSaveRelationship).filter_by(user_id=v.id, comment_id=comment.id).one_or_none() if save: g.db.delete(save)