from flask import Flask, render_template, flash, redirect
from flask_sqlalchemy import SQLAlchemy
from flask_wtf import FlaskForm
from wtforms.ext.sqlalchemy.orm import model_form

app = Flask(__name__)
db = SQLAlchemy(app)
app.secret_key="Ibeil2oshah1oogai1shethah3iet3deezeCie0eireeB"

class Person(db.Model):
	id = db.Column(db.Integer, primary_key=True)
	email = db.Column(db.String, nullable=False)
	name = db.Column(db.String, nullable=False)
	contact = db.Column(db.Integer, nullable=False)

PersonForm = model_form(model=Person, base_class=FlaskForm, db_session=db.session)

@app.before_first_request
def comments():
	db.create_all()

	person = Person(email="pig@potato.dog", name="laama", contact="66642069")
	db.session.add(person)
	db.session.commit()

@app.route("/<int:id>/edit", methods=["GET", "POST"])
@app.route("/new", methods=["GET", "POST"])
def lomake(id=None):
	person = Person()
	if id:
		person = Person.query.get_or_404(id)
	form = PersonForm(obj=person)
	if form.validate_on_submit():
		form.populate_obj(person)
		db.session.add(person)
		db.session.commit()
		flash("added")
		return redirect("/")
	return render_template("new.html", form=form)

@app.route("/<int:id>/delete")
def delteperson(id):
	person = Person.query.get_or_404(id)
	db.session.delete(person)
	db.session.commit()
	flash("gone 4 ever")
	return redirect("/")

@app.route("/")
def helou():
	ppl = Person.query.all()
	return render_template("index.html", ppl=ppl)

if __name__ == "__main__":
        app.run()
