function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

function displayLoading(element) {
	while(element.hasChildNodes()) {
		element.removeChild(element.lastChild);
	}
	var image = document.createElement('img');
	image.setAttribute('src', 'imatges/vinyetes/loading.gif');
	image.setAttribute('alt', 'Loading...');
	image.setAttribute('id', 'img_loading');
	element.appendChild(image);
}

function getHTTPObject() {
  var xhr = false;
  if (window.XMLHttpRequest) {
    xhr = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    try {
      xhr = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e) {
      try {
        xhr = new ActiveXObject("Microsoft.XMLHTTP");
      } catch(e) {
        xhr = false;
      }
    }
  }
  return xhr;
}

function grabFile(file) {
  var request = getHTTPObject();
  if (request) {
	displayLoading(document.getElementById('contenedor'));
    request.onreadystatechange = function() {
      parseResponse(request, file);
    };
	var destino = 'contenidos/'+file;
    request.open("GET", destino, true);
    request.send(null);
  }
}

function grabFile2(file) {
  var request = getHTTPObject();
  if (request) {
	displayLoading(document.getElementById('contenidor_ajax'));
    request.onreadystatechange = function() {
      parseResponse2(request, file);
    };
	var destino = '../pagines/'+lang+'/'+file;
    request.open("GET", destino, true);
    request.send(null);
  }
}

function parseResponse(request, file) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
      var leftPan = document.getElementById("contenedor");
      leftPan.innerHTML = request.responseText;
	  if(file=='index.html' || file=='malena.html') {
		inicialitza_thumbs();  
		inicialitza_submenu();
	  }
	  if(file=='otros.html') {
		inicialitza_submenu();  
	  }
    }
  }
}

function parseResponse2(request,file) {
  if (request.readyState == 4) {
    if (request.status == 200 || request.status == 304) {
      var contenidor_ajax = document.getElementById("contenidor_ajax");
      contenidor_ajax.innerHTML = request.responseText;
	  if(file=='tipos.html' || file=='efectos.html') {
		inicialitza_galeries();  
	  }
    }
  }
}

function inicialitza_idiomes() {
	var idiomes = document.getElementById('idiomas');
	var links = idiomes.getElementsByTagName('a');
	for (var i=0; i<links.length; i++) {
		var opcio = links[i];
		opcio.onclick = function() {
			setActiveStyleSheet(this.getAttribute('hreflang'))
			canvia_idioma_menu(this.getAttribute('hreflang'));
			grabFile(this.getAttribute('name'));
			return false;
		}
	}
}

function inicialitza_menu() {
	var menu = document.getElementById('menu');
	var links = menu.getElementsByTagName('a');
	for(var i=0; i<links.length; i++) {
		var opcio = links[i];
		opcio.onclick = function() {
			canviaClasseLink(this);
			canviaHrefIdiomes(this.getAttribute('name'));
			grabFile(this.getAttribute('name'));
			return false;
		}
	}
}

function inicialitza_thumbs() {
	var thumbs = document.getElementById('thumbs');
	var links = thumbs.getElementsByTagName('a');
	for(var i=0; i<links.length; i++) {
		var opcio = links[i];
		opcio.onclick = function() {
			canviaHrefIdiomes(this.getAttribute('name'));
			grabFile(this.getAttribute('name'));
			return false;
		}
	}
}

function inicialitza_submenu() {
	var submenu = document.getElementById('submenu');
	var links = submenu.getElementsByTagName('a');
	for(var i=0; i<links.length; i++) {
		var opcio = links[i];
		opcio.onclick = function() {
			canviaHrefIdiomes(this.getAttribute('name'));
			grabFile(this.getAttribute('name'));
			return false;
		}
	}
}

function inicialitza_menu1() {
	var rightPan = document.getElementById('rightPan');
	var links = rightPan.getElementsByTagName('a');
	for (var i=0; i<links.length; i++) {
		var opcio = links[i];
		opcio.onclick = function() {
			canviaClasse(this.parentNode);
			grabFile(this.getAttribute('name'));
			return false;
		}
	}
}

function inicialitza_menu2() {
	var menu = document.getElementById('menu');
	var links_menu = menu.getElementsByTagName('a');
	for (var i=0; i<links_menu.length; i++) {
		var opcio = links_menu[i];
		opcio.onclick = function() {
			canviaClasseLink(this);
			grabFile2(this.getAttribute('name'));
			return false;
		}
	}
}

function canvia_idioma_menu(idioma) {
	lang = idioma;
	var links_menu = document.getElementById('menu').getElementsByTagName('a');
	var seccions = new Array();
	switch(idioma) {
		case 'es':
			seccions = ['Empresa', 'Reconocimiento', 'Productos', 'Ubicación', 'Contacto'];
			break;
		case 'en':
			seccions = ['Enterprise', 'Recognition', 'Products', 'Location', 'Contact'];
			break;
		case 'fra':
			seccions = ['Empresa', 'Reconocimiento', 'Productos', 'Ubicación', 'Contacto'];
			break;
	}
	for(var i=0; i<links_menu.length; i++) {
		var cadena = seccions[i];
		var texto = document.createTextNode(cadena);
		links_menu[i].removeChild(links_menu[i].firstChild);
		links_menu[i].appendChild(texto);
	}
}

function canviaClasse(li) {
	var llista = li.parentNode;
	for(var i=0; i<llista.childNodes.length; i++) {
		var elem = llista.childNodes[i];
		elem.className = '';
	}
	li.className = 'actual';
}

function canviaClasseLink(a) {
	var llista = a.parentNode.parentNode;
	var links = llista.getElementsByTagName('a');
	for(var i=0; i<links.length; i++) {
		var elem = links[i];
		elem.className = '';
	}
	a.className = 'actual';
}

function canviaHrefIdiomes(nom) {
	var idiomes = document.getElementById('idiomas');
	var links = idiomes.getElementsByTagName('a');
	for(var i=0; i<links.length; i++) {
		var enlace = links[i];
		enlace.setAttribute('name', nom);
	}
}

function setActiveStyleSheet(title) {
   var i, a, main;
   for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
     if(a.getAttribute("rel").indexOf("style") != -1
        && a.getAttribute("title")) {
       a.disabled = true;
       if(a.getAttribute("title") == title) a.disabled = false;
     }
   }
}

