/*GLobal Variables:*/
var mailto ="m"+"a"+"i"+"l"+"t"+"o"+":";
var contactId = 'info';
var theLocation = "@" + "taftoys" + "." + "com";
var isIE6
var imagesXmlResponse;
var imageArray = new Array();

/*Functions*/

/* Send mail */
function doar(correspondent){
   if (typeof(correspondent) == 'undefined') {
   		correspondent = contactId;
   }
   location = mailto + correspondent + theLocation + "?subject=From [Please add your name here]" ;
}

/* Validate a form */
function validate() {
	try {
		if (document.forms['contact'].mib.value != '') {
			return false;
		}
		var validator = new FormValidator('contact');
		var errBuffer = new StringBuffer();
	}
	catch (e) {
		alert(e);
	}
	if (validator.isTooShort('name') && document.forms['contact'].formtype.value == 'contact') {
		errBuffer.append(messages.name_too_short + '\n')
	}
	if (!validator.validateMail('email')) {
		errBuffer.append(messages.email_empty + '\n')
	}
	if (!validator.validatePhone('phone') && document.forms['contact'].formtype.value == 'contact') {
		errBuffer.append(messages.phone_empty + '\n')
	}
	if (errBuffer != '') {
		try {
		displayModalDialogBox(errBuffer.toString());
		return false;
		}
		catch(e) {
			alert(e);
		}
	}
	else {
		document.forms['contact'].province.value = $(provinceInput).value;
		return true;
	}
}

var provinceInput;
/* Toggle province drop downs according to the selected country */
function toggleProvinceDropDown() {
	var province = $('country').value
	$('provinceDropDownHolder').getElements('.province').each(function(provinceInput) {
			provinceInput.style.display = 'none';
		}
	);
	if (province == 'Canada' || province == 'USA') {
		$('province_' + province).style.display = 'block';
		$('province_' + province).options[0].selected = true;
		provinceInput = 'province_' + province;
	}
	else {
		$('province_other').style.display = 'block';
		provinceInput = 'province_other';
	}
}

/* Toggle main menu item images */
function rollMenuImg(s_id,src) {
	if (document.getElementById(s_id).parentNode.parentNode.className != 'current') {
		changeImg (s_id, src)
	}
}

/* Toys data*/

/* Load images from the images source page by XHR */
function getImageData(container, theUrl, theSync) {
	var req = new Request({
		method: 'get',
		url: theUrl,
 		data: { 'do' : '1' },
		onRequest: function() {
			$('toyImgHolder').innerHTML = 'loading...';
		},
		onComplete: function(response) {
			tmpArray = eval('(' + response + ')');
			for (var i=0;i < tmpArray.length;i++) {
				imageArray[i] = new Image();
				imageArray[i].src = 'Products/Fullsize/' + tmpArray[i];
			}
			setImageNav();
			placeImg(0);
		}
	}).send();
}

function placeImg (num) {
	if ($('galleryButton'+ num).className == 'current') {
		return false;
	}
	var imgWidth = '590px';
	var imgHeight = '329px';
	if (!$('toyImg')) {
		$('toyImgHolder').innerHTML = '<img id="toyImg" />';
	}
	fadeInOut = new Fx.Tween('toyImg');
	fadeInOut.start("opacity",0).chain(function() {
		$('toyImg').setProperty('src', imageArray[num].src).fade('in');
	});
	for (var i = 0;i < imageArray.length; i++) {
		$('galleryButton'+ i).className = '';
	}
	$('galleryButton'+ num).className = 'current';
}

/* Set image navigation buttons */
function setImageNav () {
	var sBuffer = new StringBuffer();
	sBuffer.append('<ul class="hMenu">');
	for (var i = 0;i < imageArray.length; i++) {
		sBuffer.append('<li id="galleryButton' + i + '" onclick="placeImg(');
		sBuffer.append(i);
		sBuffer.append(');">');
		sBuffer.append(i + 1);
		sBuffer.append('</li>');
	}
	sBuffer.append('</ul>');
	$('galleryNav').innerHTML = sBuffer.toString();
}

