From 5358ea95d665f8ac3295589adb77f5d7d62e1fa1 Mon Sep 17 00:00:00 2001 From: neingeist Date: Fri, 9 Nov 2018 21:25:30 +0100 Subject: [PATCH] initial commit --- .flaskenv | 1 + .gitignore | 1 + app/__init__.py | 7 +++++++ app/forms.py | 8 ++++++++ app/routes.py | 21 +++++++++++++++++++++ app/templates/base.html | 23 +++++++++++++++++++++++ app/templates/download.html | 23 +++++++++++++++++++++++ app/templates/index.html | 5 +++++ prolefeeder.py | 1 + requirements.txt | 3 +++ 10 files changed, 93 insertions(+) create mode 100644 .flaskenv create mode 100644 .gitignore create mode 100644 app/__init__.py create mode 100644 app/forms.py create mode 100644 app/routes.py create mode 100644 app/templates/base.html create mode 100644 app/templates/download.html create mode 100644 app/templates/index.html create mode 100644 prolefeeder.py create mode 100644 requirements.txt diff --git a/.flaskenv b/.flaskenv new file mode 100644 index 0000000..899e66a --- /dev/null +++ b/.flaskenv @@ -0,0 +1 @@ +FLASK_APP=prolefeeder.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c18dd8d --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +__pycache__/ diff --git a/app/__init__.py b/app/__init__.py new file mode 100644 index 0000000..f5b34f4 --- /dev/null +++ b/app/__init__.py @@ -0,0 +1,7 @@ +from flask import Flask +from config import Config + +app = Flask(__name__) +app.config.from_object(Config) + +from app import routes diff --git a/app/forms.py b/app/forms.py new file mode 100644 index 0000000..ca2a560 --- /dev/null +++ b/app/forms.py @@ -0,0 +1,8 @@ +from flask_wtf import FlaskForm +from wtforms import DateTimeField, DecimalField, SubmitField +from wtforms.validators import DataRequired + +class DownloadForm(FlaskForm): + date = DateTimeField('Date', validators=[DataRequired()]) + length = DecimalField('Length', validators=[DataRequired()]) + submit = SubmitField('Download') diff --git a/app/routes.py b/app/routes.py new file mode 100644 index 0000000..f89ed7e --- /dev/null +++ b/app/routes.py @@ -0,0 +1,21 @@ +from flask import render_template, flash, redirect, url_for, request +from app import app +from app.forms import DownloadForm +from datetime import datetime, timedelta + +@app.route('/') +@app.route('/index') +def index(): + return render_template('index.html') + +@app.route('/download', methods=['GET', 'POST']) +def download(): + form = DownloadForm() + if form.validate_on_submit(): + flash('Download requested: {}, length={}'.format( + form.date.data, form.length.data)) + return redirect(url_for('index')) + elif request.method == 'GET': + form.date.data = datetime.now() - timedelta(hours = 1) + form.length.data = 60 + return render_template('download.html', title='Download', form=form) diff --git a/app/templates/base.html b/app/templates/base.html new file mode 100644 index 0000000..3c4e8a1 --- /dev/null +++ b/app/templates/base.html @@ -0,0 +1,23 @@ + + + + Prolefeeder + + +
+ Home + Download +
+
+ {% with messages = get_flashed_messages() %} + {% if messages %} + + {% endif %} + {% endwith %} + {% block content %}{% endblock %} + + diff --git a/app/templates/download.html b/app/templates/download.html new file mode 100644 index 0000000..14b853d --- /dev/null +++ b/app/templates/download.html @@ -0,0 +1,23 @@ +{% extends "base.html" %} + +{% block content %} +

Download

+
+ {{ form.hidden_tag() }} +

+ {{ form.date.label }}
+ {{ form.date() }}
+ {% for error in form.date.errors %} + [{{ error }}] + {% endfor %} +

+

+ {{ form.length.label }}
+ {{ form.length() }}
+ {% for error in form.length.errors %} + [{{ error }}] + {% endfor %} +

+

{{ form.submit() }}

+
+{% endblock %} diff --git a/app/templates/index.html b/app/templates/index.html new file mode 100644 index 0000000..b35e072 --- /dev/null +++ b/app/templates/index.html @@ -0,0 +1,5 @@ +{% extends "base.html" %} + +{% block content %} +

Hello!

+{% endblock %} diff --git a/prolefeeder.py b/prolefeeder.py new file mode 100644 index 0000000..d099b92 --- /dev/null +++ b/prolefeeder.py @@ -0,0 +1 @@ +from app import app diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..804bcdd --- /dev/null +++ b/requirements.txt @@ -0,0 +1,3 @@ +flask +flask-wtf +python-dotenv