function init() {
	openRealSizeImg();
	dynamiseLists()
	displayLink2HomeOnH1();
	openExtLink();
	makeImgCliquable()
}

// Au chargement de la page, on appelle la fonction d'initialisation.
window.onload = init;

function openExtLink() {
	var links = document.getElementsByTagName('a');
	for( var i = 0 ; i < links.length ; i++) {
		if(links[i].className == 'target_blank') {
			links[i].onclick = function() {
				window.open(this.href);
				return false; 
			}
		}
	}
}

function displayLink2HomeOnH1() {
	var h1 = document.getElementsByTagName('h1');
	if(h1[0].className != "info") {
		h1[0].parentNode.innerHTML = '<a href="/" title="Retour à la page d\'accueil"><h1>Art Attitude</h1></a>';
	}
}

function changeImg(src) {
	document.getElementById('img').style.backgroundImage = "url(" + src + ")";
	var links = document.getElementsByTagName('a');	
	for(var i = 0; i < links.length ; i++) {
		if(links[i].parentNode.parentNode.id == "nav") {
			if(links[i].title == "") links[i].title = links[i].href;
			var re = new RegExp("http://([a-z.-]+)/img/(.+)");
			var newSrc = src.replace(re, "img/$2");
			links[i].href = links[i].title + "&img=" + newSrc;
		}
	}
}
function dynamiseLists() {
	var elements = document.getElementsByTagName('li');
	for(var i = 0; i < elements.length ; i++) {
		if (elements[i].parentNode.id == "bar") {
			elements[i].onmouseover = function() {
				changeImg(this.title);
			}
		}
	}
}

function openRealSizeImg() {
	var links = document.getElementsByTagName('a');
	for(var i = 0; i < links.length ; i++) {
		if (links[i].parentNode.parentNode.id == "list") {
			var image = new Array(links.length);
			image[i] = new Image();
			image[i].src = this.href;
			links[i].title += "Cliquez pour plus d'informations";
			
			links[i].onmouseover = function() {
				changeImg(this.href);
			}
			links[i].onmouseout = function() {
				window.status = "";
			}
			links[i].onclick = function() {
				var img = new Image();
				img.src = this.href;
				var width = img.width;
				var height = img.height;
				var alt = "";
				var url = this.href;

				if((document.all) && false){ // si rien
					window.open(url, "popup", "height=" + ( (((height-1)>0)? (height-1)+30 : 500 ) ) + ",width=" + ( (((width-1)>0)? (width-1)+40 : 500 ) ) + ",resizable=yes,scrollbars=yes,status=yes");
				}else{ // SI FF
					var winpop = window.open("", "sfimage", "width=" + ( (((width-1)>0)? (width-1)+50 : 500 ) )  + ",height=" + ( (((height-1)>0)? (height-1)+120 : 500 ) ) + ",resizable=yes,scrollbars=yes,status=yes");
					winpop.moveTo(50,50)
					var show = winpop.document;
				
					show.open();
					show.writeln('<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"');
					show.writeln('\t"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">');
					show.writeln();
					show.writeln('<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">');
					show.writeln('<head>');
					show.writeln('\t<title>' + alt + '</title>');
					show.writeln('\t<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />');
					show.writeln('\t<meta name="keywords" content="Art Attitude" />');
					show.writeln('\t<meta name="Author" content="Manu" />');
					show.writeln('\t<style type="text/css">');
					show.writeln('\t<!--');
					show.writeln('\t\tbody{ margin: 0; padding: 0; background: #909090; text-align: center; font: normal normal normal 11px Arial, sans-serif; }');
					show.writeln('\t\ta { color: white; text-decoration: none; }');
					show.writeln('\t\timg{ margin: 10px 0 0 10px; border: 0; }');
					show.writeln('\t-->');
					show.writeln('\t</style>');
					show.writeln('</head>');
					if(document.all){ // si IE
						show.writeln('<body>');
					}else{
						show.writeln('<body onblur="self.close()">');
					}
					show.writeln('\t<a href="javascript:self.close()" title="Close this window">');
					show.writeln('\t\t<img src=' + url + ' alt="' + alt + '" />');
					show.writeln('\t\t<p class="">' + this.innerHTML + '</p>');
					show.writeln('\t</a>');
					show.writeln('</body>');
					show.writeln('</html>');
					show.close();
					winpop.focus();
				}
				return false;
			}
		}
	}
}
/************************************************************
               FUNCTION THAT CHECKS THE VALIDITY
               OF THE VALUES OF THE MAILER FORM.
/***********************************************************/
function validateForm() {

	var warning = "";
	var first = false;
		
	var form = document.forms['postmsg'];
	
	if (form.elements['name'].value.length == 0) {
		warning += "- votre nom.\n";
		first = form.elements['name'];
	}
	if (!form.elements['email'].value.match("[a-zA-Z0-9_\.]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$")) {
		warning += "- une adresse email valide.\n";
		if(!first) first = form.elements['email'];
	}
	if (form.elements['comment'].value.length == 0) {
		warning += "- un message.\n";
		if(!first) first = form.elements['comment'];
	}

	if (warning != "") {
		alert("Veuillez entrer:\n" + warning);
		first.select();
		return false;
	}else{
		return true;
	}
}

function makeImgCliquable() {
	if(document.getElementById('img') != null) {
		document.getElementById('img').onclick = function() {
			ask4changeImgSide();
		}
	}
}

function ask4changeImgSide() {
	var str = document.location.toString();
	if(document.location.toString().match('&side=')) {
		var a = (str.lastIndexOf('&side='));
		var side = (str.substring((a+6), str.length));
		var urlToDisplay = (str.slice(0, -(str.length - a)));
	}else{
		var bedSide = getCookie('image_side');
		var side = (bedSide != null)? bedSide : 'left';
		var urlToDisplay = str;
	}
	var otherSide = (side == 'left')? 'right' : 'left';
	var question = confirm('Do you sleep ' + otherSide + '?');
	if (question !='0'){
		top.location = urlToDisplay + '&side=' + otherSide;
	}
}

/************************************************************
                   COOKIES FUNCTIONS
/***********************************************************/
function getCookie(c_name) {
	if (document.cookie.length > 0) {
		c_start = document.cookie.indexOf(c_name + "=");
		if (c_start!=-1) {
			c_start = c_start + c_name.length + 1;
			c_end = document.cookie.indexOf(";", c_start);
			if (c_end == -1) c_end = document.cookie.length;
			return unescape(document.cookie.substring(c_start,c_end));
		}
	}
	return null;
}
function setCookie(c_name,value,expiredays) {
	var exdate = new Date();
	exdate.setDate(exdate.getDate() + expiredays);
	document.cookie = c_name + "=" + escape(value) + ((expiredays == null)? "" : ";expires=" + exdate);
}
