// Generated Footer
var copydate = new Date();
var copyyear = copydate.getFullYear();
var copyfirm = "by yStats.com";
var copysign = "&copy;";
var copynbsp = "&nbsp;";

// Current Time Variables
var time;
var date;

// Expand Table
function addRowToTable(Id) {
	var tbl = document.getElementById(Id);
	var lastRow = tbl.rows.length;
	
	if(lastRow < 5) {
		var iteration = lastRow; 
		var row = tbl.insertRow(lastRow);
		var cellLeft = row.insertCell(0);
		var cellRight = row.insertCell(1);
		
		switch (iteration) {
			case 2:
				var textNode = document.createTextNode('Completion date:');
				var el = document.createElement('input');
				el.setAttribute('type', 'text');
				el.setAttribute('name', 'step_' + iteration);
				el.setAttribute('size', '88');
				break;

			case 3:
				var textNode = document.createTextNode('Time limit:');
				var el = document.createElement('input');
				el.setAttribute('type', 'text');
				el.setAttribute('name', 'step_' + iteration);
				el.setAttribute('size', '88');
				break;
			
			case 4:
				var textNode = document.createTextNode('Customer:');
				var el = document.createElement('input');
				el.setAttribute('type', 'image');
				el.setAttribute('src', '../../images/buttons/en/personaldata.gif');
				break;
				
			default:
				break;
		}

		cellLeft.appendChild(textNode);
		cellRight.appendChild(el);
	}
}

// Collapse Table
function removeRowFromTable(Id) {
	var tbl = document.getElementById(Id);
	var lastRow = tbl.rows.length;
	
	if(lastRow > 2) {
		tbl.deleteRow(lastRow - 1);
	}
}

// Calculate Position
function getPosition(element) {
  var elem = element;
	var tagname = "";
	var x = 0;
	var y = 0;
  
  while ((typeof(elem) == "object") && (typeof(elem.tagName) != "undefined")) {
    y += elem.offsetTop;
    x += elem.offsetLeft;
    
		tagname = elem.tagName.toUpperCase();

    if(tagname == "BODY") {
      elem = 0;
		}

    if(typeof(elem) == "object") {
      if(typeof(elem.offsetParent) == "object") {
        elem = elem.offsetParent;
			}
		}
  }
	
	if(navigator.userAgent.toLowerCase().indexOf("msie") > -1) {
		x++;
	}

  position = new Object();
  position.x = x;
  position.y = y;
  
	return position;
}

// Calculate Current Time
function currentTime () {
	var n;
	var timer;
	var timestamp = new Date();
	var h = timestamp.getHours();
	var m = timestamp.getMinutes();
	var s = timestamp.getSeconds();
	var d = timestamp.getDate();
	var c = timestamp.getMonth()+1;
	var y = timestamp.getYear();
	
	if((y > 99) && (y < 1900))
	{
		y += 1900;
	}
	
	switch (c) {
		case 1:
			n = "Jan"; break;
		case 2:
			n = "Feb"; break;
		case 3:
			n = "Mar"; break;
		case 4:
			n = "Apr"; break;
		case 5:
			n = "May"; break;
		case 6:
			n = "Jun"; break;
		case 7:
			n = "Jul"; break;
		case 8:
			n = "Aug"; break;
		case 9:
			n = "Sep"; break;
		case 10:
			n = "Oct"; break;
		case 11:
			n = "Nov"; break;
		case 12:
			n = "Dec"; break;
		default:
			n = "NaN"; break;
	}
	
	time = "";
	time += ((h < 10) ? "0" : "") + h;
	time += ((m < 10) ? ":0" : ":") + m;
	time += ((s < 10) ? ":0" : ":") + s;
	
	date = "";
	date += n + (" ");
	date += ((d < 10) ? "0" : "") + d;
	date += ", " + y;
	
	document.clock.time.value = time;
	document.clock.date.value = date;
	
	timer = setTimeout("currentTime()", 1000);
}

