X-Git-Url: https://git.auder.net/?p=rpsls-web.git;a=blobdiff_plain;f=server.py;h=2f4acff9b6ef3bf846ec9e0a968735089c450a62;hp=94b37880a3a1ef0c1b67ac9885b2191fe1aba0b3;hb=0d0fffaac02e86dc1bb661aa60a260d3d00d8ae0;hpb=f126a42e8aeb423e81043fdf07bb4a16350b4d37 diff --git a/server.py b/server.py index 94b3788..2f4acff 100644 --- a/server.py +++ b/server.py @@ -1,16 +1,18 @@ import socketio import eventlet import sqlite3 -import re +from re import match as re_match from datetime import date -import os +from os import getenv +from sys import path as sys_path # Create a Socket.IO server (CORS arg required on server, not locally) -sio = socketio.Server() -#sio = socketio.Server(cors_allowed_origins='URL or *') +MODE = getenv('RPSLS_MODE') +allowed_origin = 'https://rpsls.auder.net' if MODE=='production' else '*' +sio = socketio.Server(cors_allowed_origins=allowed_origin) -RPSLS_PATH = './' #edit if launched from elsewhere -DB_PATH = RPSLS_PATH + 'db/rpsls.sqlite' +RPSLS_PATH = sys_path[0] +DB_PATH = RPSLS_PATH + '/db/rpsls.sqlite' searching = {} #someone seeks a game? (uid + sid) connected = {} #map uid --> sid (seek stage) @@ -31,7 +33,7 @@ def disconnect(sid): @sio.event def login(sid, data): """ When user sends name from /login page """ - if not re.match(r"^[a-zA-Z]{3,}$", data): + if not re_match(r"^[a-zA-Z]{3,}$", data): sio.emit("login", {"err": "Name: letters only"}, room=sid) return con = sqlite3.connect(DB_PATH) @@ -102,13 +104,13 @@ def inc_pts(sid, data): con.close() static_files = { - '/': RPSLS_PATH + 'index.html', - '/rpsls.js': RPSLS_PATH + 'rpsls.js', - '/favicon.ico': RPSLS_PATH + 'favicon.ico', - '/assets': RPSLS_PATH + 'assets' + '/': RPSLS_PATH + '/index.html', + '/rpsls.js': RPSLS_PATH + '/rpsls.js', + '/favicon.ico': RPSLS_PATH + '/favicon.ico', + '/assets': RPSLS_PATH + '/assets' } -PORT = os.getenv('RPSLS_PORT') +PORT = getenv('RPSLS_PORT') if PORT is None: PORT = "8000" PORT = int(PORT)