var getStatusWaiting = false;
function getStatusSinglePhotoProduct()
{
	/*	Make the spinner	*/
	var executer = new PeriodicalExecuter
	(
		function(pe)
		{
			if(getStatusWaiting) return;
			getStatusWaiting = true;
			var ajax = new Ajax.Request('/do/control.Project.php',
			{
				method: 'post',
				parameters: 'do=checkStatus&aj=1',
				onSuccess: function(transport)
				{
					getStatusWaiting = true;
					var json = transport.responseText.evalJSON();
					if(!json)
					{
						pe.stop();
						$('previewPane').innerHTML = 'Preview is currently unavailable';
                        endPreview();
						return;
					}//end if
					if(json.progressToPreview == '100' || json.canPreview)
					{
						pe.stop();
						//$('previewPane').innerHTML = '<img id="poster" style="display:none" src="'+json.url+'" />';
						$('previewPane').innerHTML = getPreviewStr(263,396,json.url);
                        new Effect.Appear('poster', {duration: 0.5});
                        new Effect.Appear('retryPrompt', {duration: 0.2});
                        new Effect.Appear('getPosterBtn', {duration: 0.5});
                        endPreview();
						return;
					}//end if
					return;
				},//end onSuccess
				onFailure: function(transport)
				{
					getStatusWaiting = false;
					pe.stop();
					$('previewPane').innerHTML = '<div class="sysError" style="color:red;padding:20px;padding-top:75px;">'+transport.responseText+'</div>';
                    endPreview();
					return;
				},//end onFailure,
				onComplete: function(transport)
				{
					getStatusWaiting = false;
				}//end onComplete
			});//end Ajax Request
		},//end function
		1 //execution time in seconds
	);//end PeriodicalExecuter
}//end getStatusSinglePhotoProduct


function getPreviewStr(w,h,url)
{
	var str = '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="https://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="'+w+'" height="'+h+'" id="poster" align="middle"><param name="allowScriptAccess" value="sameDomain" /><param name="allowFullScreen" value="false" /><param name="movie" value="/img/preview.swf?u='+url+'" /><param name="quality" value="high" /><param name="bgcolor" value="#000000" /><embed src="/img/preview.swf?u='+url+'" quality="high" bgcolor="#000000" width="'+w+'" height="'+h+'" name="poster" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="https://www.macromedia.com/go/getflashplayer" /></object>';
	return str;
}//end getPreviewStr


function updatePreview()
{
	new Ajax.Request(
		'/do/control.Project.php',
		{
			method: 'post',
			parameters: 'do=userPhotoPreview&aj=1',
			onFailure: function(transport)
			{
				alert(transport.responseText);
				$('photoPreview').innerHTML = 'There was a problem uploading your image.';
                notifyImageUpload();
			},//end onFailure
			onSuccess: function(transport){
				$('photoPreview').innerHTML = transport.responseText;
                notifyImageUpload();
			}//end success function
		});
}//end updatePreview


function rotateImg(degrees)
{
	var old = $('photoPreview').innerHTML;
	$('photoPreview').innerHTML = '<div style="width:175px;height:175px;text-align:center;"><img style="margin-top:30px" src="/img/loader.gif" /><br /><br /><b>Rotating image...</b></div>';
	new Ajax.Request(
		'/do/control.Project.php',
		{
			method: 'post',
			parameters: 'do=rotate&aj=1&degrees='+degrees,
			onSuccess: function(transport){
				$('photoPreview').innerHTML = transport.responseText;
//				updateSinglePhotoProductPreview();
                notifyImageUpload();
			}//end success function
		});
}//end rotateImg

function updateSinglePhotoProductPreview()
{
    initPreviewPanel();
    beginPreview();

	/*	Kick off the new preview	*/
	var name = $('name').value;
	var headline = $('headline').value;
	var sku = $$('input:checked[type="radio"][name="sku"]').pluck('value');

	var preview = new Ajax.Request('/do/control.Project.php?aj=1&do=create&sku='+sku+'&name='+name+'&headline='+headline,
	{
		method: 'get',
		onFailure: function(transport)
		{
			alert(transport.responseText);
			$('previewPane').innerHTML = 'There was a problem creating your preview.';
            endPreview();
		},//end onFailure
		onSuccess: function(transport)
		{
			getStatusSinglePhotoProduct();
		}//end onSuccess
	});//end Ajax.Request
}//end updateSinglePhotoProductPreview

