示例#1
0
def seeblanknuggetscreen():
    if not g.user:
        flash("You need to create an account to make new nuggets.", "danger")
        return redirect("/")
    form = CreateNuggetForm()
    if request.method == "POST":
        csrf_token = request.json.get("submission",
                                      None).get("csrf_token", None)
        f = {"csrf_token": csrf_token}
        request.form = f
        form.csrf_token.data = csrf_token
    if form.validate_on_submit():
        submitted_info = request.json.get("submission", None)
        nugget = Nugget(truth=submitted_info.get("truth"), user_id=g.user.id)
        db.session.add(nugget)
        db.session.commit()
        for input_keyword in submitted_info.get("keywords"):
            keyword = Keyword.create_with_fakeouts(input_keyword, nugget.id)
        #seems like an unnecessary db commit
        db.session.commit()
        for deck_id in submitted_info.get("Decks", None):
            deck = Deck.query.get(deck_id)
            deck.my_nuggets.append(nugget)
            db.session.commit()
        flash("You have created a new nugget")
        return redirect("/")
    return render_template('/nuggetviewcontrol.html',
                           form=form,
                           nugget=None,
                           decks=None,
                           nugget_dict={})