function getWindowHeight() {
    var windowHeight=0;
    if (typeof(window.innerHeight)=='number') {
        windowHeight=window.innerHeight;
    }
    else {
     if (document.documentElement&&
       document.documentElement.clientHeight) {
         windowHeight = document.documentElement.clientHeight;
    }
    else {
     if (document.body&&document.body.clientHeight) {
         windowHeight=document.body.clientHeight;
      }
     }
    }
    return windowHeight;
}
function addEvent( obj, type, fn ) {
	if (obj.addEventListener)
		obj.addEventListener( type, fn, false );
	else if (obj.attachEvent)	{
		obj["e"+type+fn] = fn;
		obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
		obj.attachEvent( "on"+type, obj[type+fn] );
	}
}
function open_querywindow(url) {
	if (!querywindow.closed && querywindow.location) {
		querywindow.focus();
	} else {
		querywindow=window.open(url,'SPPLUS','toolbar=0,location=0,directories=0,status=1,menubar=0,scrollbars=yes,resizable=yes,width=510,height=310');
	}
	if (!querywindow.opener) {
	 querywindow.opener = self;
	}
	if (window.focus) {
		querywindow.focus();
	}
	return false;
}

function update_qte(id, val) {
	quantite = document.form1[id].value;
	quantite = 	parseInt(quantite) + parseInt(val);
	if (quantite < 1) { quantite = 1; }
	if (quantite > 99) { quantite = 99; }
	document.form1[id].value = quantite;
}
function chgDisplay(id, mode) {
	$(id).style.display=mode;
}

function toggleDisplay(id) {
	if ($(id).style.display=='block') {
		$(id).style.display='none';
		if (id=='opacity') {
			var fadeIn = new Fx.Opacity($(id), {duration:300});
			fadeIn.custom(0.25,0);
			$(id).style.visibility="hidden";			
		}
		return 0;
	}
	else {
		if (id=='opacity') {
			var fadeIn = new Fx.Opacity($(id), {duration:300});
			fadeIn.custom(0,0.25);
		}
		else {
			$(id).style.top=(getScrollXY()+200)+"px";
		}
		$(id).style.display='block';
		return 1;
	}
}

function getScrollXY() {
  var scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
  } else if( document.body && document.body.scrollTop ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
  } else if( document.documentElement && document.documentElement.scrollTop ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
  }
  return scrOfY;
}

var opacity_toogle=0;
var current_popup;

function displayPopup(id) {
	if (!id)
		id = current_popup;

	var class_g = getElementsByClassName('popup','*');
	for (var i=0; i<class_g.length; ++i) {
		alert(class_g[i]);
		if (class_g[i] != $(id)) {
			class_g[i].style.display='none';
		}
	}
	
	if (toggleDisplay(id)) {
		current_popup=id;
		el=$(id);
		handle = el.getElementsByTagName('h2');
		dragContainerInit(handle[0]);
		if (opacity_toogle == 0)
			opacity_toogle = toggleDisplay('opacity');
	}
	else
		if (opacity_toogle == 1)
			opacity_toogle = toggleDisplay('opacity');
}

function hideOrNot(id) {
	if ($(id)) {
		if ($(id).style.visibility=='hidden') {
				$(id).style.visibility='visible';
		}
		else {
			$(id).style.visibility='hidden';
		}
	}
}

function getElementsByClassName(className, theElement){
	var elts = document.getElementsByTagName('*');
	var classArray = new Array();
	for (var j = 0; j < elts.length; ++j) {
		if (elts[j].className == className) {
			classArray.push(elts[j]);
		}
	}
	return classArray;
}

function initRegister(id) {
	for (var i=0; i<listReg.length; i++) {
		var key = listReg[i];
		if ($(key)) {
			myHeight[key] = new fx.Height(key, {duration: 400, transition: fx.circ});
			if (key != id) {
				myHeight[key].hide();
			}
		}
	}
}

function actRegister(id) {
	for (var i=0; i<listReg.length; i++) {
		var key = listReg[i];
		if (id != key && $(key)) {
		  myHeight[key].up();
		}
	}
	myHeight[id].down();
}

function updateOrder(page) {
		var options = {
										method : 'post',
										parameters : Sortable.serialize('numeric'),
		// Handle 404
		on404: function(t) {
				alert('Error 404: location ' + t.statusText + ' was not found.');
		},    // Handle other errors
		onFailure: function(t) {
				alert('Error ' + t.status + ' -- ' + t.statusText);
		}
	};
    new Ajax.Request(page, options);
}

