var Motorea = {
	hasi: function(modulua){

		Motorea.moduluaExekutatu(modulua);
	},
	log:function(str){
		if(window.console&&window.console.firebug){
			console.log(str);	
		}		
	},
	trace:function(){
		if(window.console&&window.console.firebug){
			console.trace();	
		}		
	},
	alert:function(str){
		alert(str);
	},
	
	/************************************************************************
	 * Module handling
	 ************************************************************************/
	moduluak: new Array(),

	moduluaKargatu: function(module,uri){
		var myAjax = new Ajax("moduluakJS/" + module + ".module.js",{
			method: 'get',
			postBody: {'nocache' : new Date()},
			onFailure: function(req){
				alert("Failure: "+req.responseText);
				Motorea.showError("Could not load module " + module);
			},
			onComplete: function(req){
				moduleZati = module.split('/');//modulek '/' badu...
				if (moduleZati.length>1){
					module = moduleZati[moduleZati.length-1];
				}
				eval(req);
				Motorea.moduluak[module].execute(uri);
			}
		}).request();
		
		/*
		//etorkizunean hau jarri dezakegu motorea sinplifikatzeko. Goiko guztiaren ordez jun daiteke.
		new Asset.javascript('smoothbox/smoothbox.js', 
		{
			onload:function(){
				moduleZati = module.split('/');//modulek '/' badu...
				if (moduleZati.length>1){
					module = moduleZati[moduleZati.length-1];
				}
				eval(req);
				Motorea.moduluak[module].execute(uri);
			}
		});
		*/
	},
	
	uri: "/",

	moduluaExekutatu: function(modulua){
		//alert("modulua="+modulua);
		if(modulua.indexOf('/') > 0)
			moduleLength = modulua.indexOf('/');
		else
			moduleLength = modulua.length;
		var js = modulua.substring(0,moduleLength);
		uri = modulua.substring(modulua.indexOf('/'));
		if(Motorea.moduluak[js]){
			Motorea.moduluak[js].execute(uri);
		}else{
			Motorea.moduluaKargatu(js,uri);
		}
	},
	//hau partxe bat da. php guztiek funtzio honi deitzen diote. php guztiak ere aldatu beharko ditut
	moduluak_exekutatu: function(modulua){
		this.moduluaExekutatu(modulua);
	},
	saio_bista: function(bista){
		var nireAjax = new Ajax('moduluakPHP/bista/bista.php' ,{
			method:'get',
			postBody: {'saio_bista' : bista},
			onComplete: function(req){
				eval(req);
			}
		}).request();
	},
	pantailaratu: function(zer,divId){
		var nodoa = $(divId);
		if($(divId)!=null){//bertan idatzi baino lehen, div-a esistitzen den jakiteko
			if(zer == "namekerabiltzaileahasierarabota"){
				document.location = "index.php";
			}else{
				nodoa.innerHTML = zer;
			}
		}
		if(window.ie6){
			Motorea.png_garden(divId);
		}
	},
	png_garden:function(div){
		var irudiak = $$('#'+div+' img');
		for(i=0;i<irudiak.length;i++){
			var png = irudiak[i].src;
			png = png.substring(png.length-3);
			console.log(png);
			if(png=="png"){
				fixPNG(irudiak[i]);	
			}
		}
	},	
	kargatzen: function(mezu,zenbat){
		div_karga = new Element('div');
		div_karga.setProperty('id','karga');
		
		$(div_karga).injectAfter('gunea');

		mezu = '<div id="karga_str">'+mezu+'</div>';
		this.pantailaratu(mezu,"karga");//mezua pantailaratu

		Motorea.kont = 0;
		Motorea.modulo_kopurua = zenbat;
	},
	kargatu: function(){
		Motorea.kont++;
		if(Motorea.kont==Motorea.modulo_kopurua){
			$(div_karga).remove()//div-a kendu
			$(karga_str).remove()
		}
	},
	/************************************************************************
	 * Eye Candy
	 ************************************************************************/
	hideStatus: function(){
		//new Effect.Fade($('status'));
	},
	
	showError: function(message){
		//Motorea.setStatus(message);
		Motorea.setTimeout("Motorea.hideStatus();",15000);
	},
	setError: function(element){
		element.style.background = '#ffeeee';
	},
	setOK: function(element){
		element.style.background = "#eeffee";
	},
	kont:0,
	modulo_kopurua:0
};