// JavaScript Document

window.onload = init;

function init () 
{
	if (document.getElementById('tx-srfeuserregister-pi1-tx_akagb_agb_accepted') != null)
	{
		document.getElementById('tx-srfeuserregister-pi1-tx_akagb_agb_accepted').addEventListener('click', setEnableSubmit, false);
		document.getElementById('bt_register').style.opacity = 0.4;
		document.getElementById('bt_register').disabled = true;
		document.getElementById('tx-srfeuserregister-pi1-tx_akagb_agb_accepted').checked = false;
	} else if (document.getElementById('tx_akagb_agb_accepted') != null) {
		document.getElementById('tx_akagb_agb_accepted').addEventListener('click', setEnableSubmit, false);
		document.getElementById('bt_agb').style.opacity = 0.4;
		document.getElementById('bt_agb').disabled = true;
		document.getElementById('tx_akagb_agb_accepted').checked = false;
	}
}

function showNaviBox() { $('navi_box').morph({ top: '-50px' }, { duration: 0.5 }); }
function closeNaviBox() { $('navi_box').morph({ top: '-585px' }, { duration: 0.4 }); }

var image = "";

function setRollOver(Img)
{
	image = Img.src;
	var filename = Img.src.split(".");
	var imgSrc = '';
	
	for (var i = 0; i < filename.length-1; i++) imgSrc += ( i != 0 ? "." : "" ) +filename[i];
	Img.src = imgSrc+"_rollover."+filename[filename.length-1];	
	
	if ( document.getElementById('bt_register').style.opacity <= 0.5 ) 
	{
		new Effect.Opacity('bt_register', { to: 1.0, duration: 0.5 });
		document.getElementById('bt_register').disabled = false;
	} else if ( document.getElementById('bt_agb').style.opacity <= 0.5 ) {
		new Effect.Opacity('bt_agb', { to: 1.0, duration: 0.5 });
		document.getElementById('bt_agb').disabled = false;
	}
}

function setRollOut(Img) { Img.src = image; }

function setEnableSubmit(evt)
{
	var bid = 'bt_register';
	if (evt.target.id == 'tx_akagb_agb_accepted') bid = 'bt_agb';
	
	if (evt.target.checked == true)
	{
		new Effect.Opacity(bid, { to: 1.0, duration: 0.5 });
		document.getElementById(bid).disabled = false;
	} else {
		new Effect.Opacity(bid, { to: 0.4, duration: 0.5 });
		document.getElementById(bid).disabled = true;
	}	
}


/*function hello_world(obj) { 
    var r = random_int(0, 255), b = random_int(0, 255), g = random_int(0, 255); 
    var color = r+', '+g+', '+b;
    obj.setStyle('color', 'rgb('+color+')'); 
} */

function loadMoreFbPhotos(aid, page)
{
	var divMore = document.getElementById('gallery_more');
	divMore.className = "loader";
	
	page = (page == null ? 1 : page);
	var limit = 25;
	var offset = limit * page;
	var nextPage = page + 1;
	
	var moreLink = document.getElementById('gallery-more-link');
	moreLink.setAttribute('href', 'javascript:loadMoreFbPhotos(' + aid + ', ' + nextPage + ')');
	
	var fileadmin = 'fileadmin/templates/';
	
	new Ajax.Request(
		fileadmin
		+ 'get_fb_json.php?aid=' + aid 
		+ "&limit=" + (limit+1)   // to check if a next page exists by a available picture in the next page 
		+ "&offset=" + offset,
  		
		{
		method:'get',
		onComplete: function(req, json){
			Effect.SwitchOff('gallery_more');
			
	  		var data = eval(req.responseText);
			var phArray = new Array();
			var anzShowPhoto = ( data.length-1 == 25 ? 25 : data.length); // to avoid images less than 25 with condition 25+1 for checking nxt page
			
			for (var i = 0; i < anzShowPhoto; i++) {
				var endClass = '';
				if ( (i+1) % 5 == 0 ) endClass = 'end';
				$('gallery').innerHTML += "<a href='index.php?id=77&amp;aid=" 
					+ aid + 
					"&amp;pid=" + data[i]['id'] 
					+ "&amp;p=" + nextPage
					+ "' id='photo-id-" + data[i]['id'] 
					+ "' style='display: none;'><div class='photo_cover " + endClass
					+ "' style='background-image: url(" + data[i]['images'][getImageIndex(data[i]['images'])]['source'] + ");'></div></a>\n";
				phArray.push('photo-id-' + data[i]['id']);
			}
			
			if (phArray.length > 0)
			{
				new Effect.Morph('gallery', {
				  style: 'height: ' + (130 * ((phArray.length+offset)/5)) + 'px;', // CSS Properties
				  duration: 2, 
				  afterFinish: function startAllMorph() 
				  {  
						Effect.multiple(phArray, Effect.Appear);
						
						divMore.className = "";
						
						if (data.length > phArray.length) // if next page exists then set the more link enable
						{
							Effect.Grow('gallery_more', {
								afterFinish:function scrollToBottom () 
								{ 
									Effect.ScrollTo({direction: 'bottom'});
								}
							});	
						} else { Effect.ScrollTo({direction: 'bottom'}); }
				  }
				});
			} else {
				Effect.SwitchOff('gallery_more');
			}
		},
		onFailure: function(){ alert('Error') }
  	});
}

function getImageIndex (imgArr) 
{
	var pCoverWidth = 176;
	var pCoverHeight = 116;
	 
	var ind = 0;
		
	for (var i = 0; i < imgArr.length; i++)
	{
		if (imgArr[i]['width'] >= pCoverWidth &&  imgArr[i]['height'] >= pCoverHeight) ind = i;
	}
	
	return ind;
}
