﻿////////////////////////////////////
// Detect Bowser name and version //
////////////////////////////////////
var BROWSER =navigator.appName;
var BROWSER_VERSION =parseFloat(navigator.appVersion);
var CONTACT_NAME;
var NUM_MENUS = 8;
var MENU_COLOR_ACTIVE_1 = "white";
var MENU_COLOR_ACTIVE_2 = "white";
var ARROWS_IN_MENU = false;
var PROFESSION_EN = "Luxury wines";
var PROFESSION_FR = "Vins de luxe";
var PROFESSION_ES = "Vinos de lujo";
var PROFESSION_CH = "奢华葡萄酒";
var ARTIST_NAME_EN = "Béard la Chapelle";
var ARTIST_NAME_FR = "Béard la Chapelle";
var ARTIST_NAME_ES = "Béard la Chapelle";
var ARTIST_NAME_CH = "Béard la Chapelle";
var FRAMED = false;

var MajeurPourVisiter_fr = "Pour visiter ce site,<br/>vous devez avoir l'âge légal pour consommer des boissons alcoolisées";
var MajeurPourVisiter_en = "To visit this site,<br/>you should be legally old enough to consume alcohol";
var MajeurPourVisiter_es = "Para visitar este sitio,<br/>debe tener la edad legal para consumir bebidas alcoholizadas"; 
var MajeurPourVisiter_ch = "浏览此网站,请确保已符合法定饮酒年龄"; 
var MajeurJeCertifieQue_fr = "Je certifie que j'ai l'âge légal pour la consommation d'alcool dans mon pays de résidence.";
var MajeurJeCertifieQue_en = "I certify I am old enough to consume alcohol in my country of residence.";
var MajeurJeCertifieQue_es = "Certifico que tengo la edad legal para consumir alcohol en mi país de residencia";
var MajeurJeCertifieQue_ch = "我承诺本人已符合本国的法定饮酒年龄";
var MajeurVousDevezCertifier_fr = "Vous devez certifier que vous êtes majeur pour accéder au site";
var MajeurVousDevezCertifier_en = "You must certify you are old enough to enter";
var MajeurVousDevezCertifier_es = "Debe certificar que es mayor de edad para acceder al sitio";
var MajeurVousDevezCertifier_ch = "您应证明本人已具备浏览此网站年龄";

function SetMajeurInFrench()
{
	document.getElementById("spanMajeurPourVisiter").innerHTML = MajeurPourVisiter_fr;
	document.getElementById("spanMajeurJeCertifieQue").innerHTML = MajeurJeCertifieQue_fr;
	document.getElementById("spanNotMajeur").innerHTML = MajeurVousDevezCertifier_fr;
}

function SetMajeurInEnglish()
{
	document.getElementById("spanMajeurPourVisiter").innerHTML = MajeurPourVisiter_en;
	document.getElementById("spanMajeurJeCertifieQue").innerHTML = MajeurJeCertifieQue_en;
	document.getElementById("spanNotMajeur").innerHTML = MajeurVousDevezCertifier_en;
}

function SetMajeurInSpanish()
{
	document.getElementById("spanMajeurPourVisiter").innerHTML = MajeurPourVisiter_es;
	document.getElementById("spanMajeurJeCertifieQue").innerHTML = MajeurJeCertifieQue_es;
	document.getElementById("spanNotMajeur").innerHTML = MajeurVousDevezCertifier_es;
}

function SetMajeurInChinese()
{
	document.getElementById("spanMajeurPourVisiter").innerHTML = MajeurPourVisiter_ch;
	document.getElementById("spanMajeurJeCertifieQue").innerHTML = MajeurJeCertifieQue_ch;
	document.getElementById("spanNotMajeur").innerHTML = MajeurVousDevezCertifier_ch;
}


msie = (BROWSER == "Microsoft Internet Explorer") ? true : false;
ns = (BROWSER == "Netscape") ? true : false;

//alert ("Browser name: "+ BROWSER + "\r\n" + "Browser version: "+ BROWSER_VERSION);


////////////////////////////
// Audio player functions //
////////////////////////////
function openPlayer(_file){
	window.open(_file,"player","width=500, height=364, location=no");
}

