

document.observe( 'contentloaded',
	function(){
		load_controls();
	}
);

function load_controls(){
	$$('.controls').each(
		function( el ){
			var imgs = el.getElementsByTagName( 'img' );
			Event.observe( imgs[0], 'click', go_back );
			Event.observe( imgs[1], 'click', go_random );
			Event.observe( imgs[2], 'click', go_next );
		}
	);
}

function go_back( evt ){
	var gal_id = this.parentNode.previous('a').href.match( /galerias-([^\/]+)/ );
	gal_id = gal_id[1] * 1;
	
	var img = this.parentNode.previous('a').down('img');
	img = img.src.match( /content_galerias.*/ );
	
	var params = {
		action: 'get_prev_image',
		gal_id: gal_id,
		img: img[0]
	};
	var el = this;
	new Ajax.Request( 'actions.php', {parameters:params,onComplete:show_image,el:el} );
}
function go_random( evt ){
	if( this.working ) return;
	this.working = true;
	this.start_time = new Date();
	this.start_time = this.start_time.getTime();
	var div = new Element( 'div', { className: 'rand_gal_div' } );
	//$( div ).insert( new Element( 'img', { src:'/img/rand_gallery.gif' } ) );
	var container = this.parentNode.parentNode;
	$( container ).insert( div );
	var theme_id = container.classNames().find(
		function( el ){
			return el.match(/theme-/);
		}
	).split('-')[1];
	div.id = 'rand_gal_div_' + theme_id;
	var so = new SWFObject("/swf/mifotoblog.swf", "mymovie", "125", "125", "6", "#ffffff");
	so.write( 'rand_gal_div_' + theme_id );
	var gal_id = $( this.parentNode ).previous('a').href.match( /galerias-([^\/]+)/ );
	gal_id = gal_id[1] * 1;
	var params = {
		action: 'get_rand_gallery',
		theme_id: theme_id,
		gal_id: gal_id
	};
	var el = this;
	new Ajax.Request( 'actions.php', {parameters:params,onComplete:show_image,el:el} );
}
function go_next( evt ){
	var gal_id = this.parentNode.previous('a').href.match( /galerias-([^\/]+)/ );
	gal_id = gal_id[1] * 1;
	
	var img = this.parentNode.previous('a').down('img');
	img = img.src.match( /content_galerias.*/ );
	
	var params = {
		action: 'get_next_image',
		gal_id: gal_id,
		img: img[0]
	};
	var el = this;
	new Ajax.Request( 'actions.php', {parameters:params,onComplete:show_image,el:el} );
}

function show_image( t ){
	var btn = t.request.options.el;
	var img = $( btn.parentNode ).previous('a').down('img');
	var data = t.responseText.evalJSON();
	if( data.error ){
		$( btn.parentNode ).update( data.error );
	}else{
		img.src = data.img;
		img.title = data.desc;
		img.alt = data.desc;
		if( data.gal_title ){
			$( btn.parentNode.parentNode.getElementsByTagName('span')[0] ).update( data.gal_title );
		}
	}
	btn.working = false;
	if( $( btn.parentNode.parentNode ).getElementsByClassName('rand_gal_div').length ){
		var div = $( btn.parentNode.parentNode ).getElementsByClassName('rand_gal_div')[0];
		img.onload = function( evt ){
			var container = $( this ).up('div');
			var now = new Date();
			now = now.getTime();
			if( now - btn.start_time >= 4000 ){
				container.getElementsByClassName('rand_gal_div')[0].remove();
			}else{
				btn.working = true;
				var dif = 4000 - ( now - btn.start_time ) + 100;
				window.setTimeout( "remove_rand()", dif );
			}
		}
	}
}
function remove_rand(){
	var now = new Date();
	now = now.getTime();
	$$('.control-random').each(
		function( el ){
			if( !el.working ) return;
			if( now - el.start_time >= 4000 ){
				$(el).up('div',1).getElementsByClassName('rand_gal_div')[0].remove();
				el.working = false;
			}
		}
	);
}
