if (URL_SITE === undefined) {
	var URL_SITE = "http://thebeacongroup.ca";
}

window.addEvent('domready', function() {
	if ($('more-info')) {
		var bAdd  = new Element('a', { id: 'show-form', html: '<img src="' + URL_SITE + '/images/request-info-button.gif" alt="Request more information">' }).addEvent('click', addInfoForm);
		$('more-info').adopt(bAdd);
	}
});
var addInfoForm = function() {
	// fix height of container so it doesn't studder
	var height = $('show-form').getParent().getSize().y;
	$('show-form').getParent().setStyle('height', height);
	
	// fade out button
	new Fx.Morph('show-form', {duration: 1000}).start({
		'opacity' : 0
	}).chain(function() {
		$('show-form').setStyle('display', 'none');
	});
	
	var fInfo = new Element('form', { action: URL_SITE + '/inc/send-info-request-email.php', method: 'post', id: 'info-form' });
	
	var pName     = new Element('p', { 'class': 'first' });
	var pEmail    = new Element('p');
	var pPhone    = new Element('p');
	var pMessage  = new Element('p');
	var pSubmit   = new Element('p');
	
	var lName    = new Element('label', { 'for': 'fullname', text: 'Name' });
	var lEmail   = new Element('label', { 'for': 'email', text: 'Email' });
	var lPhone   = new Element('label', { 'for': 'phone', text: 'Phone' });
	var lMessage = new Element('label', { 'for': 'message', text: 'Special Request' });
	
	var iName    = new Element('input', { id: 'fullname', type: 'text', 'class': 'text' });
	var iEmail   = new Element('input', { id: 'email', type: 'text', 'class': 'text' });
	var iPhone   = new Element('input', { id: 'phone', type: 'text', 'class': 'text' });
	var iMessage = new Element('textarea', { id: 'message' });
	var iSubmit  = new Element('input', { type: 'submit', 'class': 'submit', value: 'Submit request' });
	
	pName.adopt(lName, iName);
	pEmail.adopt(lEmail, iEmail);
	pPhone.adopt(lPhone, iPhone);
	pMessage.adopt(lMessage, iMessage);
	pSubmit.adopt(iSubmit);
	fInfo.adopt(pName, pEmail, pPhone, pMessage, pSubmit);
	
	hider = new Element('div');
	hider.setStyles({
		height: '1px', /* ie6 doesn't like 0 here for some reason */
		background: 'blue',
		visibility: 'hidden',
		overflow: 'hidden'
	});
	
	hider.adopt(fInfo);
	hider.inject('more-info', 'after');
	
	var height = fInfo.getSize().y;
	
	new Fx.Morph('more-info', {duration: 1000}).start({
		// set height so there isn't a studder
		'height' : height,
		'opacity' : 0
	}).chain(function() {
		$('more-info').adopt(fInfo);
		this.start({
			'opacity' : 1,
			'height' : height
		});
	});
	
	iSubmit.addEvent('click', submitInfoRequest);
}
var submitInfoRequest = function(event) {
	event.stop();
	
	if (!$('fullname').get('value'))
	{
		alert('Please enter your name.');
		return;
	}
	if (!$('email').get('value'))
	{
		alert('Please enter your email.');
		return;
	}
	if (!$('phone').get('value'))
	{
		alert('Please enter your phone number.');
		return;
	}
	if (!$('message').get('value'))
	{
		alert('Please enter a message.');
		return;
	}
	
	var req = new Request.HTML({
		url: $('info-form').get('action'),
		data: {
			service: $('service').get('value'),
			fullname: $('fullname').get('value'),
			email: $('email').get('value'),
			phone: $('phone').get('value'),
			message: $('message').get('value')
		},
		onComplete: function(responseTree, responseElements, responseHTML, responseJavaScript) {
			if (responseHTML == 1)
			{
				$('info-form').setStyle('display', 'none');
				var pResults = new Element('p', { text: 'Request submitted', 'class': 'results' });
				$('more-info').adopt(pResults);
			}
			else if (responseHTML == 0)
			{
				alert('Error: Unable to submit request.');
			}
			else
			{
				alert(responseHTML);
			}
		}
	}).send();
}

