/*
 * http://dean.edwards.name/IE7/caveats/
 */
function addClass(element, className) {
    if (!hasClass(element, className)) {
        if (element.className) element.className += " " + className;
        else element.className = className;
    }
};
function removeClass(element, className) {
    var regexp = new RegExp("(^|\\s)" + className + "(\\s|$)");
    element.className = element.className.replace(regexp, "$2");
};
function hasClass(element, className) {
    var regexp = new RegExp("(^|\\s)" + className + "(\\s|$)");
    return regexp.test(element.className);
};


/*
 * http://www.kryogenix.org/code/browser/aqlists/
 *
 * Ejemplo: addEvent(window, 'load', function(){alert('OK')});
 */
function addEvent(obj, evType, fn){
	if (obj.addEventListener){
		obj.addEventListener(evType, fn, true);
		return true;
	} else if (obj.attachEvent){
	var r = obj.attachEvent("on"+evType, fn);
		return r;
	} else {
	return false;
	}
}


/*
 * Da el foco a los elementos con clase CSS 'foco'
 *
 * Si hay más de uno el foco (lógicamente) quedará en el último. Es intencionado.
 */
function foco(){
	if(document.getElementsByTagName){
		var todo=document.getElementsByTagName('*');

		for(var i=0; i<todo.length; i++){
			if(hasClass(todo[i], 'foco')){
				todo[i].focus();
			}
		}
	}
}


/*
 * Recorta los blancos (espacios, tabuladores, retornos de carro...) iniciales y finales de texto
 */
function trim(texto){ // v2005-03-14
	return texto.replace(/(^\s+)|(\s+$)/g, '');
}


/*
 * Devuelve el objeto correspondiente al id
 */
function objeto(id){
	return document.getElementById(id);
}

/*
 * Ejemplo: ocultar(objeto('horariosAutobus'));
 */
function ocultar(objeto){
	if(objeto){
		objeto.style.display='none';
		return true;
	}else return false;
}

function mostrar(objeto){
	if(objeto){
		objeto.style.display='block';
		fundido(objeto);
		return true;
	}else return false;
}

function alternar(objeto){
	if(objeto){
		if(objeto.style.display==''){
			ocultar(objeto);
		}else{
			mostrar(objeto);
		}
		return true;
	}else return false;
}

function fundido(obj){
	if(typeof(obj.filters) != "undefined" && typeof(obj.filters.blendTrans) != "undefined"){ // Típicamente Internet Explorer
		obj.style.filter='blendTrans(duration=1.25)';
		if (obj.filters.blendTrans.status != 2) { // Si no se está ejecutando
			obj.style.width='100%';
			obj.filters.blendTrans.apply();
			obj.style.visibility='visible';
			obj.filters.blendTrans.play();
		}
	}
}


/*
 * Funciones para la página de pago
 */

//var formas_pago=Array('cyberpac', 'tpv_virtual', 'transferencia_bancaria', 'telefono');
//var formas_pago=Array('cyberpac', 'transferencia_bancaria', 'epagado');
var formas_pago=Array('pasat_internet', 'cyberpac', 'transferencia_bancaria');

function detalles(){
	for(var i=0; i<formas_pago.length; i++){
		// ¿Existe el objeto?
		if(objeto(formas_pago[i])!=null){
			if( (typeof(objeto(formas_pago[i]))!='undefined') && (objeto(formas_pago[i]).checked) ){
				mostrar(objeto('detalles_'+formas_pago[i]));
			}else{
				ocultar(objeto('detalles_'+formas_pago[i]));
			}
		}
	}
}


/*
 *
 */
function ssl(){
	if(document.links){
		for(var i=0; i<document.links.length; i++){
			document.writeln('<li>' + document.links[i].href + '</li>');
		}
	}
}


addEvent(window, 'load', function(){
	// foco(); // Movido al pie de página
});
