$(document).ready(function()
{
	if(!$('#chat').length)
	{
		return false;
	}
	var myName = $('span.myName').attr('title');
	var myNick = $('img#profilePhotoMin').attr('alt');
	var lastMessage = 0;
	var scrollDown = true;

	getMessages();
	imOnline();

	intervalGetMessages = setInterval(getMessages, 2000);
	intervalImOnline = setInterval(imOnline, 10000);

	var cookiesOptions =
	{
    	domain: '',
    	path: '/',
    	secure: false
  	}

	//Nacte zpravy do #chatWindow ze souboru
	function getMessages()
	{
			$.ajax(
			{
				type: 'POST',
				url: '/messages.php',
				data: 'lastId='+lastMessage,

				success: function(data)
				{
					$('#chatWindow').append(data);
					lastMessage = $('#chatWindow p:last').attr('id');
					myPost();
					aboutMe();

					$('#chatWindow').scroll(function()
					{
						if ($('#chatWindow').scrollTop() == ($('#chatWindow')[0].scrollHeight - 220)) // 220 zavisi na vysce chatWindow
							scrollDown = true;
						else
							scrollDown = false;
					});
					if(scrollDown == true)
						$('#chatWindow').scrollTop($('#chatWindow')[0].scrollHeight);
				}
			});
	}

	// Odesle zaznam do tabulky online
	function imOnline()
	{
		$.ajax({
			type: 'POST',
			url: '/messages.php',
			data: 'myName=' + myName +'&online=true',
		});
	}

	//Submit funkce [zamezeni refreshe + ajax]
	$('#chatForm input[type="submit"]').submit(function()
	{
		if ($('#chatForm textarea[name="message"]').val() != '')
		{
			var message = $('#chatForm textarea[name="message"]').val();

			$.ajax({
				type: 'POST',
				url: '/messages.php',
				data: 'message=' + message +'&myName='+myName,
				success: function()
				{
					getMessages();
					$('#chatForm textarea[name="message"]').val('');
					lastMessage++;
				}
			});
		}
		return false;
	});

	//Zavolani submitu pri stisknuti klavesy enter
	$('#chatForm textarea[name="message"]').keypress(function(e)
	{
    	//if( ($('input[name="enter"]').is(':checked') ) && (e.keyCode == 13) )           - zde muzu mit osetrene na checkbox
		if(e.keyCode == 13)
			$('#chatForm input[type="submit"]').submit();
    });

	//Zavolani submitu pri kliknuti mysi na submit
	$('#chatForm input[type="submit"]').click(function()
	{
		$('#chatForm input[type="submit"]').submit();
	});

	//Case INsensitive pro contains
	jQuery.expr[':'].Contains = function(a, i, m)
	{
		return jQuery(a).text().toUpperCase()
		.indexOf(m[3].toUpperCase()) >= 0;
	};
	jQuery.expr[':'].contains = function(a, i, m) {
		return jQuery(a).text().toUpperCase()
		.indexOf(m[3].toUpperCase()) >= 0;
	};

	//zvyrazneni mych zprav
	function myPost()
	{
		$('p.'+myNick).addClass('myPost');
	}
	//zvyrazneni zprav ktere obsahuji me jmeno
	function aboutMe()
	{
		$('span.message:contains("'+ myNick +'")').parent().addClass('aboutMe');
	}

	//minimalize - pozastaveni intervalu..
	$('#chatNavig').click(function()
	{
		$('#chat').toggleClass('minimized');
		if ($('#chat').hasClass('minimized'))
		{
			clearInterval(intervalGetMessages);
			clearInterval(intervalImOnline);
			$.cookies.set('chatOpened', 'false', cookiesOptions)
		}
		else
		{
			getMessages();
			imOnline();
			intervalGetMessages = setInterval(getMessages, 2000);
			intervalImOnline = setInterval(imOnline, 60000);
			$.cookies.set('chatOpened', 'true', cookiesOptions)
		}
	});
	$('#chatClose').click(function()
	{
		clearInterval(intervalGetMessages);
		clearInterval(intervalImOnline);
		$.cookies.set('zobrazChat', '0', cookiesOptions);
		$('#chat').css('display', 'none')
	});

	var cookiesOpened = $.cookies.get('chatOpened');
	if( cookiesOpened == false )
	{
		$('#chat').addClass('minimized');
		clearInterval(intervalGetMessages);
		clearInterval(intervalImOnline);
	}

	function getOnline()
	{
		$.ajax(
		{
			type: 'POST',
			url: '/messages.php',
			data: 'lol='+'dasd',

			success: function(data)
			{
				$('p.online span').html(data);
			}
		});
	}
	getOnline();
});

