Exemple #1
0
def deck(username, title):
    if checkuser(username):
        deck = Logic.objects(username=username, title=title)
        if not deck:
            return render_template("home.html")
        other_deck = Logic.objects(username=username, title__ne=title)[:4]

    else:
        deck = Logic.objects(username=username, title=title, published=True)
        if not deck:
            user = User.objects(username=username)
            if len(user):
                gravatar_url = get_gravatar(user)
                return render_template(
                    "noyet.html",
                    username=username,
                    img=gravatar_url,
                    msg='{} hasn"t published any decks yet :'.format(username))
            return render_template("404.html")
        other_deck = Logic.objects(username=username,
                                   title__ne=title,
                                   published=True)[:4]
    Logic.objects(username=username, title=title).update_one(inc__views=1)
    deck = deck[0]
    return render_template("deck.html",
                           username=username,
                           data=deck,
                           other=other_deck)
Exemple #2
0
def checkuser(username):
    '''Check the current user privileges'''
    try:
        qs = User.objects(username=username, id=session.get('user_id'))
        match = UserSocialAuth.objects(user__in=qs).first()
    except ValidationError:
        return False
    if not match:
        return False
    if match.provider == session.get('social_auth_last_login_backend'):
        return match
    else:
        return False
def checkuser(username):
    '''Check the current user privileges'''
    try:
        qs = User.objects(username=username, id=session.get('user_id'))
        match = UserSocialAuth.objects(user__in=qs).first()
    except ValidationError:
        return False
    if not match:
        return False
    if match.provider == session.get('social_auth_last_login_backend'):
        return match
    else:
        return False
def edit(username, title):
    user = User.objects(username=username)
    gravatar_url = get_gravatar(user)
    if not checkuser(username):
        return render_template(
            "noyet.html", username=username, img=gravatar_url,
            msg='You hasn"t operating authority yet :')
    qs = Logic.objects(username=username, title=title)
    if not qs:
        return render_template(
            "noyet.html", username=username, img=gravatar_url,
            msg='{You hasn"t published this deck!')
    return render_template("edit.html", data=qs[0], username=username)
Exemple #5
0
def edit(username, title):
    user = User.objects(username=username)
    gravatar_url = get_gravatar(user)
    if not checkuser(username):
        return render_template("noyet.html",
                               username=username,
                               img=gravatar_url,
                               msg='You hasn"t operating authority yet :')
    qs = Logic.objects(username=username, title=title)
    if not qs:
        return render_template("noyet.html",
                               username=username,
                               img=gravatar_url,
                               msg='{You hasn"t published this deck!')
    return render_template("edit.html", data=qs[0], username=username)
def new(username):
    gid = Logic.objects.count() + 1
    uid = Logic.objects(username=username).count() + 1
    if checkuser(username):
        deskname = Logic.objects(username=username).order_by("+pubtime")
        new_desk = 'desk-' + str(uid)
        Logic(title=new_desk, tid=gid, username=username).save()
    else:
        user = User.objects(username=username)
        if len(user):
            gravatar_url = get_gravatar(user)
            return render_template(
                "noyet.html", username=username, img=gravatar_url,
                msg='You do not has edit {} authority yet :('.format(username))
    return redirect('/{}/{}/edit'.format(username, new_desk))
Exemple #7
0
def new(username):
    gid = Logic.objects.count() + 1
    uid = Logic.objects(username=username).count() + 1
    if checkuser(username):
        deskname = Logic.objects(username=username).order_by("+pubtime")
        new_desk = 'desk-' + str(uid)
        Logic(title=new_desk, tid=gid, username=username).save()
    else:
        user = User.objects(username=username)
        if len(user):
            gravatar_url = get_gravatar(user)
            return render_template(
                "noyet.html",
                username=username,
                img=gravatar_url,
                msg='You do not has edit {} authority yet :('.format(username))
    return redirect('/{}/{}/edit'.format(username, new_desk))
def home(username):
    if checkuser(username):
        decks = Logic.objects(username=username).order_by("+pubtime")
        if not decks:
            return render_template("home.html")
    else:
        decks = Logic.objects(
            username=username, published=True).order_by("+pubtime")
        if not decks:
            user = User.objects(username=username)
            if user:
                gravatar_url = get_gravatar(user)
                return render_template(
                    "noyet.html", username=username, img=gravatar_url,
                    msg='{} hasn"t published any decks yet :'.format(username))
            return render_template("404.html")
    return render_template("home.html", decks=decks, username=username)
Exemple #9
0
def home(username):
    if checkuser(username):
        decks = Logic.objects(username=username).order_by("+pubtime")
        if not decks:
            return render_template("home.html")
    else:
        decks = Logic.objects(username=username,
                              published=True).order_by("+pubtime")
        if not decks:
            user = User.objects(username=username)
            if user:
                gravatar_url = get_gravatar(user)
                return render_template(
                    "noyet.html",
                    username=username,
                    img=gravatar_url,
                    msg='{} hasn"t published any decks yet :'.format(username))
            return render_template("404.html")
    return render_template("home.html", decks=decks, username=username)
Exemple #10
0
def deck(username, title):
    if checkuser(username):
        deck = Logic.objects(username=username, title=title)
        if not deck:
            return render_template("home.html")
        other_deck = Logic.objects(username=username, title__ne=title)[:4]

    else:
        deck = Logic.objects(username=username, title=title, published=True)
        if not deck:
            user = User.objects(username=username)
            if len(user):
                gravatar_url = get_gravatar(user)
                return render_template(
                    "noyet.html", username=username, img=gravatar_url,
                    msg='{} hasn"t published any decks yet :'.format(username))
            return render_template("404.html")
        other_deck = Logic.objects(
            username=username, title__ne=title, published=True)[:4]
    Logic.objects(username=username, title=title).update_one(inc__views=1)
    deck = deck[0]
    return render_template("deck.html", username=username, data=deck, other=other_deck)
def load_user(userid):
    try:
        return User.objects(id=userid).first()
    except (TypeError, ValueError):
        pass
Exemple #12
0
def load_user(userid):
    try:
        return User.objects(id=userid).first()
    except (TypeError, ValueError):
        pass