def create_tables(): User.create_table() Feed.create_table() Link.create_table() Ban.create_table() Comment.create_table() FeedAdmin.create_table() Report.create_table() create_subscriptions_table() DisposableToken.create_table() CommentVote.create_table() LinkVote.create_table()
def create_tables(app): with app.app_context(): from news.models.disposable_token import DisposableToken DisposableToken.create_table() from news.models.feed import Feed Feed.create_table() from news.models.user import User User.create_table() from news.models.link import Link Link.create_table() from news.models.vote import LinkVote LinkVote.create_table() from news.models.comment import Comment Comment.create_table() from news.models.vote import CommentVote CommentVote.create_table() from news.models.subscriptions import create_subscriptions_table create_subscriptions_table() from news.models.feed_admin import FeedAdmin FeedAdmin.create_table() from news.models.report import Report Report.create_table() from news.models.link import SavedLink SavedLink.create_table() from news.models.ban import Ban Ban.create_table()
def feed_admins(feed): """ Get all feed admins :param feed: feed :return: """ admins = FeedAdmin.by_feed_id(feed.id) return render_template("feed_admins.html", admins=admins, feed=feed, active_tab="admins")
def add_admin(feed): """ Add feed admin :param feed: feed :return: """ # get new admin username username = request.form.get("username") if not username or username == "": abort(404) # check privileges if current_user.is_god() or current_user.is_feed_god(feed): user = User.by_username(username) if user is None: abort(404) feed_admin = FeedAdmin.create(user_id=user.id, feed_id=feed.id) return redirect("{}/admins".format(feed.route)) else: abort(403)
def users_profile(username): user = User.by_username(username) if user is None: abort(404) if user.id == 12345: return render_template("autoposter_profile.html", user=user) links = (Link.where( "user_id", user.id).order_by_raw("ups - downs DESC").limit(9).get()) comments = (Comment.where( "user_id", user.id).order_by_raw("ups - downs DESC").limit(6).get()) administrations = FeedAdmin.by_user_id(user.id) return render_template( "profile.html", user=user, links=links[:min(len(links), 8)], has_more_links=len(links) > 8, comments=comments[:min(len(comments), 5)], has_more_comments=len(comments) > 5, administrations=administrations, active_section="about", )
def is_feed_god(self, feed: "Feed") -> bool: if not self.is_authenticated: return False feed_admin = FeedAdmin.by_user_and_feed_id(self.id, feed.id) return feed_admin.god if feed_admin is not None else False
def is_feed_admin(self, feed: "Feed") -> bool: if not self.is_authenticated: return False return FeedAdmin.by_user_and_feed_id(self.id, feed.id) is not None