var currentSlide=1;
var newsPage=1;
var lastPage=2;
var currentPage=1;
var nextPage=2;
var prevPage=0;
var pagekey=false;
var prevDate='';

function objDump (obj, except) {
	return _objDump (obj, [obj], 0);
}

function inArray (arr, elt){
	for (var i = 0; i < arr.length; i++)
	if (elt == arr[i]) return i;
	return false;
}
function _objDump (obj, used, level) {
	var rez = '';
	var spaces = "";
	for (var i = 0; i < level; i++)
	spaces += " ";
	rez += spaces+('---Dumping object: ' + obj.toString () + "n");
	for (var i in obj) {
		if (used && inArray(used ,obj[i]) !== false) {
			rez += spaces+"->"+"!Self Reference"+"n";
			continue;
		}
		rez += (spaces+"->" + i + ': ');
		if ( (typeof obj[i]) == "object"){
			try{
				rez += _objDump (obj[i], used.slice(0).push(obj[i]), 1 +level) +"n";
			}catch (eee) {rez += spaces+"->"+"!Error"+"n";}
		}
		else
		rez +=(spaces+"->"+obj[i] + "n");
	}
	return rez;
}

function appendTestElement()
{
	var targetDiv = document.getElementById('intop');
	newdiv=document.createElement('div');
	newdiv.innerHTML='PREVED vvp';
	targetDiv.appendChild(newdiv);

}
function mycarousel_itemLoadCallback(carousel, state)
{
	// Check if the requested items already exist
	if (carousel.has(carousel.first, carousel.last)) {
		return;
	}

	jQuery.get(
	'/execplugin/?plg=news&plugFunc=getLentaNews',
	{
		start: carousel.first,
		end: carousel.last
	},
	function(xml) {
		mycarousel_itemAddCallback(carousel, carousel.first, carousel.last, xml);
	},
	'xml'
	);
};

function mycarousel_itemAddCallback(carousel, first, last, xml)
{
	// Set the size of the carousel
	carousel.size(parseInt(jQuery('total', xml).text()));

	jQuery('text', xml).each(function(i) {
		carousel.add(first + i, mycarousel_getItemHTML(jQuery(this).text()));
	});
};

function mycarousel_getItemHTML(url)
{
	var  urlSplit = url.split('|');
	return '<dd>'+url+'</dd>';
};

function preved(currSlideElement, nextSlideElement, options, forwardFlag,iter)
{

	if (nextSlideElement['id']!='first'+iter) {$('#lft_ar_act'+iter).show(); $('#lft_ar_unact'+iter).hide()}
	else {$('#lft_ar_act'+iter).hide(); $('#lft_ar_unact'+iter).show()}
	if(nextSlideElement['id']=='last'+iter) {$('#rght_ar_unact'+iter).show(); $('#rght_ar_act'+iter).hide()}
	else {$('#rght_ar_unact'+iter).hide(); $('#rght_ar_act'+iter).show()

	}

	if (iter!='' && document.getElementById('navicons'+iter))
	{

		$('#navicons'+iter+' > li.active').attr('className','');
		switch (nextSlideElement['id'])
		{
			case 'first'+iter:  $('#i1_'+iter).attr('className','active'); break;
			case 'middle'+iter: $('#i2_'+iter).attr('className','active'); break;
			case 'last'+iter: $('#i3_'+iter).attr('className','active'); break;
			default: break;
		}
	}

}

function goToSlide(maxSlide)
{
	alert('Preved');
	if (currentSlide>maxSlide)
	{
		currentSlide=0;
		$('#goto').click();
		currentSlide++;
	}
}
function setActiveIcon(element,iter)
{
	$('#navicons'+iter+' > li.active').attr('className','');
	element.parent().attr('className','active');

}


function getNextBlock(curr, next, opts)
{
	if (newsPage<=lastPage)
	{
		newsPage++;
		$.ajax(
		{
			type: "GET",
			url: "/execplugin/?plg=news&plugFunc=getIndexNews&loadPart="+newsPage,
			dataType:"json",
			success: function(msg)
			{
				//alert(msg.lastpage);
				lastPage=msg.lastpage;
				var ul=document.createElement('ul');
				if (newsPage==lastPage)
				{
					ul.id='last2';
				}
				//var newsDiv = document.getElementById('news');

				ul.innerHTML=msg.result;
				opts.addSlide(ul);

			}
		} )
	}
}

function viewNews()
{
	$newsId = Request('item','get',1);
}
function getNews(page)
{
	//$("#jTplOutput").attr('innerHTML','<center><img src=/i/preloader.gif></center>');

	currentPage=page;
	document.location.hash='page'+page;
	prevPage=currentPage-1;
	nextPage=currentPage+1;
	$.ajax(
	{
		type: "GET",
		url: "/execplugin/?plg=news&nosmarty=1&p="+page,
		dataType:"json",
		success: function(msg)
		{

			if (msg)
			{
				$("#jTplOutput").setTemplateElement("jtplnews");
				$("#jTplOutput").processTemplate(msg);


			}

		}
	}
	);
}


