function updateElementWithUrl( element, url ) {
  var xhr = null;
  
  if(window.XMLHttpRequest) // Firefox and others
     xhr = new XMLHttpRequest(); 
  else if(window.ActiveXObject){ // Internet Explorer 
     try {
        xhr = new ActiveXObject("Msxml2.XMLHTTP");
      } catch (e) {
        xhr = new ActiveXObject("Microsoft.XMLHTTP");
      }
  }
  else { // XMLHttpRequest isn't supported by navigator
     alert("Your browser is unable to process XMLHTTPRequest objects. Please update."); 
     return;
  } 
  xhr.open("GET", url, true );
  
  xhr.onreadystatechange = function () {
    if ( xhr.readyState == 4 && xhr.status == 200 ) {
      if ( xhr.responseText != '' ) { 
        element.innerHTML = xhr.responseText;
      }
    }
  };
  
  xhr.send( null );
}

function updateElementWithUrlIfNull( element, url ) {
  var xhr = null;
  
  if(window.XMLHttpRequest) // Firefox and others
     xhr = new XMLHttpRequest(); 
  else if(window.ActiveXObject){ // Internet Explorer 
     try {
        xhr = new ActiveXObject("Msxml2.XMLHTTP");
      } catch (e) {
        xhr = new ActiveXObject("Microsoft.XMLHTTP");
      }
  }
  else { // XMLHttpRequest isn't supported by navigator
     alert("Your browser is unable to process XMLHTTPRequest objects. Please update."); 
     return;
  } 
  xhr.open("GET", url, true );
  
  xhr.onreadystatechange = function () {
    if ( xhr.readyState == 4 && xhr.status == 200 ) {
      if ( xhr.responseText != '' ) { 
        element.innerHTML = xhr.responseText;
      } else {
        element.innerHTML = '';
      }
    }
  };
  
  xhr.send( null );
}

function revertCheckboxes( targetForm, targetObject ) {
  var amount = targetForm.elements[ targetObject ].length;
  for ( i = 0; i < amount; i++ ) {
    if ( targetForm.elements[ targetObject ][i].checked ) { 
      targetForm.elements[ targetObject ][i].checked = false;
    } else { 
      targetForm.elements[ targetObject ][i].checked = true;
    }
  }
}

function fireEvent(obj,evt){
	var fireOnThis = obj;
	if( document.createEvent ) {
	  var evObj = document.createEvent('MouseEvents');
	  evObj.initEvent( evt, true, true );
	  fireOnThis.dispatchEvent(evObj);
	} else if( document.createEventObject ) {
	  fireOnThis.fireEvent('on'+evt);
	}
}

function displayLoginBox() {
  if ( document.getElementById('loginbox').style.display == 'none' ) {
    new Effect.Appear('loginbox', {duration:0.5});
    window.setTimeout( 'focusLogin();', 500 );
  }
}

function hideLoginBox() {
  if ( document.getElementById('loginbox').style.display != 'none' ) {
    new Effect.Fade('loginbox', {duration:0.5});
  }
}

function focusLogin() {
  if( document.frmIdentification.identification_email.value == '' ) {
    document.frmIdentification.identification_email.focus();
  } else {
    document.frmIdentification.identification_motdepasse.focus();
  }
}

function getCheckedValue( radioObj ) {
	if( !radioObj )
		return "";
	var radioLength = radioObj.length;
	if ( radioLength == undefined )
		if ( radioObj.checked )
			return radioObj.value;
		else
			return "";
	for ( var i = 0; i < radioLength; i++ ) {
		if ( radioObj[i].checked ) {
			return radioObj[i].value;
		}
	}
	return "";
}

function setCheckedValue( radioObj, newValue ) {
	if( !radioObj )
		return;
	var radioLength = radioObj.length;
	if ( radioLength == undefined ) {
		radioObj.checked = ( radioObj.value == newValue.toString( ) );
		return;
	}
	for ( var i = 0; i < radioLength; i++ ) {
		radioObj[i].checked = false;
		if ( radioObj[i].value == newValue.toString( ) ) {
			radioObj[i].checked = true;
		}
	}
}
