/**
 * This project is created by
 * PILLAX (http://www.pillax.com)
 */
$(function(){

	////////////////////////////////////////////////////////////
	// Loading all comments
	$(".commentsLite").each(function(){

		var id			= $(this).attr('id');
		var tmp			= id.split('_');
		var objGroup	= tmp[1];
		var objId		= tmp[2];

		loadAll(objGroup, objId, 1);
	});

	////////////////////////////////////////////////////////////
	// Comments paginator
	$('div.commentsLitePaginator a').live('click', function(){

		var pointer				= $(this).parent().parent();
		var currentPage			= $('input.commentsLiteCurrentPage', pointer).val();
		var objGroup			= $('input.commentsLiteObjGroup', pointer).val();
		var objId				= $('input.commentsLiteObjId', pointer).val();
		var page				= $(this).attr('rel');

		$('div.commentsLiteLoaderAnimation', pointer).css('display', 'block');
		loadAll(objGroup, objId, page);
		//alert(page);

		return false;
	})

	////////////////////////////////////////////////////////////
	// delete comment
	$('div.commentsLiteContainer a.delete').live('click', function(){
		var id			= $(this).attr('rel');
		var pointer		= $(this).parent().parent().parent();
		var objGroup	= $('input.commentsLiteObjGroup', pointer).val();
		var objId		= $('input.commentsLiteObjId', pointer).val();

		$('div#myContainer').html('Да изтривам ли?');

		$('div#myContainer').dialog({
			resizable: false,
			modal: true,
			title: 'Изтриване на коментар',
			buttons:
			[
				{
					text: 'Изтрий',
					click: function()
						  {
							$.post(
								'modules/commentsLite/ajax_delete.php',
								{id:id}, 
								function(data){
									$('div#row_' + id).html('Коментарът е изтрит успешно').css('background-color', '#F0FFF0');
									$('div#row_' + id).animate({ 
										opacity: "0"
										}, 
										3000,
										'linear',
										function(){
											// $('div#row_' + id).css('display','none');
											loadAll(objGroup, objId, 1);
										}
									);
								}
							);

							$(this).dialog('close');
						  }
				},
				{
					text: 'Откажи',
					click: function()
						  {
							$(this).dialog('close');
						  }
				}
			]
		});

		$('div#myContainer').dialog('open');

		return false;
	})


	////////////////////////////////////////////////////////////
	// Activate textarea
	$('div.commentsLiteContainer div.commentsLiteAdd div.normal textarea').live('focusin',function(){
		var pointer = $(this).parent().parent(); 

		$('div.normal', pointer).css('display', 'none');
		$('table.active', pointer).css('display', 'table');
		$('table.active textarea.body', pointer).focus();
	})

	$('div.commentsLiteContainer div.commentsLiteAdd table.active textarea.body').live('focusout',function(){
		var pointer = $(this).parent().parent().parent().parent().parent(); 
		var content = $(this).val();

		if(content == '')
		{
			$('div.normal', pointer).css('display', 'block');
			$('table.active', pointer).css('display', 'none');
		}
	})

	////////////////////////////////////////////////////////////
	// Add comment
	$('div.commentsLiteContainer div.commentsLiteAdd .commentsLiteAddSubmit').live('click',function(){
		var pointer		= $(this).parent().parent().parent().parent().parent().parent().parent().parent(); 
		var tmp			= $(pointer).attr('id').split('_');
		var objGroup	= tmp[1];
		var objId		= tmp[2];
		var content		= $('textarea.body', pointer).val();
		var htmlObjId	= '#commentsLite_' + objGroup + '_' + objId;
		var is_link		= parseInt($('input.is_link', pointer).val());
		var link_title	= '';
		var link_descr	= '';
		var link_tmb	= '';
		var link_url	= '';

		// Get link data if set
		if(is_link == 1)
		{
			var link_title	= $('div.chooseImgInfo h6', pointer).text();
			var link_descr	= $('div.chooseImgInfo p', pointer).text();
			var link_tmb	= $('div.chooseImgBox #img_' + parseInt($('span.chooseImgCurr', pointer).text()), pointer).attr('src');
			var link_url	= $('input.link_url', pointer).val();
		}

		// disable button and textarea
		$(this).attr('disabled', 'disabled');
		$('textarea.body', pointer).attr('disabled', 'disabled');

		$.post(
			'modules/commentsLite/ajax_add.php',
			{
				objGroup:objGroup, 
				objId:objId, 
				content:content, 
				is_link:is_link, 
				link_title:link_title, 
				link_descr:link_descr, 
				link_tmb:link_tmb, 
				link_url:link_url
			}, 
			function(data){
				if(data != '[]')
				{
					jquiCaptcha(data);
					$('div#myContainer').dialog({
						beforeclose: function(event, ui) 
									 {
										loadAll(objGroup, objId, 1); 
									 }
					});
				}
				else
				{
					loadAll(objGroup, objId, 1);
				}
			}
		);

		$('div.commentsLiteAdd textarea.body').live('keyup', findUrl);

		return false;
	})

	////////////////////////////////////////////////////////////
	// Looking for url
	$('div.commentsLiteAdd textarea.body').live('keyup', findUrl);


	////////////////////////////////////////////////////////////
	// Img controls
	$('div.chooseImgControl a').live('click',function(){

		var pointer		= $(this).parent().parent();
		var current		= parseInt($('span.chooseImgCurr', pointer).text());
		var total		= parseInt($('span.total', pointer).text());
		var imgActive	= ($(this).hasClass('chooseImgBoxLeft')) ? (current-1) : (current+1);

		if(imgActive > 0 && imgActive <= total)
		{
			$('div.chooseImgControl a', pointer).removeClass('disabled');
			$('div.chooseImgBox img', pointer).css('display', 'none');
			$('div.chooseImgBox #img_' + imgActive, pointer).css('display', 'block');
			$('span.chooseImgCurr', pointer).text(imgActive);
		}

		if((imgActive == 1 && $(this).hasClass('chooseImgBoxLeft')) || (imgActive == total && $(this).hasClass('chooseImgBoxRight')))
		{
			$(this).addClass('disabled');
		}

		$(this).blur();

		return false;
	})


	////////////////////////////////////////////////////////////
	// Close img box
	$('div.chooseImg a.chooseImgClose').live('click', function(){
		$(this).parent().css('display', 'none');
		$('input.is_link', $(this).parent()).val(0);
		return false;
	})

})

