You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
1.2 KiB
Python

2 years ago
import os
import sys
import argparse
import quotes
from bottle import route, run, template, static_file
# get current location, set as current location, and append to path
current_dir = os.path.dirname(os.path.abspath(__file__))
os.chdir(current_dir)
sys.path.append(current_dir)
# get absolute path of database file
dbfile = current_dir + '/quotes.db'
print(dbfile)
@route('/')
def index():
quote = quotes.get_random_quote(dbfile)
return template('templates/index.tpl', text=quote[0], author=quote[1])
@route('/static/<filename:path>')
def server_static(filename):
return static_file(filename, root=os.path.join(current_dir, 'static'))
@route('/contact')
def contact():
quote = quotes.get_random_quote(dbfile)
return template('templates/contact.tpl', text=quote[0], author=quote[1])
def get_port():
description = 'A bottle server for the HILT Institute'
parser = argparse.ArgumentParser(description)
parser.add_argument('-p', '--port', type=int,
help="The port number the server will run on")
args = parser.parse_args()
return args.port if args.port else 8080
if __name__ == '__main__':
run(host='0.0.0.0', port=get_port(), reloader=True, debug=True)