Just some reference
```javascript window.log = function() { log.history = log.history || []; // store logs to an array for reference log.history.push(arguments); if (this.console) { arguments.callee = arguments.callee.caller; var newarr = [].slice.call(arguments); (typeof console.log === 'object' ? log.apply.call(console.log, console, newarr) : console.log.apply(console, newarr)); } }; slider_init = function() { (function(a) { a.fn.unoSlider = function(l) { if (this.length > 1) { this.each(function() { a(this).unoSlider(l); }); return this; } var d = { animSpeed: 250, speed: 5, auto: true, easing: "swing", next: false, prev: false, prev: false, transition: "slide", pause: false, bullets: false, selector: "li", callback: function() {} }; var l = a.extend({}, d, l); var k = this; k.$views = a(k.find(l.selector)).addClass("sliderView"); k.$nav = a(k.find(".unoSliderNav")); k.navItems = []; k.viewWidth = k.width(); k.animTimer = l.animSpeed; k.timerSpeed = l.speed * 1000; k.easing = l.easing; k.transition = l.transition; k.current = k.$views[0]; k.addClass("unoSlider"); for (var f = 0; f < k.$views.length; f++) { var g = a(k.$views[f]); $bullet = a("<span>•</span>"); k.$views[f] = g; g.add($bullet).data("idx", f); k.$nav.append($bullet); k.navItems[f] = $bullet; $bullet.bind("click", function() { h(a(this)); }); } var h = function(n) { var i = n.data("idx"), m = k.current.data("idx"); e(m, i); k.resetTimer(); }; var c = function(i) { k.$views.add(k.navItems).each(function() { this.removeClass("current"); }); a(k.$views).add(a(k.navItems)).addClass("current"); k.current = k.$views; }; var e = function(m, i) { if (i >= k.$views.length) { i = 0; } else { if (i < 0) { i = k.$views.length - 1; } } if (m < i) { b(m, i); } else { if (m > i) { j(m, i); } } if (typeof l.callback == "function") { l.callback.call(i); } c(i); }; if (l.next) { a(l.next).live("click", function(i) { i.preventDefault(); k.goForward(); }); } if (l.prev) { a(l.prev).live("click", function(i) { i.preventDefault(); k.goBack(); }); } function b(m, i) { k.$views[m].stop().animate({ left: (k.viewWidth * -1) / 4 + "px", opacity: "0" }, k.animTimer, k.easing, function() { k.$views[m].css({ left: k.viewWidth + "px" }); }); k.$views.css({ left: k.viewWidth / 4 + "px" }).stop().animate({ left: "0", opacity: "1" }, k.animTimer, k.easing, function() {}); } function j(m, i) { k.$views[m].stop().animate({ left: k.viewWidth / 4 + "px", opacity: "0" }, k.animTimer, k.easing, function() { k.$views[m].css({ left: k.viewWidth / 4 + "px" }); }); k.$views.css({ left: (k.viewWidth * -1) / 4 + "px" }).stop().animate({ left: "0", opacity: "1" }, k.animTimer, k.easing, function() {}); } k.initialize = function() { c(0); k.startTimer(); return this; }; k.startTimer = function() { k.t = setInterval(function() { if (l.auto) { k.goForward(); } }, k.timerSpeed); }; k.killTimer = function() { clearInterval(k.t); }; k.resetTimer = function() { k.killTimer(); k.startTimer(); }; k.goForward = function() { var m = k.current.data("idx"), i = m + 1; e(m, i); }; k.goBack = function() { var m = k.current.data("idx"), i = m - 1; e(m, i); }; k.goTo = function(m) { var o = k.current.data("idx"), n = m - 1; e(o, n); }; return this.initialize(); }; })($); $('#sliderId').unoSlider({ speed: 15 }); slider_init = function() {}; } $.fn.emotions2 = function() { this.emotions({ handle: '', dir: "https://blahtherapy.com/wp-includes/images/smilies/", emotions: [{ syntax: ":)", title: "smile", icon: "icon_smile.gif" }, { syntax: ":D", title: "biggrin", icon: "icon_biggrin.gif" }, { syntax: ":(", title: "sad", icon: "icon_sad.gif" }, { syntax: "8O", title: "eek", icon: "icon_eek.gif" }, { syntax: ":?", title: "confused", icon: "icon_confused.gif" }, { syntax: "8)", title: "cool", icon: "icon_cool.gif" }, { syntax: ":x", title: "mad", icon: "icon_mad.gif" }, { syntax: ":P", title: "razz", icon: "icon_razz.gif" }, { syntax: ":|", title: "neutral", icon: "icon_neutral.gif" }, { syntax: ";)", title: "wink", icon: "icon_wink.gif" }, { syntax: ":smile:", title: "smile", icon: "icon_smile.gif" }, { syntax: ":lol:", title: "lol", icon: "icon_lol.gif" }, { syntax: ":biggrin:", title: "biggrin", icon: "icon_biggrin.gif" }, { syntax: ":redface:", title: "redface", icon: "icon_redface.gif" }, { syntax: ":sad:", title: "sad", icon: "icon_sad.gif" }, { syntax: ":cry:", title: "cry", icon: "icon_cry.gif" }, { syntax: ":surprised:", title: "surprised", icon: "icon_surprised.gif" }, { syntax: ":evil:", title: "evil", icon: "icon_evil.gif" }, { syntax: ":eek:", title: "eek", icon: "icon_eek.gif" }, { syntax: ":twisted:", title: "twisted", icon: "icon_twisted.gif" }, { syntax: ":confused:", title: "confused", icon: "icon_confused.gif" }, { syntax: ":rolleyes:", title: "rolleyes", icon: "icon_rolleyes.gif" }, { syntax: ":cool:", title: "cool", icon: "icon_cool.gif" }, { syntax: ":exclaim:", title: "exclaim", icon: "icon_exclaim.gif" }, { syntax: ":mad:", title: "mad", icon: "icon_mad.gif" }, { syntax: ":question:", title: "question", icon: "icon_question.gif" }, { syntax: ":razz:", title: "razz", icon: "icon_razz.gif" }, { syntax: ":idea:", title: "idea", icon: "icon_idea.gif" }, { syntax: ":neutral:", title: "neutral", icon: "icon_neutral.gif" }, { syntax: ":arrow:", title: "arrow", icon: "icon_arrow.gif" }, { syntax: ":wink:", title: "wink", icon: "icon_wink.gif" }, { syntax: ":mrgreen:", title: "mrgreen", icon: "icon_mrgreen.gif" } ] }); return this; } $.fn.exists = function() { return this.length > 0; } $.fn.htmlSlow = function(a) { var ele = this; ele.fadeOut('slow', function() { ele.html(a).fadeIn() }); return this; } function stylebox() { $("#stylebox").empty().html('<style> .nick_name:after{content: "' + username + '";} .youmsg .nick_name:after{content: "' + me + '";} .strangermsg </style>') } function app_scroll(ele) { $("#logbox")[0].scrollTop = $("#logbox").append(ele)[0].scrollHeight; } var socket = io.connect('https://blahtherapy.app:3000', { 'sync disconnect on unload': true, 'flash policy port': 10844, query: 'session='+chatSession }); var date = new Date(); var group = ""; var userId = 0; var html5_audiotypes = { "mp3": "audio/mpeg", "mp4": "audio/mp4", "ogg": "audio/ogg", "wav": "audio/wav" }; function createsoundbite(sound) { var html5audio = document.createElement('audio') if (html5audio.canPlayType) { for (var i = 0; i < arguments.length ; i++) { var sourceel = document.createElement('source') sourceel.setAttribute('src', arguments) if (arguments.match(/\.(\w+)$/i)) sourceel.setAttribute('type', html5_audiotypes[RegExp.$1]) html5audio.appendChild(sourceel) } html5audio.load() html5audio.playclip = function() { html5audio.pause() html5audio.currentTime = 0 html5audio.play() } return html5audio } else { return { playclip: function() { throw new Error("Your browser doesn't support HTML5 audio unfortunately") } } } } var host = "https://blahtherapy.com/wp-content/themes/OneCommunity/"; var sound = createsoundbite(host + "sounds/ring.wav"); var sound2 = createsoundbite(host + "sounds/msg.wav"); var last_user = "n"; var last_ele = ""; socket.on('updaterooms', function(current_room) { if (current_room != 'group_a' && current_room != 'group_b') { $("#connecting,#looking").hide(); $("#disconnectbtn,#chatmsg,#sendbtn,#Report,#controltable,#share,#formInfo").show(''); $("#partner-status").html("connected").removeClass().addClass("connect"); app_scroll($("#sayHi").show()); if (!$('#sound').hasClass('off')) sound.playclip(); connectedTitle(); } }); socket.on('has_partner', function() { if(confirm('Your last partner is still waiting for you. Would you like to reconnect?')) { socket.emit('do_reconnect_chat'); } }); socket.on('partner_left', function() { alert('Sorry, your partner has already left!'); }); socket.on('reconnect_chat', function(current_room) { $("#chatbox").fadeIn('fast'); $('#slide-area').hide() connectedTitle(); clearTimeout(g_dc_t); $("#connecting,#looking,#partneroffline,#meoffline,#startNew").hide() $("#disconnectbtn,#chatmsg,#sendbtn,#Report,#controltable,#share,#formInfo").show(''); $("#chat_frnd").hide().next().show() app_scroll($("#sayHi").show()); $("#partner-status").html("connected").removeClass().addClass("connect"); if (!$('#sound').hasClass('off')) sound.playclip(); last_user = "n"; last_ele = ""; }); socket.on('onlineusers', function(count, countgroup, whois) { var chatting = (count - countgroup) $("#onlinecount").html(countgroup + " " + whois + " holding on"); }) socket.emit('countusers', '') var o_group=""; function startChat(selectedGroup) { $("#disconnectbtn,#chatmsg,#sendbtn,#Report,#controltable,#share,#formInfo").hide(); $("#partner-status").html("waiting for partner").removeClass().addClass("offline animate"); $("#intro-t").fadeOut('slow', function() { $("#chatbox").fadeIn('fast'); }); /*if (location.hash != "") socket.emit('adduser2', selectedGroup, function(id) { userId = id; }); else*/ { socket.emit('adduser', selectedGroup, function(id) { userId = id; }); } slider_init(); } var flag = false; function disconnect() { flag = confirm("Are you sure you want to be disconnected from this chat?"); if (flag) { socket.emit('userdisconnectedchat', true); socket.disconnect(); } } function getTime() { return '<abbr class="timeago" title="' + (new Date()).toISOString() + '"></abbr>' } socket.on('updatechat', function(source_id, data) { var partner = (group == 'group_a') ? "Venter" : "Listener" var ele = $(".strangermsg_parent").clone().removeClass('strangermsg_parent'); ele.find(".partner").html(partner); ele.find(".time").html(getTime()).find("abbr.timeago").timeago(); ele.find(".msgtext").html(data).emotions2(); if (last_user != partner) { last_user = partner; last_ele = ele; app_scroll(ele); } else { last_ele.find(".msg_full:last").after(ele.find(".msg_full")); app_scroll(''); } if (!$('#sound').hasClass('off')) sound2.play() playTitle() }); function appendMyMessage(msg) { if ($.trim(msg) != "") { var ele = $(".youmsg_parent").clone().removeClass('youmsg_parent'); ele.find(".time").html(getTime()).find("abbr.timeago").timeago(); ele.find(".msgtext").html(msg).emotions2(); var partner = "You"; if (last_user != partner) { last_user = partner; last_ele = ele; app_scroll(ele); } else { last_ele.find(".msg_full:last").after(ele.find(".msg_full")); app_scroll(''); } } } $(window).load(function() { if (location.hash != "") startChat(location.href.split('#')[1]); }) $('#sound').toggleClass('off').click(function() { $(this).toggleClass('off') }); $("#report_user").submit(function() { var ele = $(this); ele.htmlSlow('Please wait...'); $.post('', $(this).serialize(), function() { ele.html('Thanks for reporting...'); location.hash = ""; socket.emit('userdisconnectedchat', true); setTimeout(location.reload(), 3000); }); return false; }); $('#sess_form textarea').bind('keypress', function(e) { if(e.keyCode==13){ $("#sess_form").submit(); } }); $("#sess_form").submit(function() { var msg = $("#chatmsg").val(); if ($.trim(msg) !== "") { msg = $('<div/>').text(msg).html() socket.emit('sendchat', msg) appendMyMessage(); $("#chatmsg").val('') } return false; }) $("#share").click( function() { if (confirm($(this).data('msg'))) $.get('https://blahtherapy.com/test-mini-profile/', function(d) { var ele = $(d) var data = {} $("#details").hide(); data.old_name = me; data.username = $(ele[2]).html(); data.avatar = $(ele[0]).html(); data.share = true; $("#my_avtar").htmlSlow(data.avatar); socket.emit('share_profile', data); me = $(ele[2]).text(); var ele = $("#rename"); ele.find('.old_name').html(data.old_name); ele.find('.username').html(data.username); stylebox(); app_scroll(ele.show()); last_user = "n"; last_ele = ""; $.cookie(location.hash, true, { expires: 1 }); }) }) $(".startNewChat").click(function() { location.hash = ""; location.reload(); }) $('#chatmsg').typing({ start: function(event, $elem) { socket.emit('typing', true) }, stop: function(event, $elem) { socket.emit('typing', false) }, delay: 400 }); $("#dialog2").dialog({ autoOpen: false, show: { effect: "blind", duration: 1000 }, hide: { effect: "explode", duration: 1000 } }); $("#Report").click(function() { $("#dialog2").dialog("open"); }); $("[title]").tooltip(); $("#formInfo").tooltip({ content: function() { return $(this).next().html(); } }); socket.on('isTyping', function(isTyping) { if (isTyping) { $("#typing").show(); } else { $("#typing").hide(); } }) var ip, username = "", me, url; socket.on('ip', function(a) { //console.log(a) $(window).unbind().bind('beforeunload', function(){ return 'You are about to disconnect from this chat, are you sure you want to leave?'; }); if(username=="") {$("#newip2").val(a[0]); ip = a[0]; username = a[1]; me = a[2]; url = a[3]; group= a[4]; //location.hash = url; stylebox(); url = location.href.split('#')[0] + "#" + url; $('#url').show().find('a').attr('href', url).html(url); $("#partneralias").html(username); $("#mealias").html(me); } }) socket.on('ip2', function(a,b) { $("#mealias").html(a); group=b; }) socket.on('share_profile', function(data) { $("#partneralias").next().remove(); $("#partneralias").htmlSlow(data.username); $("#theiravatar_par").htmlSlow(data.avatar); if (data.share) { var ele = $("#shared_profile"); ele.find('.old_name').html(data.old_name); ele.find('.username').html(data.username); app_scroll(ele.show()); } username = $("<div>" + data.username + "