annotate www/m/js/socket-ctrl.js @ 101:52e44ee1c791 tip master

enabled all scores in autostart script
author Rob Canning <rc@kiben.net>
date Tue, 21 Apr 2015 16:20:57 +0100
parents 9070b2a7ca65
children
rev   line source
rc-web@5 1 var socket = io.connect();
rc-web@5 2
rc-web@5 3 socket.on('connect', function () {
rc-web@5 4 $('#chat').addClass('connected');
rc-web@5 5 });
rc-web@5 6
rc-web@5 7 socket.on('announcement', function (msg) {
rc-web@5 8 $('#lines').append($('<p>').append($('<em>').text(msg)));
rc-web@5 9 });
rc-web@5 10
rc-web@5 11 socket.on('nicknames', function (nicknames) {
rc-web@5 12 $('#nicknames').empty().append($('<span>Online: </span>'));
rc-web@5 13 for (var i in nicknames) {
rc-web@5 14 $('#nicknames').append($('<b>').text(nicknames[i]+" : "));
rc-web@5 15 }
rc-web@5 16 });
rc-web@5 17
rc-web@5 18 socket.on('user message', message);
rc-web@5 19
rc-web@5 20 socket.on('reconnect', function () {
rc-web@5 21 $('#lines').remove();
rc-web@5 22 message('System', 'Reconnected to the server');
rc-web@5 23 });
rc-web@5 24
rc-web@5 25 socket.on('reconnecting', function () {
rc-web@5 26 message('System', 'Attempting to re-connect to the server');
rc-web@5 27 });
rc-web@5 28
rc-web@5 29 socket.on('error', function (e) {
rc-web@5 30 message('System', e ? e : 'A unknown error occurred');
rc-web@5 31 });
rc-web@5 32
rc-web@5 33
rc-web@5 34 function message (from, msg) {
rc-web@5 35 $('#lines').prepend($('<p>').prepend($('<b>').text(from), msg));
rc-web@5 36 $('#announ').text(msg);
rc-web@5 37 }
rc-web@5 38
rc-web@5 39
rc-web@5 40
rc-web@5 41 // dom manipulation
rc-web@5 42 $(function () {
rc-web@5 43 $('#set-nickname').submit(function (ev) {
rc-web@5 44 socket.emit('nickname', $('#nick').val(), function (set) {
rc-web@5 45 if (!set) {
rc-web@5 46 clear();
rc-web@5 47 return $('#chat').addClass('nickname-set');
rc-web@5 48 }
rc-web@5 49 $('#nickname-err').css('visibility', 'visible');
rc-web@5 50 });
rc-web@5 51 return false;
rc-web@5 52 });
rc-web@5 53
rc-web@5 54 $('#send-message').submit(function () {
rc-web@5 55 message('me ', $('#message').val());
rc-web@5 56 socket.emit('user message', $('#message').val());
rc-web@5 57 clear();
rc-web@5 58 $('#lines').get(0).scrollTop = 10000000;
rc-web@5 59 return false;
rc-web@5 60 });
rc-web@5 61
rc-web@5 62
rc-web@5 63 function clear () {
rc-web@5 64 $('#message').val('').focus();
rc-web@5 65 };
rc-web@5 66 });
rc-web@5 67