|
|
@@ -7,6 +7,8 @@ from flask_sqlalchemy import SQLAlchemy
|
|
|
from flask_marshmallow import Marshmallow
|
|
|
from flask_migrate import Migrate
|
|
|
|
|
|
+import argparse
|
|
|
+
|
|
|
db = SQLAlchemy()
|
|
|
app = flask.Flask(__name__)
|
|
|
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:m9Eb5OflQb@mysql.mysql.svc.cluster.local/gopy'
|
|
|
@@ -55,9 +57,9 @@ def redirect_to_link(name):
|
|
|
try:
|
|
|
link = Link.query.filter_by(name=name).first()
|
|
|
except e:
|
|
|
- return redirect("/", code=302)
|
|
|
+ return redirect("/list", code=302)
|
|
|
if link is None:
|
|
|
- return redirect("/", code=302)
|
|
|
+ return redirect("/list", code=302)
|
|
|
try:
|
|
|
link.hit_count += 1
|
|
|
except TypeError:
|
|
|
@@ -77,7 +79,7 @@ def add_link():
|
|
|
link = Link(name=request.form['link_name'], target=request.form['target'], hit_count=0, owner_name="unknown")
|
|
|
db.session.add(link)
|
|
|
db.session.commit()
|
|
|
- return redirect("/", code=302)
|
|
|
+ return redirect("/list", code=302)
|
|
|
|
|
|
|
|
|
@app.route('/<string:link_name>/add', strict_slashes=False)
|
|
|
@@ -92,7 +94,7 @@ def edit_link(link_name):
|
|
|
print("Setting link target to {}".format(request.form['target']))
|
|
|
link.target = request.form['target']
|
|
|
db.session.commit()
|
|
|
- return redirect("/", code=302)
|
|
|
+ return redirect("/list", code=302)
|
|
|
|
|
|
|
|
|
@app.route('/<string:link_name>/edit', strict_slashes=False)
|
|
|
@@ -115,12 +117,20 @@ def delete_link_form(link_id):
|
|
|
return render_template('delete.html', link=link)
|
|
|
|
|
|
|
|
|
-@app.route('/')
|
|
|
+@app.route('/list')
|
|
|
def list_links():
|
|
|
links = get_links()
|
|
|
return render_template('list.html', links=links)
|
|
|
|
|
|
+
|
|
|
+@app.route('/')
|
|
|
+def landing_page():
|
|
|
+ return redirect("/list", code=302)
|
|
|
+
|
|
|
#@app.route('/links/<int:id>', methods=['GET'])
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
+ parser = argparse.ArgumentParser()
|
|
|
+ parser.add_argument("admin", help="Make admin functions available", action="store_true")
|
|
|
+ parser.parse_args()
|
|
|
app.run(host='0.0.0.0')
|