function DisplayAudioPlayer_old(_TARGET,_audiofile, _workname) {
	if (_audiofile == "") {
		findDOM(_TARGET).innerHTML = "";
		return;
	}
	var _player = "";
	_player += '<u>' + _workname +'</u><br />';
	// Appearence depends on browser...
	if (navigator.appName == "Netscape") {
		_player += '<object type="application/x-shockwave-flash" data="audio/player.swf" id="audioplayer" height="24" width="240">';
		_player += '<param name="movie" value="' + _audiofile + '">';
		_player += '<param name="FlashVars" value="playerID=1&amp;bg=0xf8f8f8&amp;leftbg=0xeeeeee&amp;lefticon=0x666666&amp;rightbg=0xcccccc&amp;rightbghover=0x999999&amp;righticon=0x666666&amp;righticonhover=0xffffff&amp;text=0x666666&amp;slider=0x666666&amp;track=0xFFFFFF&amp;border=0x666666&amp;loader=0x9FFFB8&amp;';
		_player += 'soundFile=' + _audiofile + '">';
		_player += '<param name="quality" value="high"><param name="menu" value="false"><param name="bgcolor" value="#FFFFFF">';
		_player += '</object>';
	} else {
		_player += '<a href="' + _audiofile + '" target="_blank">';
		_player += '<img src="./audio/speaker.gif" border="0" alt="' + ARTIST_NAME_FR + '" width="14" height="14" />';
		_player += ' MP3</a>';
	}
	_player += "<br /><br />";
	findDOM(_TARGET).innerHTML = _player;
}

function DisplayAudioPlayer(_TARGET,_audiofile, _workname) {
	if (_audiofile == "") {
		findDOM(_TARGET).innerHTML = "";
		return;
	}
	var _player = "";
	_player += '<u>' + _workname +'</u><br />';
	_player += '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" ';
	_player += 'width="200" height="20" id="dewplayer" align="middle">';
	_player += '<param name="wmode" value="transparent">';
	_player += '<param name="allowScriptAccess" value="sameDomain" />';
	_player += '<param name="movie" value="audio/dewplayer.swf?mp3=' + _audiofile + '&amp;showtime=1&amp;volume=60&amp;bgcolor=00FF00" />';
	_player += '<param name="quality" value="high" />';
	_player += '<param name="bgcolor" value="FF0000" />';
	_player += '<embed src="audio/dewplayer.swf?mp3=' + _audiofile + '&amp;showtime=1&amp;volume=60" quality="high" bgcolor="FF0000" width="200" height="20" name="dewplayer" wmode="transparent" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer">';
	_player += '</embed></object>';
	_player += '<br /><br />';
	findDOM(_TARGET).innerHTML = _player;
}


/////////////////////////////////////////
// Menu links / page display functions //
/////////////////////////////////////////

function showDiv(_TARGET,_show) {
	findDOM(_TARGET).style.display = _show;
}

function ProfessionLanguage(_lang) {
	var _artist_name = "<span xml:lang='"+_lang+"'>";
	var _profession = "<span xml:lang='"+_lang+"'>";
	switch (_lang) {
		case "en":
			_profession += PROFESSION_EN;
			_artist_name += ARTIST_NAME_EN;
			break;
		case "es":
			_profession += PROFESSION_ES;
			_artist_name += ARTIST_NAME_ES;
			break;
		case "ch":
			_profession += PROFESSION_CH;
			_artist_name += ARTIST_NAME_CH;
			break;
		case "fr":
		default:
			_profession += PROFESSION_FR;
			_artist_name += ARTIST_NAME_FR;
			break;
		}
	_artist_name += "</span>";
	_profession += "</span>";
	//findDOM("PROFESSION").innerHTML = _profession;
	//findDOM("ARTIST_NAME").innerHTML = _artist_name;
}

