var ele_reviewtext = $("#review_text");

function submit_review_text(e) { 
			$("#review_messages").animate({height: 'hide', opacity: 'hide' }, "normal").empty();
			$("#submit_review").attr({ disabled : 'disabled' }); 
			text_val = "";
    		if(ele_reviewtext.val() != TEXT_BOX_REVIEW) {
    			text_val = ele_reviewtext.val();
    		}
    		post_array = {
					review_text : text_val, 
					rating: $("input[name='rating']:checked").val()
    	    };
    	    if(typeof(FB) != 'undefined' && FB.Facebook.apiClient.get_session() != null) {
    	    	post_array['facebook'] = FB.Facebook.apiClient.get_session().uid;
    	    } else {
    	    	post_array['nickname'] = $("input[name=nickname]").val();
    	    	post_array['customers_email_address'] = $("input[name=email]").val(); 
    	    }
			$.post("/ajax_index.php?main_page=reviews&action=write_review&products_id=" + products_id, 
				post_array,
				function(json) {
					if(json.error) {
						if(json.redirect!==undefined) {
							location.href = json.redirect;
						} else {
							$("#review_messages").append(json.error_html).fadeIn("normal");//.animate({opacity: 1.00}, 3000).fadeOut("slow", function() {$(this).remove()});
							$("#submit_review").attr({ disabled : '' }); 
						}
					} else {
						$("#review_messages").append(json.message_html).fadeIn("normal");//.animate({opacity: 1.00}, 3000).fadeOut("slow", function() {$(this).remove()});
						if(typeof json.review_html_id != "undefined") {
							add_review_text(json, json.review_html_id);						
						}
						if(true || json.max_reviews === true) {
							$("#write_review_title").empty();
							$("#write_review_body").empty();
						} else {
							ele_reviewtext.val("");
							$(".cancel").click();
						}	
					}
				},
				"json"
			);
			e.preventDefault();
			return false;
		}

function add_review_text(json, id) {
	$(".empty_review").clone().attr("id", id).removeClass("empty_review").prependTo("#written_reviews").animate({height: 'show', opacity: 'show' }, "normal");
	id = "#" + id;
	$(id + " .profile").append(json.profile_html);
	$(id + " .review_comment").append(json.body_html);
	$(id + " .review_rating").addClass(json.rating_html_id);
	$("." + json.rating_html_id).empty().append(json.rating_html);
	if(typeof(FB) != 'undefined'  && FB.Facebook.apiClient.get_session() != null) {
		FB.XFBML.Host.parseDomElement($(id).get(0));
		if($("#submit_to_wall").is(":checked")) {
			show_fb_form_review();
		}		
	}
}

$(document).ready(function() {
	//preset the review box to small:
	if(ele_reviewtext.val() == '' || ele_reviewtext.val() == TEXT_BOX_REVIEW) {
		ele_reviewtext.attr("rows", "1").css("height", 32);
	}
	var oldReviewHeight = ele_reviewtext.css('height');
	ele_reviewtext.focus(
		function() {
			if(ele_reviewtext.val() == TEXT_BOX_REVIEW)
			{
				ele_reviewtext.val("");
				ele_reviewtext.css("color", "#111111");
				ele_reviewtext.css("border", "solid 2px orange");
				ele_reviewtext.animate({height: "100px"},'slow');
			}
		}
	);
	ele_reviewtext.blur(
		function() {
			ele_reviewtext.css("color", "#666666");
			ele_reviewtext.css("border", "solid 2px #cdcdcd");
			if(ele_reviewtext.val() == "")
			{
				ele_reviewtext.val(TEXT_BOX_REVIEW); 
				ele_reviewtext.animate({height: oldReviewHeight},'fast');
			}
		}
	);
	if(ele_reviewtext.val() == "") {
		ele_reviewtext.val(TEXT_BOX_REVIEW);
	}
	$("#write_review_form").submit(
		submit_review_text
	);
});