/******************************************************************************

	Common Functions

******************************************************************************/

var W3CDOM = (document.createElement && document.getElementsByTagName);

function initFileUploads() {
	if (!W3CDOM) return;
	var fakeFileUpload = document.createElement('div');
	fakeFileUpload.className = 'fakefile';
	fakeFileUpload.appendChild(document.createElement('input'));
	var image = document.createElement('img');
	image.src='/style/common/images/btn_browse.png';
	fakeFileUpload.appendChild(image);
	var x = document.getElementsByTagName('input');
	for (var i=0;i<x.length;i++) {
		if (x[i].type != 'file') continue;
		if (x[i].parentNode.className != 'fileinputs') continue;
		x[i].className = 'actualFile';
		var clone = fakeFileUpload.cloneNode(true);
		x[i].parentNode.appendChild(clone);
		x[i].relatedElement = clone.getElementsByTagName('input')[0];
		x[i].onchange = x[i].onmouseout = function () {
			this.relatedElement.value = this.value;
		}
		var	userAgent = navigator.userAgent;
		if(userAgent.indexOf('Firefox') != -1) {
			if(userAgent.indexOf('Windows') != -1) x[i].size = '45';
			if(userAgent.indexOf('Macintosh') != -1) x[i].size = '29';
		}
	}
}

function show(elementId){
	document.getElementById(elementId).style.display = '';	
}

function hide(elementId){
	document.getElementById(elementId).style.display = 'none';	
}

function submitForm(formName) {
	if (formName == 'photoUploadForm'){ uploadFile(formName); return; }
	if (formName == 'sendToFriend'){ sendToFriend(formName); return; }
}

function Set_Cookie( name, value, path, domain, secure )
{
	// set time, it's in milliseconds
	var today = new Date();
	today.setTime( today.getTime() );

	/*
	if the expires variable is set, make the correct
	expires time, the current script below will set
	it for x number of days, to make it for hours,
	delete * 24, for minutes, delete * 60 * 24
	*/
	
	expires = 365 * 1000 * 60 * 60 * 24;
	
	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" : "" );
}
		


function uploadFile(formName) {
	var form = document.forms[formName];
	var file = form.elements['uploadFile'].value;
	var fname = form.elements['fname'].value;
	var lname = form.elements['lname'].value;
	var email = form.elements['email'].value;
	var sex = form.elements['sex'].value;
	var mobile = form.elements['mobile'].value;
	var country = form.elements['country'].value;
	var region = form.elements['region'].value;
	var zip = form.elements['zip'].value;
	var month = form.elements['month'].value;
	var day = form.elements['day'].value;
	var year = form.elements['year'].value;
	var conditions = form.elements['conditions'];
	
	var song = form.elements['staging'].value;
	/*song.value= fname;*/
	form.elements['staging'].value = fname;
	//alert(form.elements['staging'].value);
	//errorContainer = document.getElementById('errorContainer');
	
	if (file == '' || song == '' || email == '' || country == '' || day == '' || month == '' || year == '') {
		errorMsg = 'Please complete the required fields.';
		//errorContainer.innerHTML = errorMsg;
		alert(errorMsg);
		return;
	}
	if (!email.match(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/)) {
		errorMsg = 'Please enter a valid email address.';
		//errorContainer.innerHTML = errorMsg;
		alert(errorMsg);
		return;
	}
	/*if (mobile != '' && !mobile.match(/^([0-9]{10})+$/)) {
		errorMsg = 'Please enter a valid mobile number.';
		//errorContainer.innerHTML = errorMsg;
		alert(errorMsg);
		return;
	}
	if (!zip.match(/^([0-9]{5})+$/)) {
		errorMsg = 'Please enter a valid zip code.';
		//errorContainer.innerHTML = errorMsg;
		alert(errorMsg);
		return;
	}*/
	if (!conditions.checked) {
		errorMsg = 'You must agree to the terms and conditions to submit your design.';
		//errorContainer.innerHTML = errorMsg;
		alert(errorMsg);
		return;
	}
	/*birthDate = Date.parse(day+'-'+month+'-'+year);
	eighteenYearsAgoDate = Date.today().addYears(-18);
	result = eighteenYearsAgoDate.compareTo(birthDate);
	if(result == 1){
	 	alert(eighteenYearsAgoDate+' greater than '+birthDate);
	}else if(result == -1){
		alert(eighteenYearsAgoDate+' less than '+birthDate);
	}else{
		alert(eighteenYearsAgoDate+' equal to '+birthDate);
	}	
	if (result == -1) {
		errorMsg = 'You must be 18 years old to submit the artwork';
		//errorContainer.innerHTML = errorMsg;
		Set_Cookie('restrictedAge',email,'/','','');
		alert(errorMsg);
		window.location.reload();
		return;
	}*/
	//selectedOptionIndex = form.elements['staging'].selectedIndex;
	
	//form.elements['description'].value = form.elements['staging'].options[selectedOptionIndex].text;
	
	
	
	
	//errorContainer.innerHTML = '';
	form.elements['filename'].value = file;
	//selectedOptionIndex = form.elements['staging'].selectedIndex;
	form.elements['description'].value =region + '/'+mobile;
	form.elements['title'].value = fname +' '+lname + ' / ' + sex + ' / ' + email;
	form.elements['copyright'].value = country + ' / ' + zip;
	//form.elements['keywords'].value = mobile;
	form.elements['caption'].value = day + '/' + month + '/' + year;
	form.submit();
}

function sendToFriend(formName){
	form = document.forms[formName];
	fromName = form.elements['from'].value; 
	fromEmail = form.elements['fromemail'].value;
	toName = form.elements['to'].value;
	toEmail = form.elements['toemail'].value;
	
	//errorContainer = document.getElementById('errorContainer');
	if (fromName == '' || fromEmail == '' || toName == '' || toEmail == ''){
		errorMsg = 'Please fill the required fields.';
		//errorContainer.innerHTML = errorMsg;
		alert(errorMsg);
		return;
	}
	if (!fromEmail.match(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/) || 
			!toEmail.match(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/)) {
		errorMsg = 'Please enter a valid email address.';
		//errorContainer.innerHTML = errorMsg;
		alert(errorMsg);
		return;
	}
	//errorContainer.innerHTML = '';
	form.submit();	
}

