var offset = 0; var messages = new Array(); var message = document.getElementById('message'); var CMem = document.getElementById('CMem'); var chat = document.getElementById('chat'); var tmrRead = setTimeout('chat_read_write(false);', 300); function chat_read_write(post) { clearTimeout(tmrRead); $.ajax({ url: "FChatEngine.php" + (post ? "" : "?r=" + offset + "&u=" + encodeURIComponent(CMem.value)), type: (post ? "POST" : "GET"), data: (post ? "w=" + encodeURIComponent(message.value) + "&u=" + encodeURIComponent(CMem.value) + ($('#NoAI').attr('checked') ? "&NoAI=1" : "" ) : ""), async: true, success:function(result){ parse(result); if(!post){ setTimeout('chat_read_write(false);', 1000);} }, error:function(){ if(!post){ setTimeout('chat_read_write(false);', 2000);} } }); if(post){message.value = '';} } function keyup(e) { if (window.event) k = window.event.keyCode; else if (e) k = e.which; else return true; if (k == 13) chat_read_write(true); } function chat_display() { html = ''; itms = (messages.length <= 35 ? messages : messages.slice(-36)); for (x in itms){ html = html + itms[x]; } chat.innerHTML = ''+html+'
'; chat.scrollTop = chat.scrollHeight; } function cs(o, i, t, u, m, v) { if (u == '1'){ m = decodeURIComponent(m); messages[o] = "
"+GetEmo(m)+"
"; if (v == 1){ var tmp = document.createElement("DIV"); tmp.innerHTML = encodeURIComponent(m); spk = tmp.textContent; // TTS Engine currentPlaying = 0; inProgress = true; playingLines = ToLines(spk).split("|||"); $("#jtts").play(playingLines).bind('onComplete', function() { inProgress = false; }); } } else { m = decodeURIComponent(m); messages[o] = ""+t+"
" + u + " " + GetEmo(m) + "
"; } if (o > offset) { offset = o; window.focus(); message.focus(); } } function parse(s) { if (s != '') { s = decodeURIComponent(s); eval(s); chat_display(); } }