function SetActive(_menu) {
	// Initialize all menus
	for (var i=0; i<=NUM_MENUS; i++) {
		findDOM("menu" + i).className = (i <= 9) ? "menu" : "menu_bottom";
		if (ARROWS_IN_MENU) {
			findDOM("menu" + i + "_arrow").style.display = "none";
		}
	}
	// Set _menu with appropriate decoration
	// If we've been passed a string, we need to extract its number...
	var _menu_num = "0";
	
	if (isNaN(_menu)) {
		_menucha = _menu.replace("&","&amp;");
		for (var i=0; i<=NUM_MENUS; i++) {

			if (findDOM("menu" + i).innerHTML == _menucha) {
				
				_menu_num = i + '';
				break;
			}
		}
	} else {
		_menu_num = _menu;
	}
	// Now we're fine, we have a number in _menu_num
	findDOM("menu" + _menu_num).style.color = (_menu_num <= 9) ? MENU_COLOR_ACTIVE_1 : MENU_COLOR_ACTIVE_2;
	findDOM("menu" + _menu_num).style.textDecoration = "none";
	if (ARROWS_IN_MENU) {
		findDOM("menu" + _menu_num + "_arrow").style.display = "";
		findDOM("menu" + _menu_num + "_arrow").style.color = (_menu_num <= 9) ? MENU_COLOR_ACTIVE_1 : MENU_COLOR_ACTIVE_2;
	}
}

//////////////////////////////
// AJAX Calls and Callbacks //
//////////////////////////////

XHRTarget = "";
XHR = getXHRObject();

// Get singleton XML HTTP Request object
function getXHRObject() {
	var XHR;
	
	// We try to create the object if it does not exist
	if (!XHR && typeof XMLHttpRequest != 'undefined') {
		try {
				XHR = new XMLHttpRequest();
		} catch (e) {
				XHR = false;
		}
	}
	return XHR;
}

// Call for Doc in its language
function GetDoc(_TARGET,_docname,_lang, _dir) {
	XHR=getXHRObject();
	if (!_dir) {_dir = "./";}
	if (XHRTarget == "") {
		// Make sure the TARGET_AREA is visible
		if (findDOM(_TARGET+"_AREA")) {findDOM(_TARGET+"_AREA").style.display = '';}
		XHR.onreadystatechange = Display;
		XHR.open('GET', _dir + "get_doc_XML.php?D="+_docname+"_"+_lang, true);
		XHRTarget=_TARGET;
		XHR.send(null);
	}
}

// Callback for display in XHRTarget
function Display() {
	if (!XHR) {
		alert("XHR is not defined for " + XHRTarget);
		return;
	}
	if (XHR.readyState == 4) {
		if (XHR.status == 200) {
			//alert(XHR.responseText);
			var oNodeList;
			var _item;
			var _html;
			var _lang = "";
			var _en = false;
			var _fr = false;
			var _es = false;
			var _ch = false;
			var _docname = "";
			
			oNodeList = XHR.responseXML.documentElement.childNodes;
			for (var i=0; i<oNodeList.length; i++) {
				_item = oNodeList.item(i);
				switch (_item.nodeName) {
					case "#cdata-section":
						_html = _item.data;
						if (XHRTarget == "CONTACT_FORM") {
							// Replace the webmaster with the name of the contact
							// Do it twice, for bug reasons...
							_html = _html.replace(/the webmaster/,CONTACT_NAME);
							_html = _html.replace(/the webmaster/,CONTACT_NAME);
						}
						//alert ("Searching XHRTarget = " + XHRTarget);
						findDOM(XHRTarget).innerHTML = _html;
						break;
					case "docname":
						_docname = _item.firstChild.data;
						break;
					case "message":
						//alert(_item.firstChild.data);
						//findDOM(XHRTarget).innerHTML += _item.firstChild.data;
						break;
					case "action":
						// Execute next action 300 milliseconds after this function returns
						if (_item.firstChild.data != "") {
							//alert("We got an action :" + _item.firstChild.data);
							setTimeout(_item.firstChild.data, 300);
						}
						break;
					default:
						break;
				}
			}
		} else {
			alert('Display error: Could not find file to display in this language for area ' + XHRTarget + ".");
		}
		XHRTarget="";
	}
}


