// strings
var spokesthingError = "Please include your spokesthing:";
var pitchingError = "Please include he/she pitching.";
var emailError = "Please include your E-mail Address.";
var companyError = "Please include your Company.";
var sloganError = "Please include your slogan.";
var phoneNumberError = "Please include your Phone Number.";
var successText = "Message sent!";
var failedText = "There was a problem with sending message.";

function checkFields()
{
	// cleanup errorbox
	var _errorbox = $('#popup-errors');
	var _errors = 0;
	_errorbox.html('');

	// check spokesthing field
	if($("#input-spokesthing").length) {
		if($("#input-spokesthing").attr("value").length == 0) {
			_errors++;
			_errorbox.append('<em>'+spokesthingError+'</em>');
		}
	}
	// check pitching field
	if($("#input-pitching").length) {
		if($("#input-pitching").attr("value").length == 0) {
			_errors++;
			_errorbox.append('<em>'+pitchingError+'</em>');
		}
	}/*
	// check slogan field
	if($("#input-slogan").length) {
		if($("#input-slogan").attr("value").length == 0) {
			_errors++;
			_errorbox.append('<em>'+sloganError+'</em>');
		}
	}
	// check company field
	if($("#input-company").length) {
		if($("#input-company").attr("value").length == 0) {
			_errors++;
			_errorbox.append('<em>'+companyError+'</em>');
		}
	}
	// check telephone field
	if($("#input-telephone").length) {
		if($("#input-telephone").attr("value").length == 0) {
			_errors++;
			_errorbox.append('<em>'+phoneNumberError+'</em>');
		}
	}*/
	// check email field
	if($("#input-email").length)
	{
		if (!$("#input-email").attr("value").match(new RegExp('^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$')))
		{
			_errors++;
			_errorbox.append('<em>'+emailError+'</em>');
		}
	}

	// output errors results
	if(_errors > 0)
		return true;
	else
		return false;
}

function initAdoForm() {
	$('div.ado-box').each(function(){
		var _holder = $(this);
		var _picList = _holder.find('.ado-pict .draggable-list');
		var _picListItems = _picList.find(' > div');
		var _picDescription = $('#item-description');
		var _acceptList = _holder.find('.pict-finish ul');
		var _fadeSpeed = 500;

		// drag and drop code
		_picListItems.each(function(){
			var _link = $(this).find('a').eq(0);
			$(this).addClass(_link.attr('rel'));
			_link.addClass('draggable');
		});
		_picListItems.draggable({
			helper:'clone',
			opacity : 0.85
		});

		// drop targets code
		var _acceptor1 = _acceptList.find('li.t1 div.acceptor');
		var _acceptor2 = _acceptList.find('li.t2 div.acceptor');
		var _acceptor3 = _acceptList.find('li.t3 div.acceptor');
		_acceptor1.droppable({
			tolerance : 'pointer',
			accept : 'div.t1',
			drop : function(event, ui) {
				appendItem(ui.draggable,_acceptor1,'man1');
			}
		});
		_acceptor2.droppable({
			tolerance : 'pointer',
			accept : 'div.t2',
			drop : function(event, ui) {
				appendItem(ui.draggable,_acceptor2,'man2');
			}
		});
		_acceptor3.droppable({
			tolerance : 'pointer',
			accept : 'div.t3',
			drop : function(event, ui) {
				appendItem(ui.draggable,_acceptor3,'man3');
			}
		});
		function appendItem(_obj,_parent,ttype) {
			var _hold = _parent.parent();
			_hold.find('.d-target').remove();
			_hold.append('<div class="d-target">&nbsp;</div>');
			var _block = _hold.find('.d-target');
			_block.html(_obj.html());

			var t_text =_block.find('a.draggable').attr('title');
			$('#'+ttype).val(t_text);
		}

		// item description code
		_picListItems.bind("mouseenter mouseleave", function(){
			var _info = $(this).find('a').attr('name');
			_picDescription.html(_info);
		});

		// form actions code
		var _formblock = _holder.find('div.ado-form').eq(0);
		var _btnHolder = _holder.find('div.button-box');
		var _btnRedo = _btnHolder.find('a.redo');
		var _btnClear = _btnHolder.find('a.clear');
		var _btnSubmit = _btnHolder.find('a.submit');

		_btnClear.click(function(){
			_acceptList.find('.d-target').remove();
			return false;
		});
		_btnRedo.click(function(){
			_btnSubmit.removeClass('active');
			_btnRedo.css({display:'none'});
			_btnClear.css({display:'block'});
			_formblock.fadeOut(_fadeSpeed);
			return false;
		});

		_btnSubmit.click(function(){
			var _button = $(this);
			if(_button.hasClass('active')) {
				if(!checkFields()) {
					var _postdata = $("form#form-ado").serialize();
					$.ajax({
						type: "POST",
						url: "mail.php",
						data: _postdata,
						success: function(msg){
							//$('#status-info').html('');
							if(msg=="sent") {
								$('#info-status').html(successText);
								showLightbox('info-popup');
							}
							else {
								$('#popup-errors').html(failedText);
								showLightbox('message-popup');
							}
							_btnRedo.click();
						}
					});
					return false;
					//$('form#form-ado').submit();
				} else showLightbox('message-popup');
			}else {
				// show form code
				if(_acceptList.find('.d-target').length == 3) {
					_btnSubmit.addClass('active');
					_btnClear.css({display:'none'});
					_btnRedo.css({display:'block'});
					_formblock.fadeIn(_fadeSpeed);
				} else {
					$('#popup-errors').html('- please complete your body');
					showLightbox('message-popup');
				}
			}
			return false;
		});

	});
}

$(document).ready(function(){
	initAdoForm();
});
