var isDOM = (document.getElementById ? true : false);
var isIE4 = ((document.all && !isDOM) ? true : false);
var isNS4 = (document.layers && window.innerWidth ? true : false);
var buffer = '';
var MenuAWidth = 0;
var MenuBWidth = 0;
var preload = Array();
preload[0] = new Image();
preload[0].src = '/optim/en/send-photo-o.jpg';
preload[1] = new Image();
preload[1].src = '/optim/fr/send-photo-o.jpg';
preload[2] = new Image();
preload[2].src = '/optim/concessionnaires/yk.gif';
preload[3] = new Image();
preload[3].src = '/optim/concessionnaires/nf.gif';
preload[4] = new Image();
preload[4].src = '/optim/concessionnaires/nu.gif';
preload[5] = new Image();
preload[5].src = '/optim/concessionnaires/nw.gif';
preload[6] = new Image();
preload[6].src = '/optim/concessionnaires/pe.gif';
preload[7] = new Image();
preload[7].src = '/optim/concessionnaires/ns.gif';
preload[8] = new Image();
preload[8].src = '/optim/concessionnaires/nb.gif';
preload[9] = new Image();
preload[9].src = '/optim/concessionnaires/qc.gif';
preload[10] = new Image();
preload[10].src = '/optim/concessionnaires/on.gif';
preload[11] = new Image();
preload[11].src = '/optim/concessionnaires/mb.gif';
preload[12] = new Image();
preload[12].src = '/optim/concessionnaires/sk.gif';
preload[13] = new Image();
preload[13].src = '/optim/concessionnaires/ab.gif';
preload[14] = new Image();
preload[14].src = '/optim/concessionnaires/bc.gif';

function getElement(id) {
	if (isDOM) return document.getElementById(id);
	if (isIE4) return document.all[id];
	if (isNS4) return document.layers[id];
}

function init() {
	//External Links
	if (document.getElementsByTagName) {
		var anchors = document.getElementsByTagName("a");
		var m;
		for (var i=0; i<anchors.length; i++) {
			var anchor = anchors[i];
			if (anchor.getAttribute("href") && anchor.getAttribute("rel") == "external") {
				anchor.target = "_blank";
			} else if (m = anchor.id.match(/^t_(\d+)$/)) {
				anchor.onclick = showHires;
			} else if (m = anchor.id.match(/^c_(\d+)$/)) {
				anchor.onmouseover = showColor;
				anchor.onmouseout = restoreColor;
			} else if (m = anchor.id.match(/^r_(\d+)$/)) {
				anchor.onclick = trouverConcessionnaire;
			} else if (m = anchor.id.match(/^menua_(\d+)$/)) {
				MenuAWidth += getDimension(anchor).width+2;
			} else if (m = anchor.id.match(/^menub_(\d+)$/)) {
				MenuBWidth += getDimension(anchor).width+2;
			}
		}
		var areas = document.getElementsByTagName("area");
		for (var i=0; i<areas.length; i++) {
			var area = areas[i];
			if (m = area.id.match(/^c_([a-z]{2})$/)) {
				area.onmouseover = showProvince;
				area.onmouseout = hideProvince;
				area.onclick = trouverConcessionnaire;
			}
		}
		MenuAWidth -= 2;
		MenuBWidth -= 2;
	}
	//Ajustement du menu des modèles 50cc et 100cc+
	if (getElement('menub_1').className == 'o') {
		getElement('conteneurmenuc').style.width = MenuBWidth+'px';
		getElement('menucfirst').style.width = (getDimension(getElement('menub_1')).width+5)+'px';
		getElement('menucfirstcoin').style.left = (getDimension(getElement('menub_1')).width-2)+'px';
	} else if (getElement('menub_2').className == 'o') {
		getElement('conteneurmenuc').style.width = (MenuBWidth-(getDimension(getElement('menub_1')).width+2))+'px';
		getElement('menucfirst').style.width = (getDimension(getElement('menub_2')).width+5)+'px';
		getElement('menucfirstcoin').style.left = (getDimension(getElement('menub_2')).width-2)+'px';
	}
	//Liste des provinces
	if (getElement('conteneurprovince') != null) {
		getProvinces();
		getElement('province').onchange = getCities;
		getElement('trouverconcessionnaire').onclick = trouverConcessionnaire;
	}
}

function getDimension(e) {
	var dim = new Object();
	dim.width = e.offsetWidth;
	dim.height = e.offsetHeight;
	return dim;
}

function showHires() {
	var m;
	if (m = this.id.match(/^t_(\d+)$/)) {
		for (var i = 0; i < this.childNodes.length; i++) {
			try {
				if (this.childNodes[i].src) {
					getElement('hires').src = this.childNodes[i].src.replace('-t.','.');
				}
			} catch (e) {
			}
		}
	}
	return false;
}