/////////////////////////
// Functions for SCOOP //
/////////////////////////
function PublishDoc() {
	var docname = findDOM("DOC_NAME").value;
	var doclang = findDOM("DOC_LANG").value;
	var docstatus = findDOM("DOC_STATUS").innerHTML;
	if (docname == "") {
		alert("Attention : Il faut donner un nom à ce document avant de pour pouvoir le publier !");
		return;
	}
	if (docstatus == "New") {
		alert("Attention : ce n'est pas possible de publier un document nouveau. Les documents sont reliés entre eux sur le site, et il ne faut pas ajouter des fichiers orphelins.\r\nC'est Fred qui placera les nouveaux fichiers sur le site !");
		return;
	}
	if (!confirm("ATTENTION: La publication remplace le fichier actuellement sur le site par celui-ci !\r\n\r\nDocument : '"+docname+"'\r\nLangue : '"+doclang+"'\r\nStatut : '"+docstatus+"'\r\n\r\nConfirmes-tu ce choix ?")) return;
	findDOM("ACTION").value = "Publish";
	tinyMCE.triggerSave();
	findDOM("DOC_FORM").submit();
}

function SaveDoc() {
	var docname = findDOM("DOC_NAME").value;
	var doclang = findDOM("DOC_LANG").value;
	var docstatus = findDOM("DOC_STATUS").innerHTML;
	if (docname == "") {
		alert("Attention : Il faut donner un nom à ce document avant de pour pouvoir l'enregistrer !");
		return;
	}
	if (!confirm("Création / modification d'un document.\r\n\r\nDocument : '"+docname+"'\r\nLangue : '"+doclang+"'\r\nStatut : '"+docstatus+"'\r\n\r\nConfirmes-tu ce choix ?")) return;
	findDOM("ACTION").value = "Save";
	tinyMCE.triggerSave();
	findDOM("DOC_FORM").submit();
}

function GetAndViewDoc(_TARGET,_docfullname,_lang, _dir, _docname, _label) {
	GetDoc(_TARGET,_docfullname,_lang, _dir);
	findDOM("VIEWDOC_NAME").innerHTML = _docname;
	findDOM("VIEWDOC_LANG").innerHTML = _lang;
	findDOM("VIEWDOC_STATUS").innerHTML = _label;
	findDOM("VIEWDOC_MODIFIED").innerHTML = '';
}

function ViewDoc() {
	findDOM("VIEWDOC_CONTENT_AREA").style.display = '';
	var docname = findDOM("DOC_NAME").value;
	findDOM("VIEWDOC_NAME").innerHTML = (docname != "") ? docname : "<font style='color:red'>Ce document est temporaire et n'a pas de nom</font>";
	findDOM("VIEWDOC_LANG").innerHTML = findDOM("DOC_LANG").value;
	findDOM("VIEWDOC_STATUS").innerHTML = findDOM("DOC_STATUS").innerHTML;
	findDOM("VIEWDOC_MODIFIED").innerHTML = "<font style='color:red'>Modifié</font>";
	findDOM("VIEWDOC_CONTENT").innerHTML = tinyMCE.getContent();
}

function EditDoc() {
	tinyMCE.setContent(findDOM("VIEWDOC_CONTENT").innerHTML);
	var _lang = findDOM("VIEWDOC_LANG").innerHTML;
	var _name = findDOM("VIEWDOC_NAME").innerHTML;
	var _status = findDOM("VIEWDOC_STATUS").innerHTML;
	if (_lang == "en") findDOM("DOC_LANG").selectedIndex = 0;
	if (_lang == "fr") findDOM("DOC_LANG").selectedIndex = 1;
	findDOM("DOC_LANG_ORIG").value = _lang;
	findDOM("DOC_NAME").value = _name
	findDOM("DOC_NAME_ORIG").value = _name;
	findDOM("DOC_STATUS").innerHTML = _status;
	findDOM("DOC_STATUS_ORIG").value = _status;
}

function CheckDocChange() {
	if ((findDOM("DOC_LANG_ORIG").value != findDOM("DOC_LANG").value)
		|| (findDOM("DOC_NAME_ORIG").value != findDOM("DOC_NAME").value)) {
			findDOM("DOC_STATUS").innerHTML = "New";
	} else {
		findDOM("DOC_STATUS").innerHTML = findDOM("DOC_STATUS_ORIG").value;
	}
}

