function createform()
{
	//add coverup box to freeze  page
	var coverbox = document.createElement('div');
	coverbox.setAttribute('id', 'coverup');
	document.body.insertBefore(coverbox, document.body.firstChild);
	
	//add form div to end
	var formbox = document.createElement('div');
	formbox.setAttribute('id', 'requestform');
	document.body.appendChild(formbox);

	//add form to form div
	formbox.innerHTML = '<form id="formmail" name="formmail" action="http://www.fcsxpert.com/cgi-bin/formmail/formmail.cgi" method="POST" onsubmit="return checkform()" onreset="clearform()">' + 
							'<!--[if lt IE 7]><div id="ie6div"></div><![endif]-->' +
							'<div id="form_top"><div style="float: right;"><a onclick="return closebox()" href="#" class="closelink">Close</a></div>' +
							'<h3 id="formtitle">Request a Quote</h3></div><div id="form_mid">' +
							'<input type="hidden" name="recipient" value="webmaster@fcsxpert.com" />' +		
							'<input type="hidden" name="required" value="realname, email, institution" />' +
							'<input type="hidden" name="subject" value="Request a QuantumXpert Demo" id="formsubject" />' +
							'<input type="hidden" name="redirect" value="http://www.fcsxpert.com/thankyou.html" />' +				
							'<label>Name:<br /> <input class="box" type="text" name="realname" size="38" id="name" /></label>' +
							'<label>Institution:<br /> <input class="box" type="text" name="institution" size="38" id="instit" /></label>' +		  
							'<label>Email Address:<br /> <input class="box" type="text" name="email" size="38" id="email" /></label>' +							
							'<label id="message_label"></label>' +				
							'<div id="error_msg"></div></div>' +				
							'<div id="button_group"><input type="submit" value="Submit Request" id="submit_button" class="button hoverdark" /></div>' +										
						'</form>' ;
}

function popform(formtype, extraTitle)
{	
	createform()
	
	if (extraTitle == undefined)
	{
		extraTitle = '';
	}
	else
	{
		extraTitle = ': ' + extraTitle;
	}

	// see if ie6
	var ie6Div = document.getElementById('ie6div');
	if (ie6Div != null)
	{
		return true;
	}

	var coverbox = document.getElementById('coverup');
	var showbox  = document.getElementById('requestform');
	var formhead = document.getElementById('formtitle');
	var subject  = document.getElementById('formsubject');
	var mesLabel = document.getElementById('message_label');
	var butLabel = document.getElementById('submit_button');
			
	if (formtype == 'qxQuote')
	{
		formhead.innerHTML = 'Request a QuantumXpert Quote';
		subject.value = 'QuantumXpert Quote Request';
		mesLabel.innerHTML = 'Comments: <span class="filesize">(optional)</span><textarea name="comments" rows="5" cols="29"></textarea>';
		butLabel.value = 'Request Quote';
	}
	else if (formtype == 'qxDemo')
	{
		formhead.innerHTML = 'Request a QuantumXpert Demo';
		subject.value = 'QuantumXpert Demo Request';
		mesLabel.innerHTML = 'Preferred Dates/Times: <span class="filesize">(optional)</span><textarea name="preferences" rows="5" cols="29"></textarea>';
		butLabel.value = 'Request Demo';
	}
	else if (formtype == 'workshop')
	{
		formhead.innerHTML = 'Request an FCS Workshop';
		subject.value = 'FCS Workshop Request';
		mesLabel.innerHTML = 'Preferred Dates/Times: <span class="filesize">(optional)</span><textarea name="preferences" rows="5" cols="29"></textarea>';
		butLabel.value = 'Submit Request';
	}
	else if (formtype == 'qxQuestion')
	{
		formhead.innerHTML = 'Ask a Question about the QuantumXpert';
		subject.value = 'QuantumXpert Question';
		mesLabel.innerHTML = 'Question:<textarea name="question" rows="5" cols="29"></textarea>';
		butLabel.value = 'Ask Question';
		
		//hide institution input
		var instField = document.getElementById('instit');
		instField.parentNode.innerHTML = '<input type="hidden" name="institution" value="none" id="instit" />';
		
	}
	else if (formtype == 'forwardPage')
	{
		formhead.innerHTML = 'Forward this Page to a Friend';
		subject.value = 'QuantumXpert Question';
		mesLabel.innerHTML = 'Comments: <textarea name="comments" rows="5" cols="29"></textarea>';
		butLabel.value = 'Forward Page';
	}
	else if (formtype =='page_feedback')
	{
		formhead.innerHTML = 'Send Feedback';
		subject.value = 'Page Feedback';
		mesLabel.innerHTML = 'Let us know what you think: <textarea name="feedback" rows="5" cols="29"></textarea>';
		butLabel.value = 'Submit Feedback';
		
		//add url input
		var urlInput = document.createElement('input');
		urlInput.setAttribute('type', 'hidden');
		urlInput.setAttribute('name', 'page_url');
		urlInput.setAttribute('value', document.URL);
		document.getElementById('formmail').insertBefore(urlInput, document.getElementById('error_msg'));

		//hide institution input
		var instField = document.getElementById('instit');
		instField.parentNode.innerHTML = '<input type="hidden" name="institution" value="none" id="instit" />';
	}
	else if (formtype == 'eventInfo')
	{
		formhead.innerHTML = 'Request Event Info' + extraTitle;
		subject.value = 'Event Info Request' + extraTitle;
		mesLabel.innerHTML = 'Comments: <span class="filesize">(optional)</span><textarea name="preferences" rows="5" cols="29"></textarea>';
		butLabel.value = 'Submit Request';
		
		//hide institution input
		var instField = document.getElementById('instit');
		instField.parentNode.innerHTML = '<input type="hidden" name="institution" value="none" id="instit" />';	
	}
	else if (formtype == 'eventAttend')
	{
		formhead.innerHTML = 'Attend an FCSXpert Event' + extraTitle;
		subject.value = 'Attend an FCSXpert Event' + extraTitle;
		mesLabel.innerHTML = 'Comments: <span class="filesize">(optional)</span><textarea name="preferences" rows="5" cols="29"></textarea>';
		butLabel.value = 'Request Invite';
		
		//hide institution input
		var instField = document.getElementById('instit');
		instField.parentNode.innerHTML = '<input type="hidden" name="institution" value="none" id="instit" />';	
	}
	else
	{
		return true;
	}
	
	coverbox.className = 'freeze';
	showbox.className = 'popup';
	
	return false;
}

