__max_files = 10;

function setUpUploadButton()
	{
	new AjaxUpload('#upload_files',{
		action:'/uploader/upload.php',
		name:'userfile',
		autoSubmit:true,
		responseType:'json',
		onChange:function(file,extension)
			{
			
			},
		onSubmit:function(file,extension)
			{
			var list_index = addFileToUploadList(file);
			$("#upload_files_note").text("You may upload "+(__max_files-(list_index+1))+" more files ("+__max_files+" max).");
			if (list_index >= __max_files-1) this.disable();
			else this.setData({"id":__RECORD_ID});
			},
		onComplete:function(file,response)
			{
			if (response.success) setFileToStatusComplete(file);
			else setFileToStatusFailed(file,response.message);
			}
		});
	$("#upload_files_note").text("You may upload a maximum of "+__max_files+" files.");
	}

function addFileToUploadList(filename)
	{
	var list = $("#files_uploaded");
	list.append('<li class="in_progress"><span class="filename">'+filename+'</span><span class="status">(uploading...)</span></li>');
	return list.find("li").length-1;
	}

function setFileToStatusComplete(filename,message_override)
	{
	var list_items = $("#files_uploaded li.in_progress");
	for (var i=0;i<list_items.length;i++)
		{
		var li = $(list_items[i]);
		if (li.find(".filename").text() == filename)
			{
			li.removeClass("in_progress").find(".status").text(message_override||"(complete)");
			break;
			}
		}
	}

function setFileToStatusFailed(filename,message_override)
	{
	var list_items = $("#files_uploaded li.in_progress");
	for (var i=0;i<list_items.length;i++)
		{
		var li = $(list_items[i]);
		if (li.find(".filename").text() == filename)
			{
			li.removeClass("in_progress").addClass("failed").find(".status").text("("+(message_override||"upload failed")+")");
			break;
			}
		}	
	}

function signupFormOnSubmit(check_only,stream_check)
	{
	var f = $("#signupform");
	f[0].submitted_once = true;
	var ok = true;
	
	var full_name = $("[name='full_name']",f);
	var email = $("[name='email']",f);
	var phone_number = $("[name='phone_number']",f);

	if (full_name.val() != full_name[0].defaultValue) full_name.val(fixName(full_name.val()));
	if (email.val() != email[0].defaultValue) email.val(fixEmail(email.val()));
	if (phone_number.val() != phone_number[0].defaultValue) phone_number.val(fixPhoneNum(phone_number.val()));

	if (!inputHasValue(full_name)) ok = alertField(full_name,{id:"full_name",message:"Please enter your <strong>first and last name</strong>."});
	else if (full_name.val().indexOf(" ") == -1) ok = alertField(full_name,{id:"full_name",message:"Please enter both a <strong>first and last name</strong>."});
	else alertField(full_name,{id:"full_name"},true);
	
	if (!inputHasValue(email)) ok = alertField(email,{id:"email",message:"Please enter your <strong>email</strong> address."});
	else if (!strContains(email.val(),["@","."])) ok = alertField(email,{id:"email",message:"Please enter a valid <strong>email</strong> address."});
	else alertField(email,{id:"email"},true);
	
	if (!inputHasValue(phone_number)) ok = alertField(phone_number,{id:"phone_number",message:"Please enter your <strong>phone number</strong>."});
	//else if (phone_number.val().length != 10) ok = alertField(phone_number,{id:"phone_number",message:"Please enter a valid <strong>10-digit phone number</strong>."});
	else alertField(phone_number,{id:"phone_number"},true);

	if (ok)
		{
		if (!__no_tracking) createRecordForUserSession(f.attr("id"));
		}

	var fs2 = f.find(".form_section2");
	var fs3 = f.find(".form_section3");
	if (!stream_check && !fs2.is(":visible"))
		{
		if (ok)
			{
			fs2.show();
			fs3.show();
			window.scrollTo(0,fs2.offset().top);
			writeGAScript();
			}
		return false;
		}

	if (!ok) f.find(".form_bottom_error").text("Scroll up to fix errors.");
	if (ok && !check_only)
		{
		if (!__recordRegSubmitFlag_submitted && !__no_tracking) setRecordRegSubmitFlag(f);
		else return true;
		}

	//return ok;
	return false;
	}

function writeGAScript()
	{
	var nl = "\n";
	var html_to_add = (""+
		'<!-- Google Code for Lead Conversion Page -->'+nl+
		'<script type="text/javascript">'+nl+
		'var google_conversion_id = 1029119019;'+nl+
		'var google_conversion_language = "en_US";'+nl+
		'var google_conversion_format = "1";'+nl+
		'var google_conversion_color = "ffffff";'+nl+
		'var google_conversion_label = "4U_zCK_ZlAEQq7jc6gM";'+nl+
		'var google_conversion_value = 0;'+nl+
		'</script>'+nl+
		//'<script type="text/javascript" src="http://www.googleadservices.com/pagead/conversion.js">'+nl+
		//'</script>'+nl+
		'<noscript>'+nl+
		'<div style="display:inline;">'+nl+
		'<img height="1" width="1" style="border-style:none;" alt="" src="http://www.googleadservices.com/pagead/conversion/1029119019/?label=4U_zCK_ZlAEQq7jc6gM&amp;guid=ON&amp;script=0" />'+nl+
		'</div>'+nl+
		'</noscript>'+nl);
	$("body").append('<div id="appendations"></div>');
	$("#appendations").css("display","none")[0].innerHTML = html_to_add;
	var scr = document.createElement("script");
	scr.type = "text/javascript";
	scr.src = "http://www.googleadservices.com/pagead/conversion.js";
	$("#appendations")[0].appendChild(scr);
	}

function setUpFormHandlers_signup1()
	{
	var relevants = $("#signupform [type='text'],#signupform select,#signupform textarea");
	relevants.bind("focus",function()
		{
		inputOnFocus(this);
		});
	relevants.bind("blur",function()
		{
		inputOnBlur(this);
		});
	$("#signupform [type='text']").bind("blur",function()
		{
		if ($("#signupform")[0].submitted_once) signupFormOnSubmit(true);
		});
	$("#signupform select").bind("change",function()
		{
		if ($("#signupform")[0].submitted_once) signupFormOnSubmit(true);
		});
	$("#signupform").bind("submit",function()
		{
		return signupFormOnSubmit();
		});
	$("#signupform .required").bind("blur",function()
		{
		checkForReqUpdate("signupform");
		});
	}

$(function()
	{
	if ($_GET["no_tracking"]) __no_tracking = true;
	setUpFormHandlers_signup1();
	setUpUploadButton();
	});
Shadowbox.init({
	language:"en",
	players:["iframe","img"],
	width:1100,
	height:800
	}); 