function showColor() {
	var m;
	if (m = this.id.match(/^c_(\d+)$/)) {
		for (var i = 0; i < this.childNodes.length; i++) {
			try {
				if (this.childNodes[i].src) {
					buffer = getElement('hires').src;
					getElement('hires').src = this.childNodes[i].src.replace('-t.gif','.jpg');
				}
			} catch (e) {
			}
		}
	}
	return false;
}

function restoreColor() {
	var m;
	if (m = this.id.match(/^c_(\d+)$/)) {
		for (var i = 0; i < this.childNodes.length; i++) {
			try {
				if (this.childNodes[i].src) {
					getElement('hires').src = buffer;
				}
			} catch (e) {
			}
		}
	}
	return false;
}

function getProvinces() {
	var html = '<select id="province" name="province"><option value="">Choisir une province</option>';
	if (getElement('menua_6').href.match(/\?lang=fr/)) {
		html = '<select id="province" name="province"><option value="">Choose a province</option>';
	}
	for (var i in provinces) {
		selected = '';
		if (i == province) {
			selected = ' selected="selected"';
		}
		html += '<option value="'+i+'"'+selected+'>'+i+'</option>';
	}
	html += '</select>';
	getElement('conteneurprovince').innerHTML = html;
	if (getElement('cartecanada') == null && document.location.href.match(/concessionnaires\.asp/)) {
		getElement('retourcarte').style.display = 'block';
	}
	if (province != '') {
		getCities();
	}
}

function getCities() {
	var html = '<select id="ville" name="ville"><option value="">Choisir une ville</option>';
	if (getElement('menua_6').href.match(/\?lang=fr/)) {
		html = '<select id="ville" name="ville"><option value="">Choose a city</option>';
	}
	try {
		var villes = Array();
		villes = provinces[getElement('province').value].split('-=-');
		for (var i = 0; i < villes.length-1; i++) {
			selected = '';
			if (villes[i] == ville) {
				selected = ' selected="selected"';
			}
			html += '<option value="'+villes[i]+'"'+selected+'>'+villes[i]+'</option>';
		}
		ville = '';
	} catch(e) {
	}
	html += '</select>';
	getElement('conteneurville').innerHTML = html;
}

function trouverConcessionnaire() {
	getElement('province').style.backgroundColor = '#fff';
//	getElement('ville').style.backgroundColor = '#fff';
	if (getElement('province').value == '' && !this.id.match(/^c_([a-z]{2})$/)) {
		getElement('province').style.backgroundColor = '#ff6666';
//	} else if (getElement('ville').value == '') {
//		getElement('ville').style.backgroundColor = '#ff6666';
	} else {
		if (this.id.match(/^r_(\d+)$/) && getElement('province').value == 'Québec') {
			getElement('region').value = this.title;
			getElement('ville').value = '';
		} else if (this.id.match(/^c_([a-z]{2})$/)) {
			getElement('province').value = this.title;
		}
		document.forms[0].submit();
	}
	return false;
}

function showProvince() {
	try {
		var m, option;
		if (m = this.id.match(/^c_([a-z]{2})$/)) {
			getElement('cartecanada').src = 'optim/concessionnaires/'+m[1]+'.gif';
			for (var i = 0; i < getElement('province').options.length; i++) {
				option = getElement('province').options[i];
				if (option.innerHTML = this.title) {
					province = this.title;
					getProvinces();
				} else {
					option.selected = false;
				}
			}
		}
	} catch(e) {
	}
}

function hideProvince() {
	try {
		getElement('cartecanada').src = 'optim/concessionnaires/canada.gif';
	} catch(e) {
	}
}

function Valide() {
	if (document.form1.txtNom.value == "") {
		alert("Nom Obligatoire!");
		document.form1.txtNom.focus();
		return false;
	}
	if (document.form1.txtPrenom.value == "") {
		alert("Prénom Obligatoire!");
		document.form1.txtPrenom.focus();
		return false;
	}
	if (document.form1.txtCourriel.value == "") {
		alert("Courriel Obligatoire!");
		document.form1.txtCourriel.focus();
		return false;
	}
	if (document.form1.txtPhoto.value == "") {
		alert("Photo Obligatoire!");
		document.form1.txtPhoto.focus();
		return false;
	}
	return true;
}

function Valide2() {
	if (document.form1.txtNom.value == "") {
		alert("Name is invalid!");
		document.form1.txtNom.focus();
		return false;
	}
	if (document.form1.txtPrenom.value == "") {
		alert("First Name is invalid!");
		document.form1.txtPrenom.focus();
		return false;
	}
	if (document.form1.txtCourriel.value == "") {
		alert("E-mail is invalid!");
		document.form1.txtCourriel.focus();
		return false;
	}
	if (document.form1.txtPhoto.value == "") {
		alert("Picture is invalid!");
		document.form1.txtPhoto.focus();
		return false;
	}
	return true;
}

window.onload = init;
