// ### DETECTION BROWSER ###

// Retourne strBrowser=NN si Netscape Navigator ou strBrowser=IE si MSIE
var strBrowser = "IE";
if (navigator.appName.substring(0,8) == "Netscape") strBrowser = "NN";
if (navigator.appName.substring(0,9) == "Microsoft" && navigator.appVersion.indexOf("Win") > 0 ) strBrowser = "IE";

// Detection browser
var browser;
var isIE4 = (document.all) ? true:false; 
if (isIE4) { 
	if (navigator.userAgent.indexOf('MSIE 6') > 0) { 
		browser = 'IE6';
	} else if (navigator.userAgent.indexOf('MSIE 5') > 0) { 
		browser = 'IE5';
	} else {
		browser = 'IE4';
	} 
} else {
	if (navigator.userAgent.indexOf('Netscape/7') > 0) { 
		browser = 'NN7';
	} else if (navigator.userAgent.indexOf('Netscape/6') > 0) { 
		browser = 'NN6';
	} else {
		browser = 'NN4';
	} 
} 

// Détection Mac
var OS;
if (navigator.appVersion.indexOf("Mac") != -1) {
	OS = 'mac'; 
} else {
	OS = 'win'; 
}




// ########## CSS ##########

strUrl = new String(location.href)

if (strUrl.indexOf('ottawaxpress.ca') > 0) {
	domaine = 'xpress';
} else {
	domaine = 'hour';
}

document.write('<link rel="stylesheet" href="/_css/navigation.css" type="text/css" />');
document.write('<script type="text/javascript" language="javascript" src="/JQuery/jquery-1.3.2.min.js"></script>');

	// CSS dynamiques
if (domaine == 'xpress') {

	if (OS == 'win') {
		if ((browser == 'IE4') || (browser == 'IE5') || (browser == 'IE6') || (browser == 'NN6') || (browser == 'NN7')) {
			document.write('<LINK REL="stylesheet" HREF="/_css/xpress_WIN-ie4-ie5-i6-nn6-nn7_MAC-ie5.css" TYPE="text/css">');
		} else if (browser == 'NN4') {
			document.write('<LINK REL="stylesheet" HREF="/_css/xpress_WIN-nn4_MAC-ie4-nn4-nn6-nn7.css" TYPE="text/css">');
		} else {
			document.write('<LINK REL="stylesheet" HREF="/_css/xpress_WIN-ie4-ie5-i6-nn6-nn7_MAC-ie5.css" TYPE="text/css">');
		}
	}
	if (OS == 'mac') {
		if (browser == 'IE5') {
			document.write('<LINK REL="stylesheet" HREF="/_css/xpress_WIN-ie4-ie5-i6-nn6-nn7_MAC-ie5.css" TYPE="text/css">');
		} else if ((browser == 'IE4') || (browser == 'NN4') || (browser == 'NN6') || (browser == 'NN7')) {
			document.write('<LINK REL="stylesheet" HREF="/_css/xpress_WIN-nn4_MAC-ie4-nn4-nn6-nn7.css" TYPE="text/css">');
		} else {
			document.write('<LINK REL="stylesheet" HREF="/_css/xpress_WIN-ie4-ie5-i6-nn6-nn7_MAC-ie5.css" TYPE="text/css">');
		}
	}
} else {
	// CSS dynamiques
	if (OS == 'win') {
		if ((browser == 'IE4') || (browser == 'IE5') || (browser == 'IE6') || (browser == 'NN6') || (browser == 'NN7')) {
			document.write('<LINK REL="stylesheet" HREF="/_css/hour_WIN-ie4-ie5-i6-nn6-nn7_MAC-ie5.css" TYPE="text/css">');
		} else if (browser == 'NN4') {
			document.write('<LINK REL="stylesheet" HREF="/_css/hour_WIN-nn4_MAC-ie4-nn4-nn6-nn7.css" TYPE="text/css">');
		} else {
			document.write('<LINK REL="stylesheet" HREF="/_css/hour_WIN-ie4-ie5-i6-nn6-nn7_MAC-ie5.css" TYPE="text/css">');
		}
	}
	if (OS == 'mac') {
		if (browser == 'IE5') {
			document.write('<LINK REL="stylesheet" HREF="/_css/hour_WIN-ie4-ie5-i6-nn6-nn7_MAC-ie5.css" TYPE="text/css">');
		} else if ((browser == 'IE4') || (browser == 'NN4') || (browser == 'NN6') || (browser == 'NN7')) {
			document.write('<LINK REL="stylesheet" HREF="/_css/hour_WIN-nn4_MAC-ie4-nn4-nn6-nn7.css" TYPE="text/css">');
		} else {
			document.write('<LINK REL="stylesheet" HREF="/_css/hour_WIN-ie4-ie5-i6-nn6-nn7_MAC-ie5.css" TYPE="text/css">');
		}
	}
}


