jQuery(document).ready(function(){
	timestamp = 0;
	updateSelectBox();
	updateMsg();
	jQuery("form#chatform").submit(function(){
		jQuery.get(jQueryChatPluginUrl,{
					plugin_ID : jQueryChatPluginId,
					method: "backend",
					message: addslashes(jQuery("#msg").val()),
					name: jQuery("#author").val(),
					to: jQuery("#to").val(),
					action: "postmsg",
					time: timestamp
				}, function(xml) {
			//jQuery("#msg").empty();
			document.getElementById('msg').value = '';
			// addMessages(xml);
		});
		return false;
	});
});
function addslashes( str ) {
    // http://kevin.vanzonneveld.net
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Ates Goral (http://magnetiq.com)
    // +   improved by: marrtins
    // +   improved by: Nate
    // +   improved by: Onno Marsman
    // *     example 1: addslashes("kevin's birthday");
    // *     returns 1: 'kevin\'s birthday'
    return (str+'').replace(/([\\"'])/g, "\\$1").replace(/\0/g, "\\0");
}
function addMessages(xml) {
	if(jQuery("status",xml).text() == "2") { return; }
	timestamp = jQuery("time",xml).text();
	me = jQuery("me",xml).text();
	// i=0;
	jQuery("message",xml).each(function(id) {
		//i++;

		message = jQuery("message",xml).get(id);
		if(jQuery("text", message).text().slice(0, 4)=='/me '){
			jQuery("text", message).text(jQuery("text", message).text().replace(/\/me/, ''));
			preTag='<b class="me">*';endTag="</b>"
		}
		else if(jQuery("userid",message).text()!='0'){
			preTag='<b class="user">';endTag="</b>: ";
		}
		else{
			preTag='<b>';endTag="</b>: ";
		};
		// if(jQuery("recipient",message).text()!="Room"){recipient=" > "+jQuery("recipient",message).text();preTag='<b class="to">';endTag="</b>: ";};
		if(jQuery("recipient",message).text()!="Room"){
			if(jQuery("recipient",message).text()==me){
				preTag='<b class="priv_from">< ';
				jQuery("#messagewindow").prepend(preTag+jQuery("author",message).text()+endTag+jQuery("text",message).text()+"<br />");
			}
			else if(jQuery("author",message).text()==me&&jQuery("recipient",message).text()!="Room"){
				preTag='<b class="priv_to">> ';
				jQuery("#messagewindow").prepend(preTag+jQuery("recipient",message).text()+endTag+jQuery("text",message).text()+"<br />");
			}
		}
		else {
			jQuery("#messagewindow").prepend(preTag+jQuery("author",message).text()+endTag+jQuery("text",message).text()+"<br />");
		}
		//if(i>10){return false};
	});
}
function addNames(xml) {
	selected = jQuery("#to").selectedValues();
	jQuery(xml).find("user").each(function(number) {
		jQuery("#to").addOption(jQuery(this).find("name").text(), jQuery(this).find("name").text());
	});
	jQuery("#to").selectOptions(selected[0]);
}
function updateSelectBox() {
	jQuery.get(jQueryChatPluginUrl, {
				plugin_ID: jQueryChatPluginId,
				method: "members"
			}, function(xml) {
		addNames(xml);
	});
	setTimeout('updateSelectBox()', 10000);
}
function updateMsg() {
	jQuery.get(jQueryChatPluginUrl,{ 
					plugin_ID: jQueryChatPluginId,
					method: "backend",
					time: timestamp
				}, function(xml) {
		jQuery("#loading").html('Loading...');
		jQuery("#loading").remove();
		addMessages(xml);
	});
	setTimeout('updateMsg()', 12000);
}
