From 24efdc59cb58c5bbfa49516088fe124bc9f431c1 Mon Sep 17 00:00:00 2001 From: lassulus Date: Mon, 11 Nov 2013 17:46:27 +0100 Subject: webchat: still refactoring --- webchat/public/client.js | 2 +- webchat/public/commands.js | 2 +- webchat/public/functions.js | 63 ++++++++++----------------------------------- webchat/public/reset.css | 1 + 4 files changed, 17 insertions(+), 51 deletions(-) (limited to 'webchat/public') diff --git a/webchat/public/client.js b/webchat/public/client.js index 4842d9c2..5e0202a1 100644 --- a/webchat/public/client.js +++ b/webchat/public/client.js @@ -17,7 +17,7 @@ $(function connect() { console.log('message', e.data); try { var object = JSON.parse(e.data); - console.log(object.message); + console.log(object); clientParser(object); } catch (error) { diff --git a/webchat/public/commands.js b/webchat/public/commands.js index 8cd3bba1..20197fbb 100644 --- a/webchat/public/commands.js +++ b/webchat/public/commands.js @@ -3,7 +3,7 @@ var commands = {} commands.say = function (settings, params) { var sendObj = { method: 'say', - params: { message: params }, + params: { msg: params }, }; sock.send(JSON.stringify(sendObj)) } diff --git a/webchat/public/functions.js b/webchat/public/functions.js index ddd3aad6..adcf3169 100644 --- a/webchat/public/functions.js +++ b/webchat/public/functions.js @@ -9,50 +9,22 @@ function inputParser (str) { function clientParser(object) { - console.log(object) - switch (object.type) { - case 'message': - return printMessage(object); - case 'join': - return handleJoin(object); - case 'quit': - return handleQuit(object); - case 'nicklist': - return handleNicklist(object); - case 'nickchange': - return handleNickchange(object); - } -}; - -function handleJoin(object) { - var safe_from = $('
').text(object.from).html(); - $(''+getCurTime()+''+safe_from+'joined').insertBefore('#foot'); - $('#nicklist').append('
' + safe_from + '
') ; + console.log('parser: ',object) + return (handler[object.method] || console.log)(object.params) +//switch (object.method) { +// case 'message': +// return handler.message(object.params); +// case 'join': +// return handler.join(object.params); +// case 'quit': +// return handler.quit(object.params); +// case 'nicklist': +// return handler.nicklist(object.params); +// case 'nickchange': +// return handler.nickchange(object.params); +//} }; -function handleQuit(object) { - var safe_from = $('
').text(object.from).html(); - $(''+getCurTime()+''+safe_from+'quit').insertBefore('#foot'); - console.log('removing', safe_from); - $(getNicklistElement(safe_from)).remove(); -}; - -function handleNicklist(object) { - Object.keys(object.message).forEach(function (nick) { -// console.log('nick',nick); - var hash_from = btoa(nick).replace(/=/g,'_'); -// $('.name').each(function (i,e) { console.log(i,e); if (e.innerHTML === 'kweb') { $(e).attr("style", "color:green") } }) - $('#nicklist').append('
' + nick + '
') ; - }); -}; - -function handleNickchange(object) { - var safe_from = $('
').text(object.nick).html(); - var safe_newnick = $('
').text(object.newnick).html(); - $(''+getCurTime()+''+safe_from+'is now known as '+object.newnick+'').insertBefore('#foot'); - $(getNicklistElement(safe_from)).remove(); - $('#nicklist').append('
' + safe_from + '
') ; -}; function replaceURLWithHTMLLinks (text) { var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig; @@ -89,13 +61,6 @@ function chatboxAppend (chat_from, chat_msg, type) { elem.scrollTop = elem.scrollHeight; }; -function printMessage(object) { - var safe_message = $('
').text(object.message).html(); - safe_message = replaceURLWithHTMLLinks(safe_message); - var safe_from = $('
').text(object.nick).html(); - return chatboxAppend(safe_from, safe_message) -}; - function getCurTime () { date = new Date; h = date.getHours(); diff --git a/webchat/public/reset.css b/webchat/public/reset.css index 4139aca5..64ba963e 100644 --- a/webchat/public/reset.css +++ b/webchat/public/reset.css @@ -63,6 +63,7 @@ q:before, q:after { font-weight: bold; text-align: right; font-size:12px; + white-space: nowrap; } .chat_from:after { content: ":"; -- cgit v1.2.3