// Evite un bug sur certaines versions de Netscape faisant disparaitre les CSS 
// lors du redimensionnement d'une fenêtre
function WM_netscapeCssFix() {
	if (document.WM.WM_netscapeCssFix.initWindowWidth != window.innerWidth || document.WM.WM_netscapeCssFix.initWindowHeight != window.innerHeight) {
		document.location = document.location;
	}
}

function WM_netscapeCssFixCheckIn() {
	if ((navigator.appName == 'Netscape') && (parseInt(navigator.appVersion) == 4)) {
		if (typeof document.WM == 'undefined') {
			document.WM = new Object;
		}
		if (typeof document.WM.WM_scaleFont == 'undefined') {
			document.WM.WM_netscapeCssFix = new Object;
			document.WM.WM_netscapeCssFix.initWindowWidth = window.innerWidth;
			document.WM.WM_netscapeCssFix.initWindowHeight = window.innerHeight;
		}
		window.onresize = WM_netscapeCssFix;
	}
}

WM_netscapeCssFixCheckIn();

// ########## CSS ##########



// ########## ROLLOVERS ##########

function switchToOn(imgName, sourceName) {
	if (sourceName == null) {
		imgOn = eval(imgName + "ON.src");
	} else {
		imgOn = eval(sourceName + "ON.src");
	}
	document[imgName].src = imgOn;
}

function switchToOff(imgName, sourceName) {
	if (sourceName == null) {
		imgOff = eval(imgName + "OFF.src");
	} else {
		imgOff = eval(sourceName + "OFF.src");
	}
	document[imgName].src = imgOff;
}

// ########## ROLLOVERS ##########



// ######## COMPTEUR TEXTE #######

function textCounter(field, countfield, maxlimit) {
	if (field.value.length > maxlimit) {
		field.value = field.value.substring(0, maxlimit);
	} else {
		countfield.value = maxlimit - field.value.length;
	}
}

// ######## COMPTEUR TEXTE #######



// ######## VALIDATION NUM #######

function isNumeric(strString) {
	var strValidChars = "0123456789";
	var strChar;
	var blnResult = true;
	for (i = 0; i<strString.length && blnResult == true; i++) {
		strChar = strString.charAt(i);
		if (strValidChars.indexOf(strChar) == -1) {
			blnResult = false;
		}
	}
	return blnResult;
}

// ######## VALIDATION NUM #######



// ######## VALIDATION @@@ #######

function checkEmail(strInput) {
	var emailReg = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+[\\w]$";
	var regex = new RegExp(emailReg);
	return regex.test(strInput);
}

// ######## VALIDATION @@@ #######



// ###### FORMULAIRES ######

// Vérifie les entrées de l'usager écrivant un commentaire
function checkCommentaire(intTypeEntree, oChampTitre, oChampCommentaire, oCheckVu, oSelectEtoiles) {

	var isReaction = false;
	var isCommentaire = false;
	var isCourrier = false;
	var strMessage = 'Erreur(s) :\n';
	var strMissingWord = ''
	
	intTypeEntree = Number(intTypeEntree);
	if (intTypeEntree == 1) {
		isReaction = true;
		strMissingWord = 'réaction';
	}
	if (intTypeEntree == 2) {
		isCommentaire = true;
		strMissingWord = 'commentaire';
	}
	if (intTypeEntree == 3) {
		isCourrier = true;
		strMissingWord = 'courrier';
	}
	if (intTypeEntree == 4) {
		isCommentaire = true;
		strMissingWord = 'commentaire';
	}
	
	if (oChampTitre.value == '') {
		strMessage += '- Veuillez s\'il vous plaît compléter le champ "Titre de votre ';
		strMessage += strMissingWord;
		strMessage += '".\n';
	} else if (oChampTitre.value.length > 150) {
		strMessage += '- Le Titre de votre ';
		strMessage += strMissingWord;
		strMessage += ' est trop long. Veuillez corriger s\'il vous plaît.\n';
	} 

	if (oChampCommentaire.value == '') {
		strMessage += '- Veuillez s\'il vous plaît compléter le champ "Votre ';
		strMessage += strMissingWord;
		strMessage += '".\n';
	} else if (oChampCommentaire.value.length > 2000) {
		strMessage += '- Votre ';
		strMessage += strMissingWord;
		strMessage += 'est trop long';
		(isReaction) ? strMessage += 'ue' : strMessage += '';
		strMessage += ' (' + oChampCommentaire.value.length + ' caractères). Veuillez corriger s\'il vous plaît.\n';
	}

	var strTemp = oChampCommentaire.value.toUpperCase();
	if (strTemp.indexOf('<SCRIPT') != -1) {
		strMessage += '- Les scripts sont interdits dans les ';
		strMessage += strMissingWord;
		strMessage += 's! Seuls les liens HTML sont acceptés.\n';
	}

	if (isCommentaire) {
		if (!(oCheckVu[0].checked) && !(oCheckVu[1].checked)) {
			if (intTypeEntree == 2) {
				strMessage += '- Veuillez svp indiquer si vous avez vu ce film ou non.\n';
			} else {
				strMessage += '- Veuillez svp indiquer si vous avez vu ce spectacle ou non.\n';
			}
		}
		if ((oSelectEtoiles.options[oSelectEtoiles.selectedIndex].value == '') && (oCheckVu[0].checked)) {
			strMessage += '- Veuillez svp assigner une cote (1 à 5 étoiles).\n';
		}
	}

	if (strMessage != 'Erreur(s) :\n') {
		alert(strMessage);
		return false;  
	} else {
		return true;
	}

}