function findDOM(objectID) {
	//alert ("Looking for objectID " + objectID);
	if (FRAMED) {
		// Look for the object in all the frames if not found in the current frame !
		if (ns) {
			if (document.getElementById(objectID)) {return (document.getElementById(objectID));}
			else if (parent.frametop.document.getElementById(objectID)) {return (parent.frametop.document.getElementById(objectID));}
			else if (parent.framecontent.document.getElementById(objectID)) {return (parent.framecontent.document.getElementById(objectID));}
			else if (parent.framemenu.document.getElementById(objectID)) {return (parent.framemenu.document.getElementById(objectID));}
		} else {
			if (document.all[objectID]) {return (document.all[objectID]);}
			else if (parent.frametop.document.all[objectID]) { return (parent.frametop.document.all[objectID]);}
			else if (parent.framecontent.document.all[objectID]) { return (parent.framecontent.document.all[objectID]);}
			else if (parent.framemenu.document.all[objectID]) { return (parent.framemenu.document.all[objectID]);}
		}
	}
	else {
		if (ns) {
			if (document.getElementById(objectID)) {return (document.getElementById(objectID));}
		} else {
			if (document.all[objectID]) {return (document.all[objectID]);}
		}
	}
}


////////////////////////////
// Mail sending functions //
////////////////////////////

function CheckContactForm(lg) {
	
	cptErr = 0;
	
	var nom = document.forms.ContactForm.elements['NAME'].value;
	if (nom.length == 0) {
		findDOM("tdnom").style.color = "#cc0000";
		cptErr += 1;
	}else { findDOM("tdnom").style.color = "#cccccc"; }
	
	var prenom = document.forms.ContactForm.elements['SURNAME'].value;
	if (prenom.length == 0) {
		findDOM("tdprenom").style.color = "#cc0000";
		cptErr += 1;
	}else { findDOM("tdprenom").style.color = "#cccccc"; }
	
	var pays = document.forms.ContactForm.elements['COUNTRY'].value;
	if (pays.length == 0) {
		findDOM("tdpays").style.color = "#cc0000";
		cptErr += 1;
	}else { findDOM("tdpays").style.color = "#cccccc"; }
	
	var email = document.forms.ContactForm.elements['EMAIL'].value;
	if (email.length == 0) {
		findDOM("tdcourriel").style.color = "#cc0000";
		cptErr += 1;
	}else { findDOM("tdcourriel").style.color = "#cccccc"; }
	
	var message = document.forms.ContactForm.elements['MESSAGE'].value;
	if (message.length == 0) {
		findDOM("tdmessage").style.color = "#cc0000";
		cptErr += 1;
	}else { findDOM("tdmessage").style.color = "#cccccc"; }
	
	if (cptErr > 0)
	{
		 if (lg=="fr")
		 {
		 	 if (cptErr > 1)
		 	 {
		 	 	  displayMessage("true","Les champs marqués d'un astérisque sont obligatoires");
		 	 }
		 	 else
		 	 {
		 	 		displayMessage("true","Ce champ marqué d'un astérisque est obligatoire");
		 	 }
		 }
		 else if (lg=="en")
		 {
		 	 if (cptErr > 1)
		 	 {
		 	 		displayMessage("true","Asterisked fields are mandatory");
		 	 }
		 	 else
		 	 {
		 	 		displayMessage("true","This asterisked field is mandatory");
		 	 }
		 }
		 else if (lg=="es")
		 {
		 	 if (cptErr > 1)
		 	 {
		 	 		displayMessage("true","Los campos con asterisco son obligatorios");
		 	 }
		 	 else
		 	 {
		 	 		displayMessage("true","Este campo marcado con un asterisco es obligatorio");
		 	 }
		 }
		 else if (lg=="ch")
		 {
		 	 if (cptErr > 1)
		 	 {
		 	 		displayMessage("true","星号区域必填");
		 	 }
		 	 else
		 	 {
		 	 		displayMessage("true","星号必填");
		 	 }
		 }
		 return false;
	}
	else
	{
		displayMessage("false","");
	}
	
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!filter.test(email)) {
		findDOM("tdcourriel").style.color = "#cc0000";
		if (lg == "fr")
		{
			displayMessage("true","L'adresse e-mail renseignée a un format incorrect");
		}
		else if (lg == "en")
		{
			displayMessage("true","Email address format is not valid");
		}
		else if (lg == "es")
		{
			displayMessage("true","La dirección email indicada tiene un formato incorrecto");
		}
		else if (lg == "ch")
		{
			displayMessage("true","邮件地址错误");
		}
			
		return false;
	}
	else
	{
		displayMessage("false","");
	}
	
	return true;
}

