Пример #1
0
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()
Пример #2
0
Файл: db.py Проект: matoous/newz
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()
Пример #3
0
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")
Пример #4
0
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)
Пример #5
0
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",
    )
Пример #6
0
 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
Пример #7
0
 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