// Vérifie les compléments d'info demandés lors de la première participation à une enchère
function  checkComplementInfoEnchere(oIntGroupAge, oIntIDSexe, oIntIDPays, oIntIDProvince, oIntIDRegion, strVille, intTelIndicatif, intTel1, intTel2) {

	var strMessage = 'Erreur(s) :\n';
	
	if (Number(oIntGroupAge.options[oIntGroupAge.selectedIndex].value) == 0) {
		strMessage += '- Veuillez svp indiquer votre groupe d\'âge.\n';
	}
	
	if (!(oIntIDSexe[0].checked) && !(oIntIDSexe[1].checked)) {
		strMessage += '- Veuillez svp indiquer votre sexe.\n';
	}
	
	if (Number(oIntIDPays.options[oIntIDPays.selectedIndex].value) == 0) {
		strMessage += '- Veuillez svp indiquer votre pays.\n';
	} else if (Number(oIntIDPays.options[oIntIDPays.selectedIndex].value) == 40) { // Canada
		if (Number(oIntIDProvince.options[oIntIDProvince.selectedIndex].value) == 0) {
			strMessage += '- Veuillez svp indiquer votre province.\n';
		} else if (Number(oIntIDProvince.options[oIntIDProvince.selectedIndex].value) == 11) { // Québec
			if (Number(oIntIDRegion.options[oIntIDRegion.selectedIndex].value) == 0) { 
				strMessage += '- Veuillez svp indiquer votre région.\n';
			}
		}
	}
	
	if (strVille == '') {
		strMessage += '- Veuillez svp compléter le champ "Ville".\n';
	}
	
	if (((intTelIndicatif == '')) || (intTel1 == '') || (intTel2 == '')) {
		strMessage += '- Veuillez svp entrer votre numéro de téléphone au complet.\n';
	} else {
		if (!isNumeric(intTelIndicatif) || !isNumeric(intTel1) || !isNumeric(intTel2)) {
			strMessage += '- Votre numéro de téléphone n\'est pas correct : seuls les chiffres sont acceptés.\n';
		}
	}
	
	if (strMessage != 'Erreur(s) :\n') {
		alert(strMessage);
		return false;  
	} else {
		return true;
	}
	
}


// Vérifie les renseignements entrés pour une recherche dans le bottin
function checkRechercheBottin(strPrenom, strNom, oIntIDPays, oIntIDProvince, oIntIDRegion, strVille, oIntIDSecteur, strInteret) {

	if ((strPrenom == '') && (strNom == '') && (Number(oIntIDPays.options[oIntIDPays.selectedIndex].value) == 0) && (Number(oIntIDProvince.options[oIntIDProvince.selectedIndex].value) == 0) && (Number(oIntIDRegion.options[oIntIDRegion.selectedIndex].value) == 0) && (strVille == '') && (Number(oIntIDSecteur.options[oIntIDSecteur.selectedIndex].value) == 0) && (strInteret == '')) {
		alert ('Erreur :\nVous devez spécifier au moins un critère de recherche.');
		return false;
	} else {
		return true;
	}

}