var steppedOn = false;

function doFocus(sId) {
	steppedOn = true;
	var prodNum = sId.replace(/thumb/,'');
	var focusImg;
	if (!$('focusImg')) {
		focusImg = document.createElement('img');
		focusImg.id = 'focusImg';
		focusImg.style.width = '400px';
		$('focusImgHolder').appendChild(focusImg);
	}
	else {
		focusImg = $('focusImg');
	}
	focusImg.src = "Products/Hover/" + prodNum + ".jpg";
	show('focusImgHolder');
}

function init () {
	detectIe6();
	$('mainMenu').getElements('.menu').each(function(listItem) {
		/* if exists submenu - hide it. */
		if (listItem.getElement('ul.links')) {
			var submenu = listItem.getElement('ul.links');
			submenu.setStyle('visibility','visible');
			var myFx = new Fx.Slide(submenu);
			submenu.slide('hide');
		}
		if (listItem.getElement('.menuImage')) {
			var menuImage = listItem.getElement('.menuImage');
			var currentSrc = menuImage.src.replace(/^.*\//,'');
		}
		listItem.addEvent('mouseover',function() {
			/* Toggle Images */
			if (listItem.getElement('.menuImage')) {
				if (currentSrc.indexOf('Current') < 0) {
					var newSrc;
					currentSrc = currentSrc.replace(/\.gif/,'');
					newSrc = currentSrc + 'Current';
					rollMenuImg(menuImage.id,'Images/' + lang + '/' + newSrc + '.gif');
				}
			}
			/* show submenu */
			if (typeof(submenu) != 'undefined') {
				submenu.slide('in');
			}
		});
		listItem.addEvent('mouseout',function() {
			/* Toggle Images */
			if (listItem.getElement('.menuImage')) {
				if (listItem.className.indexOf('current') < 0) {
					var newSrc;
					newSrc = currentSrc.replace(/Current\.gif/,'');
					rollMenuImg(menuImage.id,'Images/' + lang + '/' + newSrc + '.gif');
				}
			}
			/* hide submenu */
			if (typeof(submenu) != 'undefined') {
				submenu.slide('out');
			}
		})
	});
	if ($('toyImgHolder')) {
		var urlQueryString = new PageQuery;
		var productNumber = urlQueryString.getValue('itemid');
		getImageData('toyImgHolder', 'toyImagesSrc.php?itemid=' + productNumber, true);
	}
	if ($('country')) {
		toggleProvinceDropDown();
	}
	if($('languagesHolder')) {
		var languagesItemHeight = $('languagesHolder').getElement('li').offsetHeight;
		var languagesCount = $('languagesHolder').getElements('li').length;
		var step = languagesCount * languagesItemHeight;
		$('languagesHolder').setStyle('bottom','-' + step + 'px');
		$('languages').addEvent('mouseover',function () {
			$('languagesHolder').tween('bottom', '80px');
		});
		$('languages').addEvent('mouseout',function () {
			$('languagesHolder').tween('bottom','-' + step + 'px');
		});
		var ll = $('languagesList').getElements('li');
		var i=0;

		function change(){
			$('buttonHolder').getElement('p').fade("out");
		}
		function changeLanguage(){
			$('buttonHolder').getElement('p').fade("in");
			$('buttonHolder').getElement('p').innerHTML=ll[i].id;
			change.delay(1000);
			i++;
			if (i==languagesCount){i=0;}
			changeLanguage.delay(1800);
		}
		changeLanguage();
	}

	
	/*
	if($('matrix')) {
		$('matrix').getElements('img').each(function(thumbNail) {
			if (thumbNail.id.indexOf('10835') > -1 || thumbNail.id.indexOf('10775') > -1) {
			thumbNail.addEvent('mouseover', function(e) {
				if (!e) {
					var e = window.event
				}
				doFocus(this.id);
			});
			}
		});
		$('focusImgHolder').addEvent('mouseout', function() {
			hide('focusImgHolder');
		})
	}
	*/
}

window.addEvent('domready', init);