function showPoster(url,preview)
{
	var so = new SWFObject("/img/poster.swf", "mymovie", wwidth, wheight, "5", "#000000");
	so.addVariable("u",url);
	//so.addVariable("b",'/img/widget-button.jpg');
	//so.addVariable("c",'http://poster.myespnhighlights.com/startOver')
	so.addParam("wmode","opaque");
	if(preview)
	{
		so.write("previewPane",'<div id="posterPreview"></div>');
		$('posterPreview').style.width = wwidth+'px';
		$('posterPreview').style.height = wheight-22+'px';
		$('posterPreview').style.position = 'absolute';
		$('posterPreview').style.top = '0px';
		$('posterPreview').style.left = '0px';
	}//end if
	else
		so.write("previewPane");
}//end showPoster

function startVideo(video, width, height,auto){
	var so = new SWFObject('/img/mediaplayer.swf','mpl',width,height,'9.0.115');
	so.addParam('allowfullscreen','false');
	so.addParam('allowscriptaccess','true');
	so.addParam("wmode","opaque");
	so.addVariable('displayheight',height);
	so.addVariable('file','' + video);
	so.addVariable('image','/img/screen-cap.jpg');
	if(auto)
		so.addVariable('autostart','true');
	so.addVariable('height',height);
	so.addVariable('width',width);
	so.useExpressInstall('/img/expressinstall.swf');
	so.setAttribute('xiRedirectUrl', 'http://poster.myespnhighlights.com/'); // must be the absolute URL to your site
	so.write('marketPlayer');
}
function shareProjectE(id,session)
{
	var oldHTML = $('btnWrapper').innerHTML;
	$('btnWrapper').innerHTML = '<b>sending emails, please wait...</b>';
	new Ajax.Updater({success:'shareEmailContent'},'/do/control.Project.php',
		{
			method: 'post',
			parameters: 'id='+id+'&key='+session+'&do=share&aj=1&shareEmail='+$('shareEmail').value+'&shareReply='+$('shareReply').value+'&shareMessage='+$('shareMessage').value,
			onFailure: function(transport){
				alert(transport.responseText);
				$('btnWrapper').innerHTML = oldHTML;
			}//end failure function
		})
	return false;
}//end shareProjectE

function updateSalesTax()
{
	var state = $('stateOrProvinceCode').value;
	new Ajax.Request(
		'/do/control.SalesInfo.php',
		{
			method: 'post',
			parameters: 'do=updateSalesTax&aj=1&stateOrProvinceCode='+state,
			onSuccess: function(transport){
				var json = transport.responseText.evalJSON();
				if(!json)
				{
					return;
				}//end if
				$('salesTaxTR').show();
				$('salesTax').innerHTML = '$'+json.salesTax;
				$('totalPrice').innerHTML = '$'+json.totalPrice
				new Effect.Highlight('salesTax');
				new Effect.Highlight('totalPrice');
			}//end success function
		});
	return true;
}//end updateSalesTax



/**
* Returns the value of the selected radio button in the radio group, null if
* none are selected, and false if the button group doesn't exist
*
* @param {radio Object} or {radio id} el
* OR
* @param {form Object} or {form id} el
* @param {radio group name} radioGroup
*/
function $RF(el, radioGroup) {
    if($(el).type && $(el).type.toLowerCase() == 'radio') {
        var radioGroup = $(el).name;
        var el = $(el).form;
    } else if ($(el).tagName.toLowerCase() != 'form') {
        return false;
    }

    var checked = $(el).getInputs('radio', radioGroup).find(
        function(re) {return re.checked;}
    );
    return (checked) ? $F(checked) : null;
}