//Comments
function Comments_Page(Page){
	var Article_Id = Get_Values("Article_Id");
	var Domain = Get_Values("Domain");
	
	var Comments_Div = $('#Comments_Div');
	var Comments_List = $('#Comments_List', Comments_Div);
	var Loading = $('#Loading_Pagination', Comments_Div);
	var Error_Div = $('#Error_Pagination', Comments_Div);
	
	Error_Div.slideUp("fast");
	
	Comments_List.fadeOut("slow", function(){
		Loading.fadeIn("slow", function(){
			$.post(Domain + "/en/comments_pagination", { Page: Page, Article_Id: Article_Id },
			function(Data){
				if (Data.match(/Pagination/i)){
					Comments_List.html(Data);
					Loading.fadeOut("slow", function(){
						Comments_List.fadeIn("slow");
					});
				}else{
					Loading.fadeOut("slow", function(){
						Error_Div.html("Unable to fetch comments. Please try again later");
						Error_Div.slideDown("slow");
					});
				}
			});
		});
	});
}
			
function Reload_Captcha(Div){
	var Domain = Get_Values("Domain");
	var Unique_Id = ((new Date()).getTime());
	var Div = $("#"+Div);
	if (Div.length > 0){
		$('#Captcha_Image', Div).attr("src", Domain + '/captcha.jpg?session=' + Unique_Id);
	}
}
function Add_Comment(){
	var Domain = Get_Values("Domain");
	var Article_Id = Get_Values("Article_Id");
	
	var Comments_Div = $('#Comments_Div');
	
	var Name = jQuery.trim($('#Input_Name', Comments_Div).val());
	var Comment = jQuery.trim($('#Input_Comment', Comments_Div).val());
	var Captcha = jQuery.trim($('#Input_Captcha', Comments_Div).val());
	var Captcha_Enabled = jQuery.trim($('#Captcha_Enabled', Comments_Div).val());
	
	var Error_Div = $('#Error_Add', Comments_Div);
	Error_Div.slideUp("slow");
	
	var Done_Div = $('#Done_Add', Comments_Div);
	Done_Div.slideUp("slow");
	
	var Done = 0;
	
	$('#Loading_Submit', Comments_Div).fadeIn("slow");
	
	if (Name == "" || Comment == ""){
		Error_Div.html("Please enter both Name and Comment");
		Error_Div.slideDown("slow");
	}else{
		Name_Enc = encodeURIComponent(Name);
		Comment_Enc = encodeURIComponent(Comment);
		Captcha_Enc = encodeURIComponent(Captcha);
		
		//Post Vars
		$.post(Domain + "/en/save_comments", { Article_Id: Article_Id, Name: Name_Enc, Comment: Comment_Enc, Captcha: Captcha_Enc, Captcha_Enabled: Captcha_Enabled },
		function(Data){
			if (Data.match(/\|\|/)){
				var Result = Data.split("||");
				var Message = jQuery.trim(Result[0]);
				var Type = jQuery.trim(Result[1]);
				
				if (Type == 0){ //Error
					Error_Div.html(Message);
					Error_Div.slideDown("slow");
				}else if (Type == 1){ //Captcha
					$('#Comment_Form', Comments_Div).fadeOut("slow", function(){
						$('#Captcha_Enabled', Comments_Div).val(1);
						$('#Comment_Captcha', Comments_Div).fadeIn("slow");
					});
				}else if (Type == 2){ //Done
					$('#Submit_Button', Comments_Div).fadeOut("slow");

					$('#Comment_Form', Comments_Div).fadeOut("slow", function(){
						$('#Comment_Captcha', Comments_Div).fadeOut("slow", function(){
							Done_Div.html(Message);
							Done_Div.fadeIn("slow");
						});
					});
					Done = 1;
				}
			}else{
				Error_Div.html("Unable to save comment. Please try again later.");
				Error_Div.slideDown("slow");
			}
		});
	}
	
	$('#Loading_Submit', Comments_Div).fadeOut("slow");
	
	return false;
}
//Ratings
function Create_Rating(Div_Id, Ratings, Type, Link){
	var Div = document.getElementById(Div_Id);
	Div.innerHTML = "";

	var Count = 1;
	var Stars = "";
	var Mid = 0;
	
	Ratings = Math.round(Ratings*10)/10;
	
	Ratings_Split = String(Ratings).split('.');
	
	B_Decimal = parseInt(Ratings_Split[0], 10);
	A_Decimal = parseInt(Ratings_Split[1], 10);
	
	if (isNaN(A_Decimal)){
		Stars = B_Decimal;
	}else{
		if (A_Decimal > 5){ //Roundup
			Stars = B_Decimal + 1;
		}else if (A_Decimal < 5){ //Rounddown
			Stars = B_Decimal;
		}else if (A_Decimal == 5){
			Stars = B_Decimal;
			Mid = 1;
		}
	}
	
	if (Type == "Big"){
		var Star = 'big.png';
		var Star_Off = 'off_big.png';
		var Star_Mid = 'Mid_big.png';
	}else if (Type == "Small"){
		var Star = 'small.png';
		var Star_Off = 'off_small.png';
		var Star_Mid = 'Mid_small.png';
	}

	var All_Stars = "";
	for (i=1; i <= Stars; i++){
		All_Stars += "," + Star;
	}
	if (Mid == 1){
		All_Stars += "," + Star_Mid;
	}
	var Blanks = 5-Stars-Mid;
	for (i=1; i <= Blanks; i++){
		All_Stars += "," + Star_Off;
	}
	
	var Link_S = "";
	var Link_E = "";
	
	if(All_Stars != ""){
		if (All_Stars.match(/,/)){
			var Stars_Split = All_Stars.split(",");
			for(i=1; i< Stars_Split.length; i++){
				if (Link == 1){
					Link_S = '<a class="Pointer" onMouseOver="Rating_Hover('+Count+', \''+Div_Id+'\', \''+Type+'\');" onClick="Insert_Rating('+Count+', \''+Div_Id+'\')">';
					Link_E = '</a>';
				}
				Div.innerHTML += Link_S + '<img src="Templates/Images/Stars/'+Stars_Split[i]+'" id="Star-'+Count+'" style="border: 0; border: none;" alt="" class="Star_Rating">' + Link_E;
				
				Count += 1;
			}
		}
	}		
}

