<title>Citadel Instant Messenger</title>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript" src="wclib.js"></script>
+ <script type="text/javascript" src="authmethods.js"></script>
</head>
-<body>
+<body onLoad='FetchNewMsgs();'>
<div id="thetop" style="position:fixed;width:100%;height:15%;top:0%;left:0%">
<div id="spacer1" style="background:#aaaaaa"><br></div>
<div id="main" style="position:fixed;width:100%;height:85%;top:15%;left:0%;overflow:auto;background:#ffffff"></div>
<script type="text/javascript">
+/*
+ * Copyright 2000 - 2010 The Citadel Team
+ * Licensed under the GPL V3
+ *
+ * Chat window for Person 2 Person Chat
+ *
+ */
var gexp_divs = new Array();
var num_gexp_divs = 0;
// Clear the box
document.forms[sendform].elements['sendthis'].value = '';
- // Write it to the window
+ // Write it to the tab
$(which_div).innerHTML = $(which_div).innerHTML
+ '<b>'
+ '<font color=\"#FF0000\">'
+ '</font>'
+ ':</b> '
+ thetext
- + '<br />\n';
+ + '<br>\n';
+
+ // Scroll to the bottom of the tab
+ $('main').scrollTop = 999999;
// Send the text to the server
parms = 'r=' + Math.random()
- + '&g_cmd=SEXP ' + recipient + '|' + thetext;
- new Ajax.Request('../ajax_servcmd',
+ + '&recp=' + encodeURIComponent(recipient)
+ + '&msg=' + encodeURIComponent(thetext);
+ new Ajax.Request('../ajax_send_instant_message',
{
- method: 'get',
+ method: 'post',
parameters: parms
}
);
+ // Refocus to the text box
+ document.forms[sendform].elements['sendthis'].focus();
+
// Don't submit the form
return false;
}
$('main').innerHTML
+ '<div id=\"tab_' + which_div + '\" style=\"display:none;cursor:pointer\">'
+ '<div id=\"' + which_div + '\">'
+ + '<br><br><br><br><br><br><br><br><br><br>'
+ + '<br><br><br><br><br><br><br><br><br><br>'
+ '</div>'
- + '<div id=\"response_' + which_div + '\">'
+ + '<div align=\"center\" id=\"response_'
+ + which_div + '\" style=\"background:#ddddee\">'
+ '<br><form method=\"post\" action=\"null\" name=\"sendform_' + which_div + '\" '
+ 'onSubmit=\"return SendSomething(\'' + which_div + '\', \'sendform_'
+ which_div + '\', \'' + sender + '\');\">'
- + '<input type=\"text\" size=\"80\" maxlength=\"80\" name=\"sendthis\">'
+ + '<img src=\"webcit_icons/essen/16x16/chat.png\"> '
+ + '<input type=\"text\" size=\"72\" maxlength=\"600\" name=\"sendthis\">'
+ '</form>'
- + '</div>'
+ + '<br></div>'
+ '</div>\n';
$('tab_bar').innerHTML =
$('tab_bar').innerHTML
+ '</font>'
+ ':</b> '
+ the_message
- + '<br />\n';
+ + '<br>\n';
// Scroll to the bottom of the tab
- $(which_div).scrolltop = $(which_div).scrollHeight - $(which_div).clientHeight;
+ $('main').scrollTop = 999999;
+
+ // Refocus to the send box
+ document.forms['sendform_'+which_div].elements['sendthis'].focus();
+
+ // Keep trying for new messages until the server tells us to stop.
+ FetchNewMsgs();
}
// This is called periodically to check for new incoming messages
function FetchNewMsgs() {
- parms = 'g_cmd=GEXP&r=' + Math.random();
+ parms = encodeURI('g_cmd=GEXP&r=' + Math.random());
new Ajax.Request('../ajax_servcmd',
{
method: 'get',
}
// Perform some initialization.
-parms = 'g_cmd=GREG _SELF_&r=' + Math.random();
+parms = encodeURI('g_cmd=GREG _SELF_&r=' + Math.random());
new Ajax.Request('../ajax_servcmd',
{
method: 'get',
// Cause FetchNewMsgs() to be called periodically.
-new PeriodicalExecuter(FetchNewMsgs, 3);
+new PeriodicalExecuter(FetchNewMsgs, 10);
</script>