/**
 * Функция анимация скриншотов
 * 
 * @param {Object} node Узел со скриншотом
 * @param {Boolean} slide True - выезжает, false - заезжает
 */
function screenSlade(node, slide){
	if (!node) {
		return;
	};

	var duration = 1000;
	var width = node.width();
	var startPoint = -width;
	var endPoint = -1;
	var left = node.css('left') && node.css('left') != 'auto' ? parseFloat(node.css('left')) : startPoint;

	// остнавливаем анимацию, т.к. возможен вариант выхода/входа в процессе
	node.stop();

	//показ баннера
	if (slide){
		// показ с самого начала
		if (left <= startPoint || left > endPoint){
			node.css('left', startPoint + 'px');

			if(node.is(':hidden')){
				node.show();
			}
				
			node.animate({'left': '+=' + (endPoint - startPoint) + 'px'}, duration);
		}
		// продолжение в процессе
		else {
			// пропорционально изменяем время
			duration = (duration * (endPoint - left)) / (endPoint - startPoint);
			// продолжаем показ
			node.animate({'left': '+=' + (endPoint - left) + 'px'}, duration);
		}
	}
	else {
		// определяем текущую left координату
		left = parseFloat(node.css('left'));
		// пропорционально изменяем время
		duration = (duration * (left - startPoint)) / (endPoint - startPoint);
		// убираем панель
		node.animate({'left': '-=' + (left - startPoint) + 'px'}, duration, null, function(){
			// жестко определяем координату, так как animate страдает точностью
			$(this).css('left', startPoint);
		});
	}
}


function screenIndexSlade(node, slide){
	if (!node) {
		return;
	};

	var duration = 1000;
	var height = node.height();
	var startPoint = -height;
	var endPoint = -3;
	var top = node.css('top') && node.css('top') != 'auto' ? parseFloat(node.css('top')) : startPoint;

	// остнавливаем анимацию, т.к. возможен вариант выхода/входа в процессе
	node.stop();

	//показ баннера
	if (slide){
		// показ с самого начала
		if (top <= startPoint || top > endPoint){
			node.css('top', startPoint + 'px');

			if(node.is(':hidden')){
				node.show();
			}
				
			node.animate({'top': '+=' + (endPoint - startPoint) + 'px'}, duration);
		}
		// продолжение в процессе
		else {
			// пропорционально изменяем время
			duration = (duration * (endPoint - top)) / (endPoint - startPoint);
			// продолжаем показ
			node.animate({'top': '+=' + (endPoint - top) + 'px'}, duration);
		}
	}
	else {
		// определяем текущую left координату
		top = parseFloat(node.css('top'));
		// пропорционально изменяем время
		duration = (duration * (top - startPoint)) / (endPoint - startPoint);
		// убираем панель
		node.animate({'top': '-=' + (top - startPoint) + 'px'}, duration, null, function(){
			// жестко определяем координату, так как animate страдает точностью
			$(this).css('top', startPoint);
		});
	}
}