Example #1
0
def reseptit_create():
    form = ReseptiForm(request.form)

    if not form.validate():
        return render_template("reseptit/new.html", form=form)

    resepti = Resepti(form.name.data, form.ainesosat.data, form.tyovaiheet.data, form.tyypit.data)
    resepti.account_id = current_user.id


    if form.liharuoka.data:
        luokka = Luokka("Liharuoka")
        resepti.luokat.append(luokka)

    if form.kasvis.data:
        luokka = Luokka("Kasvis")
        resepti.luokat.append(luokka)

    if form.vegaani.data:
        luokka = Luokka("Vegaani")
        resepti.luokat.append(luokka)
  
    if form.maidoton.data:
        luokka = Attribute("Maidoton")
        resepti.luokat.append(luokka)

    db.session().add(resepti)
    db.session().commit()
  
    return redirect(url_for("reseptit_index"))
Example #2
0
def reseptit_create():
    form = NewReseptiForm(request.form)

    if not form.resepti.validate(form):
        print(form.resepti.errors)
        return render_template("reseptit/new.html", form=form)
    if not form.aineet.validate(form):
        print(form.aineet.errors.items())
        print(form.aineet.errors['amount'][0])
        return render_template("reseptit/new.html", form=form)

    #Add only those aine forms with info to list
    aineListWithoutEmpties = []
    name = ""
    for key in form.aineet.data:
        if "name" in key:
            name = form.aineet.data[key]
        if "amount" in key and name:
            #lisää tänne if amount = none niin laittaa sinne vaikka nollan?
            aineListWithoutEmpties.append({name: form.aineet.data[key]})

    r = Resepti(form.resepti.nimi.data, form.resepti.cooktime.data)
    r.account_id = current_user.id

    db.session.add(r)
    db.session().commit()

    #create and append non existing aineet, put info of existing ones in list
    alreadyInDb = []
    for aineEl in aineListWithoutEmpties:
        name = list(aineEl.keys())[0]
        aines = Ainesosa.query.filter_by(name=name).first()
        if not aines:  #name of current aineEl doesn't exist in db
            a = Ainesosa(name)
            r_a = Resepti_ainesosa(amount=aineEl[name])
            r_a.ainesosa = a
            r.ainesosa.append(r_a)
        else:  #name of ainesEl already exists in db -> save the queried object for id and amount from ainesform
            alreadyInDb.append({'ainesKey': aines, 'amount': aineEl[name]})

    #db.session().add(r)
    newOhje = Ohje(form.resepti.ohje.data)
    newOhje.resepti_id = r.id
    db.session().add(newOhje)
    db.session().commit()

    #Add references to resepti_ainesosa table for prexisting ones
    for ainesEl in alreadyInDb:
        Resepti_ainesosa.add_ref_to_resepti_ainesosa(r.id,
                                                     ainesEl['ainesKey'].id,
                                                     ainesEl['amount'])

    return redirect(url_for("reseptit_index"))
Example #3
0
def reseptit_create():
    form = ReseptiForm(request.form)

    if not form.validate():
        return render_template("reseptit/new.html", form=form)

    t = Resepti(form.name.data)
    t.kuvaus = form.kuvaus.data
    t.kayttaja_id = current_user.id

    db.session().add(t)
    db.session().commit()

    return redirect(url_for("reseptit_index"))
Example #4
0
def reseptit_search_with_stuff():
    form = SearchForm()
    reseptit = Resepti.find_reseptit_with_arg_ainesosa(
        request.form.get("search"))
    return render_template("reseptit/search.html",
                           form=form,
                           reseptit=reseptit)
Example #5
0
def delete_resepti(resepti_id):
    if current_user.user_group != 0:
        flash("Deleting is for admin users")
        return render_template("index.html")
    poistettava = Resepti.query.get(resepti_id)
    db.session.delete(poistettava)
    db.session.commit()
    Ainesosa.clean_ainesosat()
    ainesosaCount = Resepti.find_resepti_ainesosa_count()
    return render_template("reseptit/list.html",
                           reseptit=Resepti.query.all(),
                           ainesosaCount=ainesosaCount)
Example #6
0
def reseptit_index():
    ainesosaCount = Resepti.find_resepti_ainesosa_count()
    return render_template("reseptit/list.html",
                           reseptit=Resepti.query.all(),
                           ainesosaCount=ainesosaCount)
Example #7
0
def jalkiruoat_by_current_user():

    kayttajan_reseptit = ""
    if current_user.is_authenticated:
        kayttajan_reseptit = Resepti.jalkiruoat_by_current_user_query()
    return render_template("/reseptit/jalkiruoat_by_user.html", kayttajan_reseptit = kayttajan_reseptit)
Example #8
0
def paaruoat_by_current_user():
    reseptit = Resepti.paaruoat_by_current_user_query()

    return render_template("/reseptit/paaruoat_by_user.html", reseptit = reseptit)