function loadAll(objGroup, objId, page)
{
	var htmlObjId = '#commentsLite_' + objGroup + '_' + objId;

	$.post(
		'modules/commentsLite/ajax_loadAll.php',
		{objGroup:objGroup, objId:objId, page:page}, 
		function(data){
			$(htmlObjId).html(data);
			$('div#' + htmlObjId + ' div.commentsLiteLoaderAnimation').css('display', 'none');
		}
	);
}


var findUrl = function()
{
	var text	= $(this).val();
	var url		= /((https?:\/\/|www.)[^\s]+)\s/i.exec(text) ? RegExp.$1 : '';

	if(url != '')
	{
		var pointer = $(this).parent();
		$('div.chooseImg', pointer).css('display', 'block');
		$('div.chooseImg input.is_link', pointer).val(1);

		$.post(
			'modules/wwwGrab/wwwGrab.php',
			{url:url}, 
			function(data){

				$('img.chooseImgLoader', pointer).css('display', 'none');
				$('div.chooseImgInfo h6', pointer).html(data.title);
				$('div.chooseImgInfo p', pointer).html(data.descr);
				$('div.chooseImg input.link_url', pointer).val(data.url);

				if(data.imagesCount > 0)
				{
					var imgStr = '';

					var i = 1;
					for(v in data.images)
					{
						imgStr += '<img src="' + (data.images[v]['src']) + '" alt="' + v + '" id="img_' + i + '" /> ';
						i++;
					}

					$('div.chooseImgInfo div.chooseImgBox', pointer).html(imgStr);
					$('#img_1', pointer).css('display', 'block');
				}

				if(data.imagesCount > 1)
				{
					$('div.chooseImgInfo div.chooseImgControl', pointer).css('display', 'block');
					$('div.chooseImgInfo div.chooseImgControl a.chooseImgBoxLeft', pointer).addClass('disabled');
				}

				$('span.chooseImgCurr', pointer).text(1);
				$('span.total', pointer).text(data.imagesCount);

			},
			'json'
		);

		$('div.commentsLiteAdd textarea.body').die('keyup');
	}
}
