var popupsliderElementNames = new Array();
var currentPopupsliderElement = 0;
$("#current_popupslider_element").html(0);
$(document).ready(function () {
	$("#popupslider_background").click(
	  function () {
		closePopupslider()
	  }
	);
});

function openPopupslider(element_names) {
	if (element_names.length == 0) {
		return false;
	}
	$('#popupslider_container').css('top', window.pageYOffset);
	popupsliderElementNames = element_names;
	currentPopupsliderElement = 0;
	$("#current_popupslider_element").html(0);
	
	openCurrentPopupslider();
}

function openCurrentPopupslider() {
	var currentPopupsliderElement = parseInt($("#current_popupslider_element").html());
	var element_name = 'popupslider_specific_content['+ popupsliderElementNames[currentPopupsliderElement] +']';
	var element_content = $('div[name="'+ element_name +'"]').html();
	var btns = '';
	var error = false;
	var error_message = 'Leider ist ein Fehler aufgetreten!';
	
	if (popupsliderElementNames.length != 1) {
		btns = 	'<div id="popupslider_last_button" onclick="openLastPopupslider();"></div>'+
				'<div id="popupslider_next_button" onclick="openNextPopupslider();"></div>'
	}

	// content ermitteln -> ajax
	$.ajax({
		type:		"POST",
		url:		"../inc/popupslider_ajax.inc.php",
		dataType: 	'json',
		data: 		{'function':'getPopupsliderContent','idPopupsliderElement':popupsliderElementNames[currentPopupsliderElement]},
		success:	function(data){
			if (data.errormsg != '' && data.errormsg != null) {
				element_content = data.errormsg;
			} else {
				element_content = data.elementContent;
			}
			$('#popupslider_background').css('display', 'block');
			$('#popupslider_container_fixed').css('display', 'block');
			$('#popupslider_content').html(
				btns +
				element_content +
				'<div id="popupslider_close_button" onclick="closePopupslider();"></div>'
			);
			$('#popupslider_container').slideDown('slow', function() {});
		},
		error:		function(){
			$('#output').html('error');
		}
	});
	/*
	$('#popupslider_background').css('display', 'block');
	$('#popupslider_container_fixed').css('display', 'block');
	$('#popupslider_content').html(
		btns +
		element_content +
		'<div id="popupslider_close_button" onclick="closePopupslider();"></div>'
	);
	
	$('#popupslider_container').slideDown('slow', function() {});*/
}

function openLastPopupslider() {
	var currentPopupsliderElement = parseInt($("#current_popupslider_element").html());
	if (currentPopupsliderElement <= 0) {
		currentPopupsliderElement = popupsliderElementNames.length - 1;
	} else {
		currentPopupsliderElement--;
	}
	$("#current_popupslider_element").html(currentPopupsliderElement);
	openCurrentPopupslider();
}

function openNextPopupslider() {
	var currentPopupsliderElement = parseInt($("#current_popupslider_element").html());
	if (currentPopupsliderElement >= (popupsliderElementNames.length - 1)) {
		currentPopupsliderElement = 0;
	} else {
		currentPopupsliderElement++;
	}
	$("#current_popupslider_element").html(currentPopupsliderElement);
	openCurrentPopupslider();
}

function closePopupslider() {
	popupsliderElementNames = new Array();
	currentPopupsliderElement = 0;
	$("#current_popupslider_element").html(0);
	
	$('#popupslider_container').slideUp('slow', function() {
		$('#popupslider_content').html('');
		$('#popupslider_background').css('display', 'none');
		$('#popupslider_container_fixed').css('display', 'none');
	});
}

/*	*	*	*	*	*
*	Zusatzfunktionen
*/

function in_array (valueToSearch, arraySearchIn) {
	$.each(arraySearchIn, function(key, valueArray) {
		if (valueArray == valueToSearch) {
			return true;
		}
	});
	return false;
}

function is_array(input){
	return typeof(input)=='object'&&(input instanceof Array);
}