// Vérifie les renseignements pour l'abonnement aux bulletins
function checkAbonnementBulletins(strPrenom, strNom, strCourriel, strCourrielConfirme) {
	
	var strMessage = 'Erreur(s) :\n';
	
	if (strPrenom == '') {
		strMessage += 'Veuillez entrer votre prénom.\n';
	}
	
	if (strNom == '') {
		strMessage += 'Veuillez entrer votre nom.\n';
	}
	
	if (strCourriel == '') {
		strMessage += 'Veuillez entrer votre adresse de courriel.\n';
	} else if (!checkEmail(strCourriel)) {
		strMessage += 'Votre adresse de courriel ne semble pas valide.\n';
	} else {
		if (strCourrielConfirme == '') {
			strMessage += 'Veuillez confirmer votre adresse de courriel.\n';
		} else if (strCourriel != strCourrielConfirme) {
			strMessage += 'Votre adresse de courriel ne correspond pas à votre confirmation.\n';
		}
	}
	
	if (strMessage != 'Erreur(s) :\n') {
		alert(strMessage);
		return false;  
	} else {
		return true;
	}
	
}


// Vérifie les entrées lors de la modif du profil : renseignements indispensables
function checkModifierIndispensables(strPrenom, strNom, strCourriel, strCourrielConfirme) {
	return checkAbonnementBulletins(strPrenom, strNom, strCourriel, strCourrielConfirme);
}


// Vérifie l'entrée lors de l'upload d'une photo
function checkPhoto(strPhoto, strReturnURL) {
	if (strPhoto == '') {
		var isConfirmed = confirm ('Attention!\nSi vous laissez ce champ vide et qu\'une photo fait actuellement\npartie de votre profil celle-ci sera effacée.\nVoulez-vous continuer?');
		if (isConfirmed) {
			return true;
		} else {
			self.location.href = strReturnURL;
			return false;
		}
	} else {
		return true;
	}
}

// Vérifie les entrées du formulaire "Contactez-nous"
function checkContactezNous(strNom, strAdresseCourriel, strTitre, strMessage) {

	var strMessageErreur = 'Erreur(s) :\n';
	
	if (strNom == '') {
		strMessageErreur += 'Veuillez entrer votre nom.\n';
	}
	
	if (strAdresseCourriel == '') {
		strMessageErreur += 'Veuillez entrer votre adresse de courriel.\n';
	} else if (!checkEmail(strAdresseCourriel)) {
		strMessageErreur += 'Votre adresse de courriel ne semble pas valide.\n';
	}
	
	if (strTitre == '') {
		strMessageErreur += 'Veuillez entrer un titre.\n';
	}
	
	if (strMessage == '') {
		strMessageErreur += 'Veuillez entrer votre message.\n';
	}
	
	if (strMessageErreur != 'Erreur(s) :\n') {
		alert(strMessageErreur);
		return false;  
	} else {
		return true;
	}
	
}


// Vérifie les entrées lors de l'inscription membres

