// Automatisches Paging ...
var pages = [];
var minHeight = 400;
var maxHeight = 1000;	// ist nur für automatischen modus interessant!
var pageLinks = $(document.createElement("div")).attr("id","paging-page-links");

var pageNumber = 0;
var docLocation = "";
var contentSplitCount = 0;

function initPaging() {
	var debug = document.location.href.indexOf("debug=1") >= 0;
	docLocation = document.location.href;
	docLocation = docLocation.replace("#top","");
	
	contentSplitCount = 0;
	var contentSplitDIV = "";
	
	
	if($("div.paging_1").length == 1) {
		contentSplitCount = 1;
		contentSplitDIV = "paging_1";
	}
	if($("div.paging_2").length == 1)  {
		contentSplitCount = 2;
		contentSplitDIV = "paging_2";
	}
	if($("div.paging_3").length == 1)  {
		contentSplitCount = 3;
		contentSplitDIV = "paging_3";
	}
	if($("div.paging_4").length == 1)  {
		contentSplitCount = 4;
		contentSplitDIV = "paging_4";
	}	
	if($("div.paging_5").length == 1)  {
		contentSplitCount = 5;
		contentSplitDIV = "paging_5";
	}
	if($("div.paging_6").length == 1)  {
		contentSplitCount = 6;
		contentSplitDIV = "paging_6";
	}
	if(contentSplitCount == 0) return;
	
	buildPages();
	buildMenu();
}

function buildMenu() {
	var $docParts = $("#contentcontainer div.content");
	var $menu = $("div#pagingmenu");
	var numPages = Math.ceil($docParts.length / contentSplitCount);
	//$menu.html(numPages);
	if(numPages <= 1) return;
	var temp = "";
	temp += "<ul>";
	for(var i=0;i<numPages;i++) {
		temp += "<li><a href='"+docLocation+"#top' rel='"+(i)+"'>"+(i+1)+"</a></li>";
	}
	temp += "</ul>";
	
	$menu.append(temp);
	
	
	$("div#pagingmenu a").click(function () {
		$a = $(this);
		pageNumber = parseInt($a.attr("rel"));
		buildPages();
		highLightCurrentPage();
	});
	highLightCurrentPage();
}

function highLightCurrentPage() {
	$("div#pagingmenu a").each(function() {
		$(this).removeClass("active");
	});
	$a = $("div#pagingmenu a[rel="+pageNumber+"]");
	$a.addClass("active");
}

function buildPages() {
	var $docParts = $("#contentcontainer div.content");
	var counter = 0;
	$docParts.each(function() {
		$p = $(this);
		$p.addClass("inv");
		if(counter >= pageNumber*contentSplitCount && counter < pageNumber*contentSplitCount+contentSplitCount) {
			$p.removeClass("inv");
		}
		counter++;
	});
	
}

$(document).ready(initPaging);

