	$(document).ready(function() {
		$("a#thumb").fancybox({
			'titleShow'     : false,
			'transitionIn'	: 'elastic',
			'transitionOut'	: 'elastic'
		});
		
		$("#login").fancybox({
			'scrolling'		: 'no',
			'transitionIn'	: 'elastic',
			'transitionOut'	: 'elastic',
			'titleShow'		: false,
			'onClosed'		: function() {
			    $("#autherror").hide();
			}
		});
		
		$("#addreview").fancybox({
			'scrolling'		: 'no',
			'transitionIn'	: 'elastic',
			'transitionOut'	: 'elastic',
			'titleShow'		: false,
			'onClosed'		: function() {
				$("#autherror").hide();
			}
		});
		
		$('#popup-login-form').submit(function() {
			// Get the variables and post to login page
				var remember = '';
				if ($('#remember:checked').val() != null) {
					var remember = $('input[name=remember]').val();
				}
				posttourl = '/login';
				form_id = 'popup-login-form';
				postdata = 'username='+$('#username').val()+'&password='+$('#password').val()+'&remember='+remember;
				submit_form(posttourl, form_id, postdata);
				return false;
		});
		
		$('#add-review').submit(function() {
			if ($('#loadview').val() != 'undefined') {
				var loadview = $('#loadview').val();
				var prepend = $('#prepend').val();
			} else {
				var loadview = '';
				var prepend = '';
			}
			
			if (loadview == 'addreview') {
				// It's a pre-review login
				var remember = '';
				if ($('#review-remember:checked').val() != null) {
					var remember = $('input[name=review-remember]').val();
				}
				posttourl = '/login';
				form_id = 'add-review';
				var show_review_form = 1;
				postdata = 'username='+$('#review-username').val()+'&password='+$('#review-password').val()+'&remember='+remember+'&loadview='+loadview+'&prepend='+prepend+'&item_ASIN='+$('input[name=item_ASIN]').val()+'&image='+$('input[name=image]').val()+'&title='+$('input[name=title]').val();
			} else if($('input[name=formname]').val() == 'review') {
				// Get the review form fields
				posttourl = '/account/addreview';
				form_id = 'add-review';
				if ($("input[@name='rating']:checked").val()) {
					var rating = $('input[name=rating]:checked').val();
				} else {
					var rating = '';
				}
				postdata = 'item_ASIN='+$('input[name=item_ASIN]').val()+'&review_title='+$('input[name=review_title]').val()+'&review_content='+$('#review_content').val()+'&rating='+rating+'&image='+$('input[name=image]').val()+'&title='+$('input[name=title]').val();
			} else if ($('input[name=formname]').val() == 'captcha') {
				posttourl = '/account/addreview';
				form_id = 'add-review';
				postdata = 'temp_review='+$('input[name=temp_review]').val()+'&captcha_input='+$('#captcha_input').val();
			}
			submit_form(posttourl, form_id, postdata, show_review_form);
			return false;
		});
		  
		function submit_form(posttourl, form_id, postdata, show_review_form) {
			$.ajax({
				type: "POST",
				url: posttourl,
				data: postdata,
				success: function(txt){
					if(txt.indexOf('success') == -1 || show_review_form == 1){
						// Log failed, show form
						if (show_review_form == 1) {
							update_welcome_box();
							update_review_area($('#item_ASIN').val());
						}
						$("#"+form_id).fadeToggle('fast','linear',
							function() {
								$("#"+form_id).html(txt);
								$("#"+form_id).fadeIn();
								$.fancybox.resize();
							}
						);
						if(txt.indexOf('Added') != -1) {
							$("#addreview").addClass("off");
							$('#new-review-holder').load('/account/latestreview', function() {
				             	$('#new-review-holder').fadeIn("fast");   
			                });
						}
					} else {
				  		// Login worked, show confirmation and update page accordingly
						$.fancybox.close();
						// On certain pages, redirect to the shop homepage
						if (window.location.pathname.indexOf("logout") > 0) {
							window.location="/shop/";
						} else if (window.location.pathname.indexOf("account") > 0) {
							location.reload();
						} else {
							update_welcome_box();
							if ($('#item_ASIN').val() != '') {
								// Update the reviews area also
								update_review_area($('#item_ASIN').val());
							}
						}
						
					}
				},
				error: function (xhr, desc, exceptionobj) { alert("Sorry, there has been an error. If this continues, please contact us.");}
			});	
		}
		
		jQuery.fn.fadeToggle = function(speed, easing, callback) {
		    return this.animate({opacity: 'toggle'}, speed, easing, callback);
		};
		
		function update_welcome_box() {
			$('.welcome').fadeOut("slow",
                function() {
	                $('.welcome').load('/welcometext', function() {
		             	$('.welcome').fadeIn("fast");   
	                });
                }
	        ); 
		}
		
		function update_review_area(item_ASIN) {
			//$('#review-container').fadeOut("slow",
            //    function() {
	                $('#review-container').load('/shop/justreviews/'+item_ASIN, function() {
		             	$('#review-container').fadeIn("fast");   
	                });
            //    }
	        //); 
		}
		
		$("#gravatar-info").fancybox({
			'scrolling'		: 'no',
			'transitionIn'	: 'elastic',
			'transitionOut'	: 'elastic',
			'titleShow'		: false
		});
		
		$('#close').live('click', function() {
			$.fancybox.close();
			return false;
		});
		
	});
