
function btn_inout(container)
{
    var img = container.getElementsByTagName('img')[0];
    var end_src = new RegExp('in.png', 'ig');

    if (end_src.test(img.src))
	img.src='style/btn-square-orange-left-out.png';
    else
	img.src='style/btn-square-orange-left-in.png';
}

function preload_img(src)
{
    if (document.images)
	{
	    var preload = new Image();
	    preload.src = src;
	}
}

function mypopup(link, size_x, size_y)
{
    open(link, "view", "width="+size_x+", height="+size_y+", scrollbars=yes");
}

function live_display(id)
{
    var to_aff = document.getElementById(id);

    if (to_aff)
	{
	    if (to_aff.style.display == 'none')
		to_aff.style.display = 'block';
	    else
		to_aff.style.display = 'none';
	}
}

function show_log(type_log1, type_log2, type_log3, type_log4 )
{
	var state = 'none';
	if (type_log1 != "") {
		type_log=type_log1;
		var state = 'none';
		var logname = document.getElementsByName(type_log);
		if (logname[0] && logname[logname.length-1].style.display == 'none' ) {
			state = 'block';
		}
	 	for (var i = 0; i<logname.length; i++) {
			logname[i].style.display=state;
  	}
  }
  if (type_log2 != null) {
		type_log=type_log2;
		var state = 'none';
		var logname = document.getElementsByName(type_log);
		if (logname[0] && logname[logname.length-1].style.display == 'none' ) {
			state = 'block';
		}
	 	for (var i = 0; i<logname.length; i++) {
			logname[i].style.display=state;
  	}
  }
  if (type_log3 != null) {
		type_log=type_log3;
		var state = 'none';
		var logname = document.getElementsByName(type_log);
		if (logname[0] && logname[logname.length-1].style.display == 'none' ) {
			state = 'block';
		}
	 	for (var i = 0; i<logname.length; i++) {
			logname[i].style.display=state;
  	}
  }
  if (type_log4 != null) {
		type_log=type_log4;
		var state = 'none';
		var logname = document.getElementsByName(type_log);
		if (logname[0] && logname[logname.length-1].style.display == 'none' ) {
			state = 'block';
		}
	 	for (var i = 0; i<logname.length; i++) {
			logname[i].style.display=state;
  	}
  }
}

function update_new_log() {
	var log = document.getElementById('new_logs');
	if (!box)
		var box = document.getElementById('new_event');
	//var testrc='briong';
	get('events-show.php',{},function(status, text) {
	if (text != "") {
			log.innerHTML=text;
			if (box.style.display != "block")
				box.style.display = "block";
		}	
	});
}

function update_state() {
	var log = document.getElementById('new_logs');
	//var testrc='briong';
	get('events-show.php',{},function(status, text) {
		if (text != "") {
			log.innerHTML=text;
			var box = document.getElementById('new_event');
			box.style.display = "block";
		}	
	});
}

function body_onload() {
	//alert("onload");
	window.setInterval('update_new_log()', '5000');
	preload_img('style/btn-square-orange-left-out.png');
}

/***[AJAX]***/
var _HTTPFactories = [
  function () { return new XMLHttpRequest(); },
  function () { return new ActiveXObject("Msxml.XMLHTTP"); },
  function () { return new ActiveXObject("Microsoft.XMLHTTP"); }
];

var _HTTPFactory = null;

function HTTPRequest() {
  if(_HTTPFactory) return _HTTPFactory();
  for(var i=0; i < _HTTPFactories.length; i++) {
    try {
      var factory = _HTTPFactories[i];
      var request = factory();
      if(request != null) {
        _HTTPFactory = factory;
        return request;
      }
    }
    catch(e) { continue; }
  }
  alert("NoHttpRequest");
}

//On pourrait dire que si il y a un callback... quoi ?!
//FIXME: rename as get and post
function get(path, cmd, cbk) {
  var req = HTTPRequest();
  cbk = cbk || function(status, text) { alert("Unhandled response(" + status + "): " + text); };
  var opt = new Array(); /* FIXME: obj to URL: {prop:{sub_prop:value}} => prop.sub_prop=value */
  if(cmd) for(key in cmd) { opt.push(key + "=" + cmd[key]); }//FIXME:urlencode
  req.onreadystatechange = function() {
    if(req.readyState == 4) { cbk(req.status, req.responseText); }
//    else alert(req.readyState);
  };
  req.open("GET", path + "?" + opt.join("&"), true);
  req.send(null);
  return false;
}