// Form-Check Research Request
function rrFormCheck(part) {
	if(part == "part_1") {
		if(document.researchRequest.step_1.value == "") {
			alert ("Please write down your research request as detailed as possible.");
			document.researchRequest.step_1.focus();
			return false;
		}
		else {
			return true;
		}
	}
	else {
		if(document.researchRequest.firstname.value == "") {
			alert ("Please specify your first name.");
			document.researchRequest.firstname.focus();
			return false;
		}
		else if(document.researchRequest.surname.value == "") {
			alert ("Please specify your last name.");
			document.researchRequest.surname.focus();
			return false;
		}
		else if(emailSyntax(document.researchRequest.email.value) == false) {
			document.researchRequest.email.focus();
			return false;
		}
		else {
			return true;
		}
	}
}

// Form-Check Contact Request
function crFormCheck() {
	if(document.contactRequest.firstname.value == "") {
		alert ("Please specify your first name.");
		document.contactRequest.firstname.focus();
		return false;
	}
	else if(document.contactRequest.surname.value == "") {
		alert ("Please specify your last name.");
		document.contactRequest.surname.focus();
		return false;
	}
	else if(emailSyntax(document.contactRequest.email.value) == false) {
		document.contactRequest.email.focus();
		return false;
	}
	if(document.contactRequest.message.value == "") {
		alert ("Please write down your concern in detail.");
		document.contactRequest.message.focus();
		return false;
	}
	else {
		return true;
	}
}

// Form-Check Free Report
function frFormCheck() {
	if(document.contactRequest.name.value == "") {
		alert ("Please specify your name.");
		document.contactRequest.name.focus();
		return false;
	}
	else if(document.contactRequest.company.value == "") {
		alert ("Please specify your company name.");
		document.contactRequest.company.focus();
		return false;
	}
	else if(emailSyntax(document.contactRequest.cml.value) == false) {
		document.contactRequest.cml.focus();
		return false;
	} else {
		return true;
	}
}

// Form-Check Newsletter Subscription
function nlFormCheck() {
	if(emailSyntax(document.newsletter.subscribe.value) == false) {
		document.newsletter.subscribe.focus();
		return false;
	}
	else {
		return true;
	}
}

// Form-Check Newsletter Unsubscription
function usnlFormCheck() {
	if(emailSyntax(document.unsubscribe.email.value) == false) {
		document.unsubscribe.email.focus();
		return false;
	}
	else {
		return true;
	}
}

// Form-Check New Customer (also for Trial)
function trFormCheck(part) {
//	if(document.trialRequest.firstname.value == "") {
//		alert ("Please specify your first name.");
//		document.trialRequest.firstname.focus();
//		return false;
//	}
//	else if(document.trialRequest.surname.value == "") {
	if(document.trialRequest.surname.value == "") {
		alert ("Please specify your last name.");
		document.trialRequest.surname.focus();
		return false;
	}
	else if(emailSyntax(document.trialRequest.email.value) == false) {
		document.trialRequest.email.focus();
		return false;
	}
//	else if(document.trialRequest.address.value == "") {
//		alert ("Please specify your address.");
//		document.trialRequest.address.focus();
//		return false;
//	}
	else {
		return true;
	}
}

// Form-Check Password Request
function prFormCheck(part) {
	if(document.passwordRequest.username.value == "") {
		alert ("Please specify your user name.");
		document.passwordRequest.username.focus();
		return false;
	}
	else if(emailSyntax(document.passwordRequest.email.value) == false) {
		document.passwordRequest.email.focus();
		return false;
	}
	else {
		return true;
	}
}

// Email-Check
function emailSyntax(string)
{
 	split = string.split("@");
 	part1 = split[0];
 	part2 = split[1];
	
	if(string == "")
	{
		alert ("Missing e-mail: please specify your address.");
	}
	else if(split.length != 2)
	{		
   	alert ("Wrong e-mail: the @ is missing.");
 	}
	else if(part1 == "")
	{
   	alert ("Wrong e-mail: the @ was found at the beginning.");
 	}
	else if(part2 == "")
	{
   	alert ("Wrong e-mail: the @ was found at the end.");
 	}
 	else
	{
   	var reg = part2.match(/([a-zA-Z0-9-]+\.)[a-zA-Z]{2,4}$/);
   	
		if(reg == null)
		{
     	alert ("Wrong e-mail: the string after the @ is not correct.");
   	}
   	else if(part1.match(/[a-zA-Z0-9-_]+/) == null)
		{
     	alert ("Wrong e-mail: the string before the @ is not correct.");
   	}
   	else
		{
     	return true;
   	}
 	}
	
	return false;
}