// Define Global Vars
var sessionCookie
//var prefetch = [];
var size = Cookie.read("size");
var imageName = '';
var imageSizes  = [];
var resizeTimer = '';
var next =  '';
var prev = ''

/*
if (top.location.href != self.location.href) {
    top.location.href = self.location.href;
}
*/

function onloadfunktionen()
{
	bodyResize();
	initImage();
}

// EINBLENDEN DES DIVS UND DES BILDES
/* */
document.write("<style type='text/css'>.hideimage {visibility:hidden;}</style>");

function initImage() 
{
		imageId = 'image';
		obj = document.getElementById(imageId);
		setOpacity(imageId, 0);
		obj.style.visibility = "visible";
		fadeIn(imageId);
		
}
delay = 15;
function fadeIn(objId) 
{
	opacity = 1;
	if (document.getElementById) 
	{
		while (opacity <= 100) 
		{
			window.setTimeout("setOpacity('"+objId+"',"+opacity+")", delay);
			opacity += 1;
			delay += 10; // set image fade delay
		}
	}
}

function setOpacity(objId, opacity) 
{
	if (document.getElementById) 
	{
		obj = document.getElementById(objId);
		opacity = (opacity == 100)?99.999:opacity;
		// IE/Win
		obj.style.filter = "alpha(opacity:"+opacity+")";
		// Safari<1.2, Konqueror
		obj.style.KHTMLOpacity = opacity/100;
		// Older Mozilla and Firefox
		obj.style.MozOpacity = opacity/100;
		// Safari 1.2, newer Firefox and Mozilla, CSS3
		obj.style.opacity = opacity/100;
	}
}

// COOKIE Pruefen
if(size == null || size.toInt() < 0){
	var size = 'auto';
}else{
	var size = size.toInt();
}
	
// BIld  richtige Groesse laden
// oder auf Cookie ermitteln
function chooseSize () {
	if(size != 'auto'){
		return size;
	}
	var windowSize = window.getSize();
	if(windowSize.x <= 1260 || windowSize.y < 768){
		return 0; // 0 = small
	}else if(windowSize.x > 1260 && windowSize.y >= 768){
		return 1; // 1 = X-Large
	}
}

function bodyResize() {
if (document.documentElement.clientWidth > 1260 || document.documentElement.clientHeight > 768 ) {
document.getElementById('wrapper').style.width = "1222px";
document.getElementById('exif').style.visibility = "hidden";
//Cookie.write('auto_size', '1', {domain: '.sayami.de', path: '/'});
}
if (document.documentElement.clientWidth <= 1260 || document.documentElement.clientHeight <= 768) {
document.getElementById('wrapper').style.width = "822px";
document.getElementById('exif').style.visibility = "visible";
//Cookie.write('auto_size', '0', {domain: '.sayami.de', path: '/'});
}
}


// Umwandeln des Bildnamen aus der aktuellen ermittelten Browsergroesse 
function sizeName(imgsize){
	var size_name
	switch (imgsize) 
	{ 
	   case 1 : 
	   if (imageName.substr(0,9) == "fullsize_" )
	   {
	   size_name = imageName;
	   }
	   else
	   {
	   size_name = "fullsize_"+imageName;
	   }
	   break; 
	   default : // 0
	   if (imageName.substr(0,18) != "fullsize_" )
	   {
	    size_name = imageName;
	   }
	   else
	   {
	    size_name = imageName.substr(9,120);
	   }	   
	     
	}
	return size_name;
}

function loadImage(animate, manual){
	// Zum Laden auf kleinen Geraeten
	if(Browser.Platform.ipod == true && manual === false){
		return false;
	}
	if(manual !== false){
		var detectSize = manual.toInt();
		size = detectSize;
		Cookie.write('size', size, {domain: '.sayami.de', path: '/'});
	}else if(size != 'auto'){
		var detectSize = size;
	}else{
		var detectSize = chooseSize();
		Cookie.write('auto_size', detectSize, {domain: '.sayami.de', path: '/'});
	}
	if(imageSizes[detectSize] == '0x0'){

		while(detectSize !== 0 && imageSizes[detectSize] == '0x0'){
			detectSize = detectSize-1;
		}
 	}
	
	var imgSize = imageSizes[detectSize].split('x');
	var name = sizeName(detectSize);
	imgSize[0] = imgSize[0].toInt();
	imgSize[1] = imgSize[1].toInt();

	var ratio = imgSize[0]/imgSize[1];
	if(imgSize[0] < 580){
		var pagewidth = 580;
	}else{
		var pagewidth = imgSize[0];
	}
	if(imgSize[0] == 0 || imgSize[1] == 0){
		return false;
	}
	if($('photo').getStyle('width').toInt() == (imgSize[0])){
		// Keine Aenderung
		return false;
	}else if(animate == false){
		// Ohne Animation:
		$('wrapper').setStyle('width' + 1,(pagewidth));
		}else{
		// Mit Wnimation:
		$('wrapper').tween('width' + 1, (pagewidth));
	}
	var img = $('image');
	if(animate == false){
		// Ohne Animation:
		img.setProperty('width',imgSize[0]);
		img.setProperty('height',imgSize[1]);
		
		if(ratio <= 1){
			$('photo').setStyle('width',(imgSize[0])+22);
			$('photo').setStyle('height',(imgSize[1])+22);
		}
		
	}else{
		// Mit Animation:
		img.morph({width: imgSize[0], height: imgSize[1]});
		
		if(ratio <= 1){
			$('photo').morph({width: (imgSize[0]), height: (imgSize[1])});
		}
	}
	var tempname = name.substr(0,9) + imageName.substr(0,120);
	tempname = tempname.replace("fullsize_fullsize_", "fullsize_");
	img.setProperty('src','/images/' + name);
	
	
	if(ratio > 1){
		var orientation = 'small';
	}else if(ratio < 1){
		var orientation = 'vertical';
	}else{
		var orientation = 'square';
	}
	
	if(!about){
		$('wrapper').setProperty('class',name+''+orientation);
	}else{
		$('wrapper').setProperty('class',name+''+orientation+' about');
	}
	return true;
}

window.addEvent('domready', function() {
	about	=	$('wrapper').hasClass('about');
if(!about){
	next = $('next');
	prev = $('prev');
	loadImage(false,false);
}
});

window.addEvent('resize',function(){
	resizeTimer = $clear(resizeTimer);
	resizeTimer = (function(){ loadImage(true,false); }).delay(60);
});

// EINBLENDEN DES KOMMENTARS
window.addEvent('domready', function() {
     $('details').set('tween',{
        onComplete:function(){
            if ($('details').getStyle('opacity') == 0) {
                $('details').setStyle('display','none');
            }
        },
        onStart: function() {
            if ($('details').getStyle('opacity') == 0) {
                $('details').setStyle('display','block');
            }
        }
    }).setStyle('opacity',0);
    $('toggler').addEvent('click', function(){
        $('details').fade('toggle');
    });
    $('toggler2').addEvent('click', function(){
        $('details').fade('toggle');
    });

// EINBLENDEN DER TAGS
     $('showtags').set('tween',{
        onComplete:function(){
            if ($('showtags').getStyle('opacity') == 0) {
                $('showtags').setStyle('display','none');
            }
        },
        onStart: function() {
            if ($('showtags').getStyle('opacity') == 0) {
                $('showtags').setStyle('display','block');
            }
        }
    }).setStyle('opacity',0);
    $('tagger').addEvent('click', function(){
        $('showtags').fade('toggle');
    });
    $('tagger2').addEvent('click', function(){
        $('showtags').fade('toggle');
    });
});

