12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- import sqlite3
- import connection
- import server_controller
- import model
- from bottle import run, response, route
- from server_controller import not_found
- from util import debug
- if __name__ == '__main__':
- print('sqlite3.version', model.db.version)
- valid_routes = ['login',
- 'register',
- 'depot',
- 'activate_key',
- 'order', 'orders',
- 'news',
- 'transactions',
- 'orders_on']
- @route('/<path>', method='POST')
- def process(path):
- path = path.strip().lower()
- if path not in valid_routes:
- return not_found()
- response.content_type = 'application/json'
- method_to_call = getattr(server_controller, path)
- try:
- model.drop_expired_orders()
- resp = method_to_call()
- if response.status_code == 200:
- model.connection.commit()
- else:
- model.connection.rollback()
- return resp
- except sqlite3.IntegrityError as e:
- print(e)
- model.connection.rollback()
- return server_controller.bad_request('Action violates database constraints.')
- run(host='localhost', port=connection.port, debug=debug)
- model.db.connection.disconnect()
|