function closebox()
{	
	document.body.removeChild(document.getElementById('coverup'));
	document.body.removeChild(document.getElementById('requestform'));
	return false;
}

function checkform()
{
	// delete old error message, if it exists
	var errorMsg = document.getElementById('error_msg');
	errorMsg.innerHTML = '';
	errorMsg.className = '';
	
	// refresh error classes
	var nameField = document.getElementById('name');
	nameField.className='box';
	nameField.size = 38;
	var emailField = document.getElementById('email');
	emailField.className='box';
	emailField.size = 38;
	var instField = document.getElementById('instit');
	instField.className = 'box';
	instField.size = 38;
		
	// test for errors
	var isOK = true;
	if(nameField.value==''){nameField.className = 'errorfield'; createErrorMsg(); isOK = false; nameField.size = 36;}
	if(emailField.value=='' /*|| !isValidEmail(emailField.value)*/){emailField.className = 'errorfield'; createErrorMsg(); isOK = false; emailField.size = 36;}					
	if(instField.value==''){instField.className = 'errorfield'; createErrorMsg(); isOK = false; instField.size = 36;}

	//error message generator
	function createErrorMsg()
	{	
		var errorMsg = document.getElementById('error_msg');
		errorMsg.innerHTML = 'Please fill in the empty field(s) marked with the <img alt="error icon" src="../error.gif" />.';
		errorMsg.className = 'errorbox';	
	}
	return isOK;
	
	// email checker
	//function isValidEmail(email) 
	//{
		// filler
	//	return true;
	//}
}

function clearform()
{
	// delete old error message, if it exists
	var errorMsg = document.getElementById('error_msg');
	errorMsg.innerHTML = '';
	errorMsg.className = '';
	
	// refresh error classes
	var nameField = document.getElementById('name');
	nameField.className='box';
	nameField.size = 38;
	var emailField = document.getElementById('email');
	emailField.className='box';
	emailField.size = 38;
	var instField = document.getElementById('instit');
	instField.className = 'box';
	instField.size = 38;
}