# node libraries socketio = (require 'socket.io') path = (require 'path') # my libraries FFTCGDB = (require './fftcgdb') FFTCGSOCKET = (http, dbfile) -> that = @ @io = socketio http @db = new FFTCGDB dbfile @io.on 'connection', (socket) -> that.__connection socket return FFTCGSOCKET::__connection = (socket) -> that = @ console.log 'a user connected' console.log socket.handshake.headers['cookie'] socket.emit 'id', socket.handshake.headers['cookie'] socket.on 'disconnect', -> console.log 'a user disconnected' socket.on 'register', (login, password) -> that.__register login, password socket.on 'login', (login, password) -> that.__login login, password FFTCGSOCKET::__login = (login, password) -> console.log '__login:', login, password @db.login login, password .then (login) -> console.log 'Login OK "%s"', login .catch (err) -> console.error 'error: "%s"', err FFTCGSOCKET::__register = (login, password) -> console.log '__register:', login, password @db.register login, password .then (login) -> console.log 'registered "%s"', login .catch (err) -> console.error 'error: "%s"', err FFTCGSOCKET::close = -> console.log '[FFTCGSOCKET] shutting down' if @db @db.close() .then (msg) -> console.log msg .catch (err) -> console.error err module.exports = FFTCGSOCKET