diff --git a/app.py b/app.py index 4640b62..3731d88 100644 --- a/app.py +++ b/app.py @@ -1,11 +1,80 @@ -from flask import Flask, render_template +from flask import Flask, render_template, request, flash, redirect +import datetime +from sqlalchemy import create_engine, Column, Integer, Date, String +from sqlalchemy.ext.declarative import declarative_base +from sqlalchemy.orm import sessionmaker app = Flask(__name__) +app.config['SECRET_KEY'] = 'fa6166b0218186fb852429060105aca18e0f979240be8ebf' + +Base = declarative_base() -@app.route('/') +class Dates(Base): + __tablename__ = 'Dates' + id = Column(Integer, primary_key=True, autoincrement=True) + dateType = Column(Integer), + dateValue = Column(Date) + + +class DatesMetadata(Base): + __tablename__ = 'DatesMetadata' + id = Column(Integer, primary_key=True, autoincrement=True) + dateTypeID = Column(Integer) + DateTypeName = Column(String) + + +class Settings(Base): + __tablename__ = 'Settings' + id = Column(Integer, primary_key=True, autoincrement=True) + settingType = Column(Integer) + settingVale = Column(String) + + +class SettingsMetadata(Base): + __tablename__ = 'SettingsMetadata' + id = Column(Integer, primary_key=True, autoincrement=True) + settingTypeID = Column(Integer) + settingTypeName = Column(String) + + +engine = create_engine('sqlite:///static/db.db') +Dates.__table__.create(bind=engine, checkfirst=True) +Settings.__table__.create(bind=engine, checkfirst=True) +DatesMetadata.__table__.create(bind=engine, checkfirst=True) +SettingsMetadata.__table__.create(bind=engine, checkfirst=True) + +Session = sessionmaker(bind=engine) +session = Session() + + +@app.route('/', methods=('GET', 'POST')) +@app.route('/index.html', methods=('GET', 'POST')) def index(): - return render_template("index.html") + + plantdate = datetime.datetime(2022, 1,19) + last = datetime.datetime(2022, 1,19) + freq = 7 + next = last + datetime.timedelta(days=freq) + + alerts = {'text': False, 'email': True} + + if request.method == 'POST': + plantdate = request.form['plantDate'] + last = request.form['lastDate'] + next = datetime.datetime.strptime(last,'%Y-%m-%d') + datetime.timedelta(days=freq) + + plant = {'plant': plantdate, 'last': last, 'next': next, 'freq': freq} + return render_template("index.html", plant=plant, alerts=alerts) + + else: + dates = {'plant': '', 'last': '', 'next':'', 'freq': ''} + dates['plant'] = session.query(Dates.dateValue).filter(Dates.dateType == 1).first() + dates['last'] = session.query(Dates.dateValue).filter(Dates.dateType == 2).first() + dates['next'] = session.query(Dates.dateValue).filter(Dates.dateType == 3).first() + dates['freq'] = session.query(Dates.dateValue).filter(Dates.dateType == 4).first() + flash(dates['plant']) + return render_template("index.html", plant=dates, alerts=alerts) if __name__ == '__main__': diff --git a/templates/base.html b/templates/base.html new file mode 100644 index 0000000..ade8a07 --- /dev/null +++ b/templates/base.html @@ -0,0 +1,18 @@ + + + Hydro + + +
Hydro: home
+
+ {% with messages = get_flashed_messages() %} + {% if messages %} + {% for message in messages %} + {{ message }} + {% endfor %} + {% endif %} + {% endwith %} +
+ {% block content %}{% endblock %} + + \ No newline at end of file diff --git a/templates/freedfreq.html b/templates/freedfreq.html deleted file mode 100644 index 566549b..0000000 --- a/templates/freedfreq.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - Title - - - - - \ No newline at end of file diff --git a/templates/index.html b/templates/index.html index cb5b3ea..7df9789 100644 --- a/templates/index.html +++ b/templates/index.html @@ -1,41 +1,38 @@ - - - +{% extends "base.html" %} +{% block content %} + +

Information

+
+ + +
+ + +
+ + +
+ Feed Frequency: {{ plant.freq }} days +
+ +
- - - Hydro - - -

Information

-
- Plant Date: - 1/19/2022 - Change -
-
- Last Feed Date: - Change -
-
- Next Feed Date: - Change -
-
- Feed Frequency: - Change -
-

Alerts

-
- - - -
- -
-

-
- -
- - \ No newline at end of file +

Alerts

+
+
+ + + +
+ +
+ +
+

+
+ +
+{% endblock %} \ No newline at end of file diff --git a/templates/lastfeeddate.html b/templates/lastfeeddate.html deleted file mode 100644 index 566549b..0000000 --- a/templates/lastfeeddate.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - Title - - - - - \ No newline at end of file diff --git a/templates/nextfeeddate.html b/templates/nextfeeddate.html deleted file mode 100644 index 566549b..0000000 --- a/templates/nextfeeddate.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - Title - - - - - \ No newline at end of file diff --git a/templates/plantdate.html b/templates/plantdate.html deleted file mode 100644 index 566549b..0000000 --- a/templates/plantdate.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - Title - - - - - \ No newline at end of file