function Rating_Hover(Count, Div_Id, Type){
	if (Type == "Big"){
		var Star = "big.png";
		var Star_Off = "off_big.png";
	}else if (Type == "Small"){
		var Star = "small.png";
		var Star_Off = "off_small.png";
	}
	for (i=1; i <= Count; i++){
		var Star_Div = $("#Star-" + i, $("#"+Div_Id));
		Star_Div.attr("src", 'Templates/Images/Stars/'+Star);
	}
	for (i=Count+1; i <= 5; i++){
		var Star_Div = $("#Star-" + i, $("#"+Div_Id));
		Star_Div.attr("src", 'Templates/Images/Stars/'+Star_Off);
	}
}


function Insert_Rating(Rating, Div_Id){
	var Domain = Get_Values("Domain");
	var Article_Id = Get_Values("Article_Id");

	var Rating_Error = $('.Rating_Error');
	var Rating_Done = $('.Rating_Done');
	
	Rating_Done.slideUp("slow");
	Rating_Error.slideUp("slow");
	
	$.post(Domain + "/en/save_ratings", { Rating: Rating, Article_Id: Article_Id },
	function(Data) {
		if (Data.match(/\|\|/)){
			var Result = Data.split("||");
			var Message = jQuery.trim(Result[0]);
			var Type = jQuery.trim(Result[1]);
			
			if (Type == 0){ //Error
				Rating_Error.html(Message);
				Rating_Error.slideDown("slow");
			}else if (Type == 1){
				var New_Ratings = jQuery.trim(Result[2]);
				Create_Rating(Div_Id, New_Ratings, "Big", 1);
				$('#Article_Rating').attr("onMouseOut", 'Create_Rating(\''+Div_Id+'\', '+New_Ratings+', "Big", 1)');
				
				Rating_Done.html(Message);
				Rating_Done.slideDown("slow");
			}
		}else{
			Rating_Error.html("Unable to save ratings. Please try again later.");
			Rating_Error.slideDown("slow");
		}
	});
}
