/**
* Written by: Lukáš Mešťan
* 2007-2008 
**/ 
function AddSmileChat(sm){
	document.frm.message.value += sm+' ';
	document.frm.message.focus();
}
function AddName(m){
	document.frm.whom.value = m+' ';
	document.frm.message.focus();
}
$(document).ready(
	function() {
		update();
		$("#button").click(
			 function(){
				send_msg();
			}
		);
	$('#message').keyup(function(e) {
		if(e.keyCode == 13) {
			send_msg();
		}
	});
	initSmilies();
	msgDiv = document.getElementById('message');
	msgForm = document.getElementById('messageForm');
	$("form#messageForm").submit(function(){
		onFormSubmit();
		return false;
	});
});
function onFormSubmit() {
	msg = $.trim($("#message").val());
}
var smiliesDir = './templates/smilies/';
var smiliesPref = '';						
var smiliesExt = '.gif';			
var smiliesSum = 22;					
var smiliesAliases = new Object();		
smiliesAliases["v3"] = 9;				
smiliesAliases["v4"] = 10;
smiliesAliases[":))"] = 6;
smiliesAliases[":-)"] = 6;
smiliesAliases[":)"] = 6;
smiliesAliases[":-("] = 5;
smiliesAliases[":("] = 5;
smiliesAliases[";)"] = 4;
function insertSmiley(i) {
	tmpArray = new Array();
	j = 0;
	for(symbol in smiliesAliases) {
		if(smiliesAliases[symbol] == i) tmpArray[j++] = symbol;
	}
	alt = (tmpArray.length > 0 ? tmpArray.join(' nebo '):(':' + i + ':'));
	return '<img src="' + smiliesDir + smiliesPref + i + smiliesExt +'" title="'+ alt + '" alt="'+ alt + '" />';
}
function formatText(text) {
	for(symbol in smiliesAliases) {
		_s = symbol;
		symbol = symbol.replace(/\)/g,'\\)');
		symbol = symbol.replace(/\(/g,'\\(');
		symbol = symbol.replace(/\-/g,'\\-');
		text = text.replace(new RegExp(symbol, 'gim'),  ':' + smiliesAliases[_s] + ':');
	}
	text = text.replace(/:\d+:/g,  function(m) {return replaceSmilies(m)});

	return text;
}
function replaceSmilies(index) {
	index = index.replace(/^\s+|^:+|:+$|\s+/gi, '');
	return insertSmiley(index);
}
function initSmilies() {
	str = '';
	for(i = 0; i < smiliesSum; i++) {
		str += insertSmiley(i);
	}
	$('#smilies').html(str);
	$( '#smilies img').click(function() {
		tmpArray = $(this).attr('title').split(' nebo ');
		insertString($('#message').get(0), tmpArray[0]);
		msgDiv.focus();
	});
}
function insertString(object, stringToInsert) {
 	firstPart = object.value.substring(0, gCursorPos);
 	secondPart = object.value.substring(gCursorPos, object.value.length);
 	object.value = firstPart + stringToInsert + secondPart;
}