﻿//-----------------------------------------------------------------------------

function ServicesSubmit(redirectUrl, referrerSession, referrerCookie)
{
	HidePanel('SuccessMessage');
	HidePanel('ErrorMessage');	
	$("#Button").hide(); // attr("disabled", "true")
	
	var parameters = ServicesParameters();
	if (parameters == undefined)
	{
		ServicesShowErrorMessage("MissingFields", "Please fill in all of the fields");
		return;
	}

	ServicesShowWaitingMessage();

	$.getJSON('/json', parameters, ServicesResponse);
	
	function ServicesResponse(response)
	{
		if (response.JsonResult.Result == 'Success')
			ServicesShowSuccessMessage();
		else
			ServicesShowErrorMessage(response.JsonResult.ErrorCode, response.JsonResult.ErrorDescription);
	}
}

//-----------------------------------------------------------------------------

function ServicesParameters()
{
	var parameters =
	{
		Command: 'User.Lead',
		
		NameFull: $("input[name='NameFull']").val(),
		Email: $("input[name='Email']").val(),
		Phone1: $("input[name='Phone']").val(),
		TargetSite: $("input[name='TargetSite']").val(),
		Company: $("input[name='Company']").val(),
		Note:  $("textarea[name='Note']").val() + " Target URL: " + $("input[name='TargetSite']").val(),

		LeadSource: $("input[name='LeadSource']").val(),
		LeadRefererFirst: $("input[name='LeadRefererFirst']").val(),
		LeadRefererLast: $("input[name='LeadRefererLast']").val()
	}

	if ((parameters.NameFull.trim() == '') || (parameters.Email.trim() == '')
		|| (parameters.Phone1.trim() == '') || (parameters.Company.trim() == '')
		|| (parameters.Note.trim() == ''))
		return null;
	else
		return parameters;
}

//-----------------------------------------------------------------------------

function ServicesShowWaitingMessage()
{
	ShowPanel('WaitingMessage', null, true);
}

//-----------------------------------------------------------------------------

function ServicesShowErrorMessage(errorCode, errorMessage)
{
	var html = GetErrorHtml(errorCode, errorMessage);
	$("#ErrorMessage").html(html);
	
	ShowPanel('ErrorMessage', '', true);	
	
	$("#Button").show(); // attr("disabled", "")
}

//-----------------------------------------------------------------------------

function ServicesShowSuccessMessage()
{
	HidePanel("WaitingMessage");
	ShowPanel('SuccessMessage', '', false);
}

//-----------------------------------------------------------------------------

