better design @chat

This commit is contained in:
2019-06-15 17:01:51 +01:00
parent aa770ab96c
commit 66fe0e3fb9
4 changed files with 17 additions and 13 deletions

View File

@ -104,7 +104,7 @@ window.ChatHubHandler = (function ($) {
// eslint-disable-next-line no-warning-comments
// TODO userpart userjoin deniedpv
$('<li></li>').append(tag + ': ' + targetid + ': ').append(message.Value).addClass(tag).appendTo(notifications);
$('<li></li>').append(tag + ': ' + targetid + ': ').append(message).addClass(tag).appendTo(notifications);
};
var setChanInfo = function (chanInfo) {
var chanId = 'r' + chanInfo.Name;

View File

@ -2,7 +2,7 @@
window.ChatHubHandler=(function($){$.fn.filterByData=function(prop,val){return this.filter(function(){return $(this).data(prop)==val;});};var ChatView=function($view,full){if(!full)throw new Error('not implemented');var chans=[];var userlist=[];var frontChanId;var ulist=$('<ul></ul>').addClass('userlist');var notifications=$('<ul></ul>').addClass('notifs');ulist.appendTo($view);notifications.appendTo($view);var onUserDisconnected=function(uname){$('#u'+uname).remove();};var onUserConnected=function(username){addChatUser(username);};var chat=$.connection.chatHub;chat.client.addMessage=function(name,room,message){var $userTag=$('<a>'+htmlEncode(name)+'</a>').click(function(){buildPv(name);});var $li=$('<li class="discussion"></li>');$userTag.appendTo($li);$li.append(' '+htmlEncode(message));$li.appendTo($('#r'+room));};chat.client.addPV=function(name,message){if(!$('#mute').prop('checked')){audio.play();}
buildPv(name);$('#u'+name).append('<li class="pv"><strong>'+htmlEncode(name)+'</strong>: '+htmlEncode(message)+'</li>');};chat.client.notifyRoom=function(tag,targetid,message){if(tag==='connected'||tag==='reconnected'){onUserConnected(targetid,message);return;}else if(tag==='disconnected'){onUserDisconnected(targetid,message);return;}
$('<li></li>').addClass(tag).append(tag+': '+targetid+' ').append(message).addClass(tag).appendTo($('#room_'+targetid));};chat.client.notifyUser=function(tag,targetid,message){if(tag==='connected'||tag==='reconnected'){onUserConnected(targetid,message);return;}else if(tag==='disconnected'){onUserDisconnected(targetid,message);return;}
$('<li></li>').append(tag+': '+targetid+': ').append(message.Value).addClass(tag).appendTo(notifications);};var setChanInfo=function(chanInfo){var chanId='r'+chanInfo.Name;$('#tv_'+chanId).replaceWith(chanInfo.Topic);}
$('<li></li>').append(tag+': '+targetid+': ').append(message).addClass(tag).appendTo(notifications);};var setChanInfo=function(chanInfo){var chanId='r'+chanInfo.Name;$('#tv_'+chanId).replaceWith(chanInfo.Topic);}
var setActiveChan=function(chanId){if(frontChanId!=chanId){if(frontChanId){$('#sel_'+frontChanId).addClass('btn-primary');$('#v'+frontChanId).addClass('hidden');}
frontChanId=chanId;$('#sel_'+chanId).removeClass('btn-primary');$('#v'+chanId).removeClass('hidden');$('#inp_'+chanId).focus();}};function join(roomName)
{chat.server.join(roomName).done(function(chatInfo){setChanInfo(chatInfo);setActiveChan('r'+chatInfo.Name);});}