function dragndrop(page) {
	Sortable.create('numeric',{ onUpdate : function() {updateOrder(page);}});
}

function toggle_check(id) {
	$(id).checked = !$(id).checked;
}

function checkall(classname) {
	var class_g = getElementsByClassName(classname,'*');
	for (var i=0; i<class_g.length; ++i) {
		class_g[i].checked = true;
	}
}
function uncheckall(classname) {
	var class_g = getElementsByClassName(classname,'*');
	for (var i=0; i<class_g.length; ++i) {
		class_g[i].checked = false;
	}
}

function getHTTPObject(){
  var xmlhttp = false;
  /* Compilation conditionnelle d'IE */
  /*@cc_on
  @if (@_jscript_version >= 5)
     try {
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
     }
     catch (e) {
        try {
           xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch (E) {
           xmlhttp = false;
        }
     }
  @else
     xmlhttp = false;
  @end @*/

  /* on essaie de créer l'objet si ce n'est pas déjà fait */
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
     try {
        xmlhttp = new XMLHttpRequest();
     }
     catch (e) {
        xmlhttp = false;
     }
  }
  return xmlhttp;
}	

function openCart(id,url,old_id) {
	if (id == old_id) {
		displayPopup('addInCart');
	}
	else {
		xmlhttp = getHTTPObject();
		if (xmlhttp) {
			xmlhttp.open("POST", "/boutique/achat_produit.php",true);
			xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			xmlhttp.send("id_req="+id+"&url="+url);
			xmlhttp.onreadystatechange = function anonymous() {
				if (xmlhttp.readyState == 4) /* état "complete" */ {
					 if (xmlhttp.status == 200) /* code HTTP pour OK */ {
						$("openCart").innerHTML = xmlhttp.responseText;
						displayPopup('addInCart');
					}
				}
			}
		}
	}
}

function getPopup(id, url) {
	xmlhttp = getHTTPObject();
	if (xmlhttp) {
		xmlhttp.open("POST", "/popups.php",true);
		xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		xmlhttp.send("id="+id+"&url="+url);
		xmlhttp.onreadystatechange = function anonymous() {
			if (xmlhttp.readyState == 4) /* état "complete" */ {
				 if (xmlhttp.status == 200) /* code HTTP pour OK */ {
					$('popups').innerHTML = xmlhttp.responseText;
					displayPopup(id);
				}
			}
		}
	}
}

function getPopupPhoto(photo, title) {
	xmlhttp = getHTTPObject();
	if (xmlhttp) {
		xmlhttp.open("POST", "/popups.php",true);
		xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		xmlhttp.send("id=photo_zooming&photo"+photo+"&title="+title);
		xmlhttp.onreadystatechange = function anonymous() {
			if (xmlhttp.readyState == 4) /* état "complete" */ {
				 if (xmlhttp.status == 200) /* code HTTP pour OK */ {
					$('popups').innerHTML = xmlhttp.responseText;
					displayPopup('photo_zooming');
				}
			}
		}
	}
}

function dragContainerInit(el){
 	var fadeIn = new fx.Opacity(el.parentNode, {duration:300});
	var dragContainerOptions = {
		handle: el, 
		onStart: function(){
			var fadeIn = new fx.Opacity(el.parentNode, {duration:300});
			fadeIn.custom(1,.5);
		}.bind(this),
		 
		onComplete: function(){
			var fadeIn = new fx.Opacity(el.parentNode, {duration:300});
			fadeIn.custom(.5,1);
		}.bind(this)
	};
 	el.style.cursor = 'move';
	el.parentNode.makeDraggable(dragContainerOptions);
}

function initPage() {
	var body=document.getElementsByTagName('body')[0];
	
	var sticks = $$('article_stick');
	for (var i=0; i<sticks.length; ++i)
		sticks[i].ondblclick = function(){location.href=$$('article_link')[0].href;};
		
	var photos = $$('photo_zoom');			
	for (var i=0; i<photos.length; ++i) {
		photos[i].style.minWidth=0;
		photos[i].style.minHeight=0;
		photos[i].style.display='';
		var width=parseFloat(photos[i].getElementsByTagName('img')[0].name)+21;
		photos[i].style.left=(($('conteneur').offsetWidth-width)/2)+'px';
	}
}
