diff --git a/app/models.py b/app/models.py index ed36a8ff..4f31c570 100644 --- a/app/models.py +++ b/app/models.py @@ -775,14 +775,17 @@ class User(HashidMixin, UserMixin, db.Model): #endregion Profile Privacy settings def follow_corpus(self, corpus, role=None): + if self.is_following_corpus(corpus): + return if role is None: r = CorpusFollowerRole.query.filter_by(default=True).first() cfa = CorpusFollowerAssociation(corpus=corpus, role=r, follower=self) db.session.add(cfa) def unfollow_corpus(self, corpus): - if self.is_following_corpus(corpus): - self.followed_corpora.remove(corpus) + if not self.is_following_corpus(corpus): + return + self.followed_corpora.remove(corpus) def is_following_corpus(self, corpus): return corpus in self.followed_corpora