function paging() {
	// Container für die Seiten
	if (!jQuery.support.boxModel) {
		return;
	}
	var debug = document.location.href.indexOf("debug=1") >= 0;
	
	var docLocation = document.location.href;
	docLocation = docLocation.replace("#top","");
	
	var docpages = $(document.createElement("div")).attr("id","pages-content");
	
	var currentPageNr = 0;
	
	// initiale Seite...
	var curr = createPage();
	pages.push(curr);
	
	// wenn der Rahmen "Paging Auto" gewählt worden ist ...
	if ($("div#col1_content div.paging-auto").length > 0)
	{
		
		$("div#col1_content div.paging-auto:last").after(docpages);
		docpages.append(curr);
		
		var process = function (item)
		{
			var old = curr.height();
			curr.append(item);
			if (curr.height() > maxHeight && old > minHeight)
			{
				curr = createPage();
				curr.append(item);
				pages.push(curr);
				docpages.append(curr);
			}
		}
		
		$("div#col1_content div.paging-auto").each(function () {
			$(this).children().each(function () {
				if (!$(this).hasClass("spacer")) {
					if ($(this).hasClass("csc-textpic-text") /* || $(this).hasClass("csc-textpic-imagewrap") */)
					{
						$(this).children().each(function () {
							process($(this));
						});
					} else {
						process($(this));
					}
				}
			});
			
			if ($(this).children().length == 0)
			{
				$(this).remove();
			}
		});
		
	} else
	
	// wenn der Rahmen Paging Manuell gewählt worden ist (und kein Paging Auto Element vorhanden ist)
	if ($("div#col1_content div.paging-manual").length > 0)
	{
		var c = 0;
		$("div#col1_content div.paging-manual:last").after(docpages);
		$("div#col1_content div.paging-manual:first").before(docpages);
		$("div#col1_content div.paging-manual").each(function () 
		{
			$(this).addClass("page-invis").attr("id","page_" + c++);
			docpages.append($(this));
		});
	}
	
	// Entferne von der ersten Seite die unsichtbarkeitsmarkierung
	docpages.children(":first").removeClass("page-invis");
	
	// wenn es mehr als 1 Seite gibt:
	if (docpages.children().length > 1)
	{
		var plinks = [];
		for (var i=0;i<docpages.children().length;i++)
		{
			//var link = ' <a href="#page_' + i + '" rel="#page_' + i + '" class="page-links">' + (i + 1) + '</a> ';
			var link = ' <a href="'+docLocation+'#top" rel="#page_' + i + '" class="page-links">' + (i + 1) + '</a> ';
			//var link = $(document.createElement("a")).text(i + 1).attr("href","#page_" + i).addClass("page-links").attr("rel","#page_" + i);
			plinks.push(link);
			//pageLinks.append(link);
			//$("div.pagebrowser span.browselinks").append(link);
			/* $("div.pagebrowser:first").parent().parent().append(link); */
		}
		
		var links = plinks.join("|");
		//alert(links);
		$("div.pagebrowser span.browselinks").append(links);
		$("div.pagebrowserTop").show();
		$("div.pagebrowser").show();

	}
	
	//
	//$("span.pbl a.next").hide();
	//$("span.pbl a.next").attr("rel","#page_1");
	$("span.pbl a.next").attr("href",docLocation+"#top");
	$("span.pbl a.next").addClass("page-links-neu");
	$("span.pbl a.page-links-neu").click(function ()
	{
		//docpages.children().addClass("page-invis");
		//docpages.children(":last").removeClass("page-invis");
		gotoPage(currentPageNr+1);
		//return false;
	});
	
	//
	$("span.pagebrowse_right a.pages").hide();
	// Event Handler für "Blättern"
	$("span.pagebrowse_right a.pages").click(function () 
	{
		docpages.children().addClass("page-invis");
		docpages.children(":first").removeClass("page-invis");
		$("span.pagebrowse_right a.pages").hide();
		$("span.pagebrowse_right a.full").show();
		$("span.browselinks").show();
		$("span.pbl a.next").show();
		return false;
	});
	
	// Event Handler für "Gesamtansicht"
	$("span.pagebrowse_right a.full").click(function () 
	{
		docpages.children().removeClass("page-invis");
		$("span.pagebrowse_right a.full").hide();
		$("span.pagebrowse_right a.pages").show();
		$("span.browselinks").hide();
		$("span.pbl a.next").hide();
		return false;
	});
	
	$("a.page-links").click(function ()
	{
		var rel = $(this).attr("rel");
		var pn = rel.charAt(rel.length-1);
		gotoPage(pn);
		//return false;
	});
	
	function gotoPage(pageNr) {
		// alle ausblenden
		pageNr = parseInt(pageNr);
		docpages.children().addClass("page-invis");
		docpages.children("#page_"+pageNr).removeClass("page-invis");
		currentPageNr = pageNr;
		if(currentPageNr >= docpages.children().length-1) {
			$("span.pbl a.page-links-neu").hide();
		} else {
			$("span.pbl a.page-links-neu").show();
		}
		
		// Link hervorheben
		$("a.page-links").css("font-weight", "normal");
		$("a.page-links[rel='#page_"+pageNr+"']").css("font-weight", "bold");
		
	}
	
	/**
	 *	Bilder vergröîern ...
	 */
	$("div.csc-textpic-imagewrap img[longdesc=POPUP]").each(function () {
		if ($.trim($(this).attr("longdesc"))  == "POPUP")
		{
			var text = $(this).attr("alt"); //parent().next().text();
			$(this).attr("longdesc", text);
			
			$(this).parent().click(function () {
				var url = $(this).attr("href");
				fenster = window.open(url, "fenster1", "width=600,height=400,status=no,scrollbars=yes,resizable=yes"); fenster.focus();
				fenster.focus();
				fenster.document.write('<html><head><title>' + $(this).children("img").attr("alt") + '</title><style type="text/css">@import url(/fileadmin/_templates/mpi_frankfurt/popup.css);</style></head><body><img src="' + url + '" alt="' + text + '" /><div id="caption" style="font-size:0.75em;">' + text + '</div><script type="text/javascript" src="/fileadmin/_templates/mpi_frankfurt/popup.js"></script></body></html>');
				
				return false;
			});
		}
	});
	
	$("#csc-textpic-imagewrap p.imagecaption").click(function () {
		return false;
	});
	
	//$(".csc-textpic .csc-textpic-caption").append('<span style="float:right;"><img src="fileadmin/templates/img/zoom.gif" border="0" /></span>');
	
}

function createPage()
{
	var elem = $(document.createElement("div")).addClass("page").attr("id", "page_" + pages.length).addClass("page-invis");
	return elem;
}