function checkDevenezMembre(strPrenom, strNom, strCourriel, strCourrielConfirme, oIntGroupAge, oIntIDSexe, oIntIDPays, oIntIDProvince, oIntIDRegion, strVille, intTelIndicatif, intTel1, intTel2) {

	var strMessage = 'Erreur(s) :\n';
	
	/*
	I.
	Première partie du formulaire : infos obligatoires
	*/
	
	if (strPrenom == '') {
		strMessage += 'Veuillez entrer votre prénom.\n';
	}
	
	if (strNom == '') {
		strMessage += 'Veuillez entrer votre nom.\n';
	}
	
	if (strCourriel == '') {
		strMessage += 'Veuillez entrer votre adresse de courriel.\n';
	} else if (!checkEmail(strCourriel)) {
		strMessage += 'Votre adresse de courriel ne semble pas valide.\n';
	} else {
		if (strCourrielConfirme == '') {
			strMessage += 'Veuillez confirmer votre adresse de courriel.\n';
		} else if (strCourriel != strCourrielConfirme) {
			strMessage += 'Votre adresse de courriel ne correspond pas à votre confirmation.\n';
		}
	}
	
	/*
	II.
	Deuxième partie du formulaire : infos obligatoires pour les enchères. 
	On suppose que si l'usager a rempli au moins un champ il veut remplir cette partie du formulaire donc on check tout.
	*/

	if ((Number(oIntGroupAge.options[oIntGroupAge.selectedIndex].value) != 0) || (oIntIDSexe[0].checked) || (oIntIDSexe[1].checked) || (Number(oIntIDPays.options[oIntIDPays.selectedIndex].value) != 0) || (Number(oIntIDProvince.options[oIntIDProvince.selectedIndex].value) != 0) || (Number(oIntIDRegion.options[oIntIDRegion.selectedIndex].value) != 0) || (strVille != '') || (intTelIndicatif != '') || (intTel1 != '') || (intTel2 != '')) {
		
		if (Number(oIntGroupAge.options[oIntGroupAge.selectedIndex].value) == 0) {
			strMessage += '- Veuillez svp indiquer votre groupe d\'âge.\n';
		}
	
		if (!(oIntIDSexe[0].checked) && !(oIntIDSexe[1].checked)) {
			strMessage += '- Veuillez svp indiquer votre sexe.\n';
		}
	
		if (Number(oIntIDPays.options[oIntIDPays.selectedIndex].value) == 0) {
			strMessage += '- Veuillez svp indiquer votre pays.\n';
		} else if (Number(oIntIDPays.options[oIntIDPays.selectedIndex].value) == 40) { // Canada
			if (Number(oIntIDProvince.options[oIntIDProvince.selectedIndex].value) == 0) {
				strMessage += '- Veuillez svp indiquer votre province.\n';
			} else if (Number(oIntIDProvince.options[oIntIDProvince.selectedIndex].value) == 11) { // Québec
				if (Number(oIntIDRegion.options[oIntIDRegion.selectedIndex].value) == 0) { 
					strMessage += '- Veuillez svp indiquer votre région.\n';
				}
			}
		}
		
		if (strVille == '') {
			strMessage += '- Veuillez svp compléter le champ "Ville".\n';
		}
		
		if (((intTelIndicatif == '')) || (intTel1 == '') || (intTel2 == '')) {
			strMessage += '- Veuillez svp entrer votre numéro de téléphone au complet.\n';
		} else {
			if (!isNumeric(intTelIndicatif) || !isNumeric(intTel1) || !isNumeric(intTel2)) {
				strMessage += '- Votre numéro de téléphone n\'est pas correct : seuls les chiffres sont acceptés.\n';
			}
		}
	
	}
	
  if (strMessage != 'Erreur(s) :\n') {
		alert(strMessage);
    return false;  
  } else {
		return true;
	}

}


// Vérifie les entrées lors d'une ouverture de session
function checkOuvrirSession(strCourriel, strPassword) {

	var strMessageErreur = 'Erreur(s) :\n';
	
	if (strCourriel == '') {
		strMessageErreur += 'Veuillez entrer votre adresse de courriel.\n';
	} else if (!checkEmail(strCourriel)) {
		strMessageErreur += 'Votre adresse de courriel ne semble pas valide.\n';
	}
	
	if (strPassword == '') {
		strMessageErreur += 'Veuillez entrer votre mot de passe.\n';
	}
	
	if (strMessageErreur != 'Erreur(s) :\n') {
		alert(strMessageErreur);
		return false;  
	} else {
		return true;
	}

}


// Clean du champ recherche
var isCleaned = false;
function  cleanRecherche(oChampRecherche) {
	if (!isCleaned) {
		oChampRecherche.value = '';
		isCleaned = true;
	}
}


// ###### FORMULAIRES ######



// ######## POP-UPS ########

function popupMap(strPage, intWidth, intHeight, strOptions) {
	var intTop = (screen.height-intHeight)/2;
	var intLeft = (screen.width-intWidth)/2;
	window.open(strPage, "", "top=" + intTop + ",left=" + intLeft + ",width=" + intWidth + ",height=" + intHeight + "," + strOptions);
}

var oTrailerWindow = '';
function openTrailerWindow(strURLTrailer, strFilmTitle) {
	self.name = "MainWindow";
	strURL = '/cinema/trailers.aspx?URL=' + escape(strURLTrailer) + '&Film=' + escape(strFilmTitle);
	if (oTrailerWindow.location && !oTrailerWindow.closed) {
		oTrailerWindow.location.href = strURL;
	} else {
		intDimX = 550;
		intDimY = 510;
		if (strBrowser = "IE") intDimY = intDimY-0; //correction pour MSIE
		strFeatures = "top=0,left=0,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=" + intDimX + ",height=" + intDimY;
		oTrailerWindow = window.open(strURL, 'Trailers', strFeatures);
		if (!oTrailerWindow.opener) oTrailerWindow.opener = self;
	}
	if (window.focus) oTrailerWindow.focus();
}

function popupallrightsreserved(page)
{
window.open(page,'', 'top=50, left=200, width=500, height=350, resizable=yes, toolbar=no, scrollbars=no, status=yes'); 
}

// ######## POP-UPS ########