

function redyUSSfoto(link, fotoalbum)
{
	fotoalbum = fotoalbum || false;
	//link.click(function(e) {
	link.live('click',function(e) {
		var pHeight = e.pageY;   // высот до окна
		var cHeight = e.clientY; // высота до документа
		var wHeight = $(window).height(); // высота окна
		var dHeight = $(document).height(); // высота документа

		// вычистяем середину окна браузера
		var center = (pHeight - cHeight) + wHeight/2;
		//alert(center);

		// начало и конец
		if (fotoalbum) {
			$("div.uss_img_item:first").addClass('uss_img_item_first');
			$("div.uss_img_item:last").addClass('uss_img_item_last');
		}

		openUSSfoto($(this), center, fotoalbum);
		return false;
	});
}


function openUSSfoto(_this, center, fotoalbum)
{
	var time = 250;

	// точка изображения для фотоальбома
	if (fotoalbum) {
		$('div.uss_img_item').removeAttr('id');
		var parentBox = _this.parent().parent();
		parentBox.attr('id', 'uss_foto_point');
	}

	if (center) {
		// выбираем уравление в зависимости от альбома
		if(fotoalbum) {
			var navigation = '<div id="ufnav_left" class="uss_foto_button">\
													<a href="/" id="uss_foto_button_before" onclick="beforeUSSfoto();return false;" title="Предыдущее изображение">Предыдующее</a>\
													<a href="/" id="uss_foto_button_brightness" onclick="brightnessUSSfoto(0.75);return false;" title="Изменить затемнение фона">Фон</a>\
												</div>\
												<div id="ufnav_right" class="uss_foto_button">\
													<a href="/" id="uss_foto_button_close" onclick="closeUSSfoto();return false;" title="Завершить просмотр">Закрыть</a>\
													<a href="/" id="uss_foto_button_play" onclick="reviewUSSPlay(this);return false;" title="Включить автопросмотр">Автопросмотр</a>\
													<a href="/" id="uss_foto_button_next" onclick="nextUSSfoto();return false;" title="Следующее изображение">Следущее</a>\
												</div>';
		} else {
			var navigation = '<div id="ufnav_right" class="uss_foto_button">\
													<a href="/" id="uss_foto_button_close" onclick="closeUSSfoto();return false;" title="Завершить просмотр">Закрыть</a>\
												</div>';
		}
		$("body").append('<div id="uss_substrate"></div><div id="uss_view_conteiner" style="top: '+center+'px"><div id="uss_inside_view_conteiner"></div>'+navigation+'</div>');

		$('#uss_substrate').css({'display': 'block', 'opacity': 0}).animate({opacity: 0.4}, 2000);
	} else {
		$('#uss_insert_img').css('display', 'none');
		$('#uss_foto_description').css('display', 'none');
		$('#uss_inside_view_conteiner').css('background-position', '50% 50%');
	}

	if (fotoalbum)
	{
		// проверка доступности предыдущей фотографии .is(":first-child")
		if (parentBox.is('.uss_img_item_first')) {
			$('#uss_foto_button_before').css('visibility', 'hidden');
		} else {
			$('#uss_foto_button_before').css('visibility', 'visible');
		}
		// проверка доступности следующей фотографии
		if (parentBox.is('.uss_img_item_last')) {
			$('#uss_foto_button_next').css('visibility', 'hidden');
		} else {
			$('#uss_foto_button_next').css('visibility', 'visible');
		}
	}

	var imgUrl = _this.attr('href');

	// загрузка изображения
	var imgPreloader = new Image();
	imgPreloader.onload = function() {
		imgPreloader.onload = null;

		var imageWidth = imgPreloader.width;
		var imageHeight = imgPreloader.height;

		if (imageWidth>800)
			{			var coef=imageWidth/800;
			imageWidth=800;
			imageHeight=imageHeight/coef;
			}

		if (imageHeight>600)
			{
			var coef=imageHeight/600;
			imageHeight=600;
			imageWidth=imageWidth/coef;
			}


		// расширяем область
		var viewCont = $('#uss_view_conteiner');
		var insideView = $('#uss_inside_view_conteiner');

		insideView.css('background-position', '-100000px 50%');

		// вставка изображения
		var description;
		if (fotoalbum) {
			var parent = _this.parent().parent();
			var descriptionName = parent.find('div.uss_img_name').html();
			var descriptionInfo = parent.find('div.uss_img_description').html();
			}
		else {
			var descriptionName = _this.attr('title');
			}
		
		if (descriptionName) {description = '<p><strong>' + descriptionName + '</strong></p>';} else {description = '';}
 		if (descriptionInfo) {description = description + descriptionInfo;}

		var data = '<img id="uss_insert_img" src="'+imgPreloader.src+'" width="'+imageWidth+'" height="'+imageHeight+'" style="display: none;" alt="" /><div id="uss_foto_description">'+description+'</div>';
		insideView.html(data);

		// горизонталь
		viewCont.animate({marginLeft: '-'+imageWidth/2+'px'}, time);
		insideView.animate({width: imageWidth+'px'}, time);
		// вертикаль
		var adjust=0;
		if (center && (center-imageHeight/2)<0) {adjust=center-imageHeight/2;}
		viewCont.animate({marginTop: '-'+(imageHeight/2+adjust)+'px'}, time);
		insideView.animate({height: imageHeight+'px'}, time, function(){ viewImg(insideView, imageHeight, description); });

	}
	imgPreloader.src = imgUrl; // !объявляется после функции


}

function viewImg(insideView, imageHeight, description) {
	$('#uss_insert_img').css({'display': 'block', 'opacity': 0}).animate({opacity: 1}, 500,
			function(){
				if(description) {
					var dDom = $('#uss_foto_description');
					var dHeight = dDom.height();
					insideView.animate({height: (imageHeight+dHeight+19)+'px'}, 500);
					dDom.slideDown(500);
				}
			}
		);
}


function nextUSSfoto()
{
	var nextNod = $('#uss_foto_point').next();
	var a = nextNod.find('div.uss_img_pre a');
	if (nextNod.is('.uss_img_item')) {
		openUSSfoto(a, false, true);
		return true;
	} else {
		return false;
	}
}

function beforeUSSfoto()
{
	var prevNod = $('#uss_foto_point').prev();
	var a = prevNod.find('div.uss_img_pre a');
	if (prevNod.is('.uss_img_item')) {
		openUSSfoto(a, false, true);
	} else {
		return false;
	}
}

function brightnessUSSfoto()
{
	var substrate = $('#uss_substrate');
	var  num = parseFloat(substrate.css('opacity'));
	var  setNum;
	if(num < 1) {
		setNum = num + 0.2;
	} else {
		setNum = 0;
	}
	substrate.css('opacity', setNum);
}

function reviewUSSPlay(_this) {
	_this = _this || false;
}

function closeUSSfoto() {
	$('#uss_substrate').remove();
	$('#uss_view_conteiner').remove();
}

// управление с клавиатуры
document.onkeydown = navigateKey;
function navigateKey (event)
{
	if (window.event) event = window.event;
	if ($("substrate") && event) { // с доп. клавишей CTRL event.ctrlKey
		switch (event.keyCode ? event.keyCode : event.which ? event.which : null) {
			case 0x1B: //esc
				closeUSSfoto();
				break;
			case 0x25: //лево
				beforeUSSfoto()
				break;
			case 0x27: //право
				nextUSSfoto();
				break;
			/*
			case 0x20: //пробел, плей и стоп
				reviewUSSPlay(1);
				break;
			*/
		}
	}
}