function SendEmail(lg) {

	var _to = document.forms.ContactForm.elements['TO'].value;
	var _name = document.forms.ContactForm.elements['NAME'].value;
	var _surname = document.forms.ContactForm.elements['SURNAME'].value;
	var _adress = document.forms.ContactForm.elements['ADRESS'].value;
	var _postalcode = document.forms.ContactForm.elements['POSTALCODE'].value;
	var _country = document.forms.ContactForm.elements['COUNTRY'].value;
	var _tel1 = document.forms.ContactForm.elements['TELEPHONE1'].value;
	var _tel2 = document.forms.ContactForm.elements['TELEPHONE2'].value;
	var _email = document.forms.ContactForm.elements['EMAIL'].value;
	var _message = document.forms.ContactForm.elements['MESSAGE'].value;

	var _url = "TO="+_to+"&NAME="+_name+ "&SURNAME="+_surname + "&ADRESS="+_adress + "&POSTALCODE="+_postalcode + "&COUNTRY="+_country + "&TEL1="+ _tel1 + "&TEL2="+_tel2  +"&EMAIL="+_email + "&MESSAGE="+_message + "&LG=" + lg;
	
	_url = escape(_url);
	_url = _url.replace(/'/g, "\\'");
	_url = _url.replace(/"/g, '\\"');
	_url = _url.replace(/[+]/g, '%2B');
	_url = "./send_email.php?" + _url;
	
	XHR=getXHRObject();
	if (XHRTarget == "") {
		XHR.onreadystatechange = DisplayContactConfirm;
		XHR.open('GET', _url, true);
		XHRTarget="CONTACT_CONFIRM";
		XHR.send(null);
	}
	
	findDOM("CONTACT_CONFIRM_DIV").style.display = "none";
}

// Callback for SendEmail in XHRTarget
function DisplayContactConfirm() {
	if (XHR.readyState == 4) {
		if (XHR.status == 200) {
			//alert(XHR.responseText);
			var oNodeList;
			var _item;
			oNodeList = XHR.responseXML.documentElement.childNodes;
			for (var i=0; i<oNodeList.length; i++) {
				_item = oNodeList.item(i);
				switch (_item.nodeName) {
					case "#cdata-section":
						//alert("Found cdata section. Content = " + _item.data);
						findDOM(XHRTarget).innerHTML = _item.data;
						break;
				}
			}
			// findDOM(XHRTarget).innerHTML = XHR.responseXML.documentElement.childNodes.item(0).data;
		} else {
			alert('ConfirmEmailSent error.');
		}
		XHRTarget="";
	}
}

////////////////////////////////////
// Character formatting functions //
////////////////////////////////////

// Replace all the occurences of a string
function ReplaceStr(_str, _search, _repl) {
	while (_str.indexOf(_search) != -1)
	_str = _str.replace(_search, _repl);
	return _str;
}

// Replace all accentuated chars by their non-accentuated equivalent
// Also, replace spaces with underscores
function NoAccent(_str) {
	var _norm = new Array(' ','À','Á','Â','Ã','Ä','Å','Æ','Ç','È','É','Ê','Ë','Ì','Í','Î','Ï', 'Ð','Ñ','Ò','Ó','Ô','Õ','Ö','Ø','Ù','Ú','Û','Ü','Ý','Þ','ß', 'à','á','â','ã','ä','å','æ','ç','è','é','ê','ë','ì','í','î','ï','ð','ñ', 'ò','ó','ô','õ','ö','ø','ù','ú','û','ü','ý','ý','þ','ÿ');
	var _spec = new Array('_','A','A','A','A','A','A','A','C','E','E','E','E','I','I','I','I', 'D','N','O','O','O','0','O','O','U','U','U','U','Y','b','s', 'a','a','a','a','a','a','a','c','e','e','e','e','i','i','i','i','d','n', 'o','o','o','o','o','o','u','u','u','u','y','y','b','y');
	for (var i = 0; i < _spec.length; i++)
	_str = ReplaceStr(_str, _norm[i], _spec[i]);
	return _str;
}

function Set_Cookie( name, value, expires, path, domain, secure )
{
	// set time, it's in milliseconds
	var today = new Date();
	today.setTime( today.getTime() );
	
	/*
	on fait exister le cookie 5 jours
	*/
	if ( expires )
	{
		expires = expires * 1000 * 60 * 60 * 24 * 5;
	}
	var expires_date = new Date( today.getTime() + (expires) );
	
	document.cookie = name + "=" +escape( value ) +
	( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
	( ( path ) ? ";path=" + path : "" ) +
	( ( domain ) ? ";domain=" + domain : "" ) +
	( ( secure ) ? ";secure" : "" );
}

// this fixes an issue with the old method, ambiguous values
// with this test document.cookie.indexOf( name + "=" );
function Get_Cookie( check_name )
{
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; // set boolean t/f default f

	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split( '=' );


		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');

		// if the extracted name matches passed check_name
		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}

// this deletes the cookie when called
function Delete_Cookie( name, path, domain )
{
	if ( Get_Cookie( name ) ) document.cookie = name + "=" +
	( ( path ) ? ";path=" + path : "") +
	( ( domain ) ? ";domain=" + domain : "" ) +
	";expires=Thu, 01-Jan-1970 00:00:01 GMT";
}

function GetQueryName() 
{
	var pathna = location.pathname.substr(1,location.pathname.length -1);
	return pathna;
}

function resize()
{  
		//alert(document.body.scrollHeight);
		// mozilla : window.scrollMaxY document.body.scrollHeight;   document.body.offsetHeight;

		var nav = navigator.appName;
		var windowheight;
		var windowwidth;
		
		if (nav == "Microsoft Internet Explorer")
		{
			windowheight = document.body.clientHeight;
			windowwidth = document.body.clientWidth;
		}
		else
		{
			if (document.body.scrollHeight != window.innerHeight)
			{
				windowheight = document.body.scrollHeight;
			}
			else
			{
				windowheight = window.innerHeight;
			}
			 
			windowwidth = window.innerWidth; 
		}
		
		//alert(window.innerHeight);  
		//alert(document.body.clientHeight);     
		//alert(window.innerWidth);  
		//alert(document.body.clientWidth);  
		
		var creditsPhotosPresence = false;
	  var heightEnPlus = 0;
		if(document.getElementById('urlFrench').value == "accueil")
		{
			creditsPhotosPresence = true;
			heightEnPlus = 21;
		}   
		
		if ( 1200 > windowheight ) 
		{ 
			//alert("1 : " + windowheight);
			document.getElementById("divConteneur").style.height = windowheight - heightEnPlus + "px";
			
			if (nav != "Microsoft Internet Explorer")
			{
					windowheight = windowheight - 30;
			}
			
					document.getElementById("divArticle").style.height = windowheight - heightEnPlus + "px";
		}
		else
		{
			//alert("2 : " + windowheight);
			document.getElementById("divConteneur").style.height =  1200 - heightEnPlus + "px";
		  document.getElementById("divArticle").style.height =  1200 - heightEnPlus + "px";
		} 
		
		//if(navigator.userAgent.match(/iPhone/i)){
		//	document.getElementById("divConteneur").style.height =  "800px";
		//	document.getElementById("divArticle").style.height =  "800px";
		//}

		var diff = 0;
		if (windowwidth > 512)
		{
			diff = (windowwidth - 1024)/2;
			if (diff < 0)
			{
				diff = 0;
			}
			
			var toto = "0 " +diff + " 0 0";
			document.getElementById("divConteneur").style.margin = "0 " +diff + " 0 0";
		}
		
		
} 

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

function doOnload()
{
	if (navigator.appName == 'Microsoft Internet Explorer') 
	{
		resize();
	};
	
	if (GetQueryName() == 'localization' || GetQueryName() == 'localisation' || GetQueryName() == 'localizacion' || GetQueryName() == 'diliweizhi')
	{
	 	onLoad();
 }; 	
}

function displayMessage(displ,texte)
{
	var lab = findDOM("spanInfoErreurs");
	
	if (displ == "true")
	{
		lab.innerHTML = texte + "<br/>";
		lab.style.display = "block";
	}
	else
	{
		lab.innerHTML = "";
		lab.style.display = "none";
	}
}
	



