
function photoFileStart(query, fromURL)
{	
	if (!fromURL)
	{	
		if($("#fileToUpload").val() =="") 
		{
		    $("#fileUploadError").html('No file selected. Please specify a JPEG (.jpg) file to upload!');
	    	return false; 	
		}
	
		query += "&" + window.location.search.substring(1); // pass on any existing query string
		var ext = $("#fileToUpload").val();
		ext = ext.substring(ext.lastIndexOf(".") + 1,ext.length);
		ext = ext.toLowerCase();
		if(ext != 'jpg' && ext != 'jpeg') 
		{
		    $("#fileUploadError").html('You selected a .'+ext+' file; please select a .jpg file instead!');
	    	return false; 	
		}
	}
	
	$("#fileUploadError").html("");
	$("#fileUploadMessage").html("");
	$("#loading").show();
	//$("#buttonUpload").hide();
	$("#fileUploadMessage").html("Uploading '"+$("#fileToUpload").val()+"'...<br/>")
	
	if (fromURL)
	{
		$.ajax
		(
			{
				// Do an initial copy and test
				url:'/shop/photoproc.php?step=check&fromURL='+fromURL,
				type:"POST",
				secureuri:false,
				dataType: 'json',
				success: function (data, status)
				{
					if(typeof(data.error) != 'undefined')
					{
						if(data.error != '')
						{
							$("#fileUploadError").html("Error Returned! " + data.error);
							$("#fileUploadMessage").html("");
							$("#loading").hide();
							//$("#buttonUpload").show();
							//alert(data.error);
						}else
						{
							$("#fileUploadMessage").html($("#fileUploadMessage").html() + data.msg);
							$("#loading").hide();
							photoFileProcess( data.w, data.h, data.tempFile, query);
						}
					}
				},
				error: function (data, status, e)
				{
					$("#fileUploadError").html("Error!  " + e + "." + data.responseText + "status:" + status);
					$("#fileUploadMessage").html("");
					$("#loading").hide();
					//$("#buttonUpload").show();
				}
			}
		);
	}
	else
	{
		$.ajaxFileUpload
		(
			{
				// Do an initial copy and test
				url:'/shop/photoproc.php?step=check&fromURL='+fromURL,
				secureuri:false,
				fileElementId:'fileToUpload',
				dataType: 'json',
				success: function (data, status)
				{
					if(typeof(data.error) != 'undefined')
					{
						if(data.error != '')
						{
							$("#fileUploadError").html("Error Returned! " + data.error);
							$("#fileUploadMessage").html("");
							$("#loading").hide();
							//$("#buttonUpload").show();
							//alert(data.error);
						}else
						{
							$("#fileUploadMessage").html($("#fileUploadMessage").html() + data.msg);
							$("#loading").hide();
							photoFileProcess( data.w, data.h, data.tempFile, query);
						}
					}
				},
				error: function (data, status, e)
				{
					$("#fileUploadError").html("Error!  " + e + "." + data.responseText + "status:" + status);
					$("#fileUploadMessage").html("");
					$("#loading").hide();
					//$("#buttonUpload").show();
				}
			}
		);
	}
	
	return false;

}

function photoFileProcess( w, h, tempFile, query )
{
	//$("#fileUploadError").html("");
	qstr = 'fromUpload=1&file='+encodeURIComponent(tempFile)+"&w="+w+"&h="+h+query;
	$("#loading").show();
	$("#buttonUpload").hide();
	$("#fileUploadMessage").html($("#fileUploadMessage").html() + "Processing... this may take a short while.");
	$.ajaxFileUpload
	(
		{
			// Do an initial copy and test
			url:'/shop/photoproc.php?'+qstr,
			secureuri:false,
			fileElementId:'fileToUpload',
			dataType: 'json',
			success: function (data, status)
			{
				if(typeof(data.error) != 'undefined')
				{
					if(data.error != '')
					{
						$("#fileUploadError").html("ERROR! " + data.error);
						$("#fileUploadMessage").html("");
						$("#loading").hide();
						$("#buttonUpload").show();
						//alert(data.error);
					}else
					{
						var redir = window.location.pathname + "?" + qstr;
						//$("#fileUploadMessage").html("Balls: " + redir);
						window.location = redir;
					}
				}
			},
			error: function (data, status, e)
			{
				$("#fileUploadError").html("ERROR! " + e + "." + data.responseText);
				//$("#fileUploadMessage").html("");
				$("#loading").hide();
				$("#buttonUpload").show();
			}
		}
	)
	
	return false;
}