function getEvents(page)
{
	//$("#jTplOutput").attr('innerHTML','<center><img src=/i/preloader.gif></center>');

	currentPage=page;
	document.location.hash='page'+page;
	prevPage=currentPage-1;
	nextPage=currentPage+1;
	$.ajax(
	{
		type: "GET",
		url: "/execplugin/?plg=afisha&nosmarty=1&p="+page,
		dataType:"json",
		success: function(msg)
		{

			if (msg)
			{
				$("#jTplOutput").setTemplateElement("jtplevents");
				$("#jTplOutput").processTemplate(msg);

			}

		}
	}
	);
}

function changeHash(hassh)
{
	document.location.hash=hassh
}

function turnPageKey(getBlockFunc)
{
	hashPage = parseInt(document.location.hash.replace('#page',''));
	if (hashPage>0)
	{
		if (currentPage!=hashPage)
		{
			getNews(hashPage);
		}
	}
	$(document).bind('keypress',function(e)
	{
		pagekey=false;
		keyCode = e.which;
		if (keyCode>48)
		{
			if (keyCode<58)
			{
				pagekey = keyCode-48;
				window[getBlockFunc](pagekey);
			}

		}

		//alert(pagekey)
		if (!pagekey)
		{
			switch(e.keyCode)
			{
				case 0x25: if (prevPage>0) window[getBlockFunc](prevPage); break;
				case 0x27:  window[getBlockFunc](nextPage); break;
			}
		}
		return pagekey;
	}
	)
}

function enableLightbox(boxid)
{
	$('a.lightbox-enabled'+boxid).lightBox({
		txtImage: 'Фото',
		txtOf: 'из'}
		)
}

function changeNote(isNext, zeroBasedSlideIndex, slideElement) {
	$('#intop_bg').hide();
	$('#pictitle').attr('innerHTML',slideElement.name);
	$('#pictitle').attr('href','/structure/view.'+$('#theview').val()+'.html#place'+slideElement.alt);
};


var hidden=1;
function animateSlider()
{
	if (hidden==0)
	{
		$("#fix").animate({left: -560}, 500);
		hidden=1;
	}
	else
	{
		$("#fix").animate({left: 0}, 500);
		hidden=0;
	}
}
var no_captcha=false;
$(document).ready(function(){
	$(".type_selector").change(function(){
		window.location="/reviews/place."+$("#place").val()+".type."+$(this).val()+".html";
	});

	$("#resp").submit(function(){
		$("#resp input,#resp textarea").removeClass("invalid");
		if($("#review_type").val()!=0)
		{
		if($("#author").val().length>0)
		{
			var pattern=/^([\w-\.]+@[\w-\.]+\.(ru|net|com|info|tv))?$/i
			if(pattern.test($("#email").val()))
			{

				if($("#phone").val().length>5)
				{
					if($("#text").val().length>5)
					{
						if($("#captcha").val().length>0)
						{
							return true;
						}
						else
						{
							$("#captcha").addClass("invalid").focus();
							return false;
						}

					}
					else
					{
						$("#text").addClass("invalid").focus();
						return false;
					}
				}
				else
				{
					$("#phone").addClass("invalid").focus();
					return false;
				}
			}

				else
				{
					$("#email").addClass("invalid").focus();
					return false;
				}
			}
			else
			{
				$("#author").addClass("invalid").focus();
				return false;
			}
		}
		else
		{
			$("#review_type").addClass("invalid").focus();
		}
		
			return false;
		});
	});


	function getPhotoEvents(date)
	{
		if (date!=prevDate)
		{
			prevDate=date;
			eventSelector = document.getElementById('eventName');
			eventSelector.innerHTML='<option value=0>Выбрать</option>';
			$.ajax(
			{
				type: "GET",
				url: "/execplugin/?plg=photo&plugFunc=getAfishaByDate&date="+date,
				dataType:"json",
				success: function(msg)
				{
					eventSelector.disabled=false;
					for (i=0; i<msg.rows.length; i++)
					{
						hoption = document.createElement('option');
						hoption.innerHTML=msg.rows[i].c_title;
						hoption.value=msg.rows[i].id;
						eventSelector.appendChild(hoption);
					}
				}
			}
			)
		}
	}

	function sendGuestAply()
	{
		if ($('#c_fio').val().length>1 && $('#c_phone').val().length>1)
		{
			$('#errp').attr('innerHTML','');
			document.getElementById('regForm').submit()
		}
		else
		{
			$('#errp').attr('innerHTML','Не заполнены обязательные поля');
		}
	}

