
if (console == null) 
    var console = {
        log: function(){
        },
        error: function(){
        }
    }
console.log(console);

function selectRadio(id){
    var rb = document.getElementById(id);
    if (rb) {
        rb.checked = true;
		var tf = rb.form.travelForm;
		if(tf != null) tf.selectPartner(true); 
    }
}



Array.prototype.contains = function contains(value){
    for (var i = 0; i < this.length; i++) {
        if (this[i] == value) 
            return true;
    }
    return false;
}



function selectSearchTab(formName){
    for (var i = 0; i < TravelForms.length; i++) {
		if (TravelForms[i] != null) {
			if (TravelForms[i].name == formName) {
				TravelForms[i].getDiv().style.display = "";
				if (TravelForms[i].getTab().className.indexOf('tab_border') == -1) {
					TravelForms[i].getTab().className = "on";
				}
				else {
					TravelForms[i].getTab().className = "on tab_border";
				}
			}
			else {
				TravelForms[i].getDiv().style.display = "none";
				if (TravelForms[i].getTab().className.indexOf('tab_border') == -1) {
					TravelForms[i].getTab().className = "off";
				}
				else {
					TravelForms[i].getTab().className = "off tab_border";
				}
			}
		}
    }
}

function callTracking(url,ok){ 
	//apelle l'url de tracking dans une iframe, l'utilisation d'un setTimout evite
	// l'apparition d'une exception etrange dans FFox
	console.log("Tracking :"+url);
	if(ok)
		document.getElementById('usefull-frame').src = url;
	else
		setTimeout("callTracking('"+url+"',true)",1);
}

function getTravelFormByName(name){
    for (var i = 0; i < TravelForms.length; i++) {
        if (TravelForms[i].name == name) 
            return TravelForms[i];
    }
    throw "NoSuchTravelForm";
}


/*
var TravelSearchManegement = {
    autoCompleteFields: [[]],
    datePickers: [[]],
    addAutoComplete: function(formName, inputName, dependencies){
        if (this.autoCompleteFields[formName] == null) 
            this.autoCompleteFields[formName] = [];
        this.autoCompleteFields[formName][inputName] = new TravelAutoCompleter(formName, inputName, dependencies);
        console.log(this.autoCompleteFields[formName][inputName]);
    },
    addPicker: function(formName, inputName){
        var params = {
            relative: 'date-' + formName + '-' + inputName,
            language: 'fr'
        };
        if (this.datePickers[formName] == null) 
            this.datePickers[formName] = [];
        this.datePickers[formName][inputName] = new DatePicker(params);
    }
}
*/
var LoadIndicator = {
	loading:0,
	getPicto: function(){
		return document.getElementById('loading_div');
	},
	add:function(){
		this.loading++;
		this.getPicto().style.display='block';
		console.log("Start loading ...");
	},
	remove:function() {
		this.loading--;
		if(this.loading <1){
			this.loading = 0;
			this.getPicto().style.display='none';
			console.log(".. loading ended !");
		}
	}
}

function blinkDiv(divId,n){
	if(n == null) n=1;
	var elt = document.getElementById(divId);
	if(elt != null){
		elt.style.display = "block";
		if (n % 2 == 1) {
			elt.style.visibility = "visible";
		} else {
			elt.style.visibility = "hidden";			
		}
		n++;
		if (n < 8) {
			setTimeout("blinkDiv('"+divId+"',"+n+")", 100);
		}
	}
}

function getFieldValue(field) {
	if (field) {
		if (field.type == 'checkbox') {
			return (field.checked);
		}
		else 
			if (field.type == 'radio' && field.length != null) {
				for(var i=0;i<field.length;i++){
					if(field[i].checked){
						return field[i].value;
					}
				}
			}
			else {
				return field.value;
			}
	}
	return null;
}
//
//function errh(msg) {
//  if(msg.indexOf("http://")==0){
//  	document.location.href=msg;
//  } else {
//  	console.error(msg);
//  }
//}
//
//dwr.engine.setErrorHandler(errh);
//
//Remote.getData(function(data) { alert(data); });