var flag_new_id_comm = 0;

function GetOrCloseComment(nid, new_id) { // new_id - ???
	flag_new_id_comm = 0; // очищаем в глоб. перем. данные.

	if( ($('#comm_area_'+nid).css("display")) == "none"  || new_id >  0 ){
		
		$.ajax({
			type: "POST",
			dataType: "json",
			url: "/get_comment/",
			async: false,
			data:  {
				nid: nid,
				new_id: new_id
			},
			success: function(data){
				jQuery.parseJSON(data);
				$('#comm_area_'+nid).html(data.data_ajax);
				
				if(new_id>0){
					$('#comm_'+new_id).fadeIn();
				}
				else{
					$('#comm_area_'+nid).slideDown("slow");
				}
			}
		});
					
		// открыть ссылки для добовления коментов
		
	} 
	else {
		$('#comm_area_'+nid).slideUp("slow");	//comm_area.style.display = 'none';
	}
	return false;
}


function AddFormComm(id, nid, mode) {  // id - номер коммента (если 0 то ответ на тему.),  nid - номер темы,  mode - first, last, internal 
	var flag_close = 0; 
	
	
	// если пытаемся закрыть
	if(mode=="internal"){
		if( ($('#comm_form_add_'+id).css("display")) == "block" ){  // при закрытии 
			$('#comm_form_add_'+id).fadeOut();
			flag_close = 1;
		}
	}
	else{
		if( ($('#form_add_'+mode+'_'+nid).css("display")) == "block" ){  // при закрытии 
			$('#form_add_'+mode+'_'+nid).fadeOut();
			flag_close = 1;
		}
	}
	
	
	if(flag_close==0){  // подгрузить форму если она не подгружена.
		// сначала закрываем возможно открытые.
		$('.comm_form_add').fadeOut();
		
		// открываем текущюю форму для ответа.
		$.ajax({
			type: "POST",
			dataType: "json",
			url: "/add_form_comm/",
			async: false,
			data:  {
				id: id,
				nid: nid,
				mode: mode
			},
			success: function(data){
				jQuery.parseJSON(data);
				
				if(mode=="internal"){  // значит отвечают на сообщение
					$('#comm_form_add_'+id).html(data.data_ajax).fadeIn();
				}
				else{ // отвечают на тему
					
					$('#form_add_'+mode+'_'+nid).html(data.data_ajax).fadeIn();
				}
			}
		});
		
	}
	return false;
}


	
function SendComment(id, nid, mode) {

	var flag_error = "";
	if(mode=="internal"){
		var name =  document.forms["form_"+nid+"_comm_"+id].name.value;
		var text =  document.forms["form_"+nid+"_comm_"+id].text.value;
	}
	else{
		var name =  document.forms["form_"+nid+"_comm_"+id+""+mode].name.value;
		var text =  document.forms["form_"+nid+"_comm_"+id+""+mode].text.value;
	}
		
	if(name && text){
		
		$.ajax({
			type: "POST",
			dataType: "json",
			url: "/send_comment/",
			async: false,
			data:  {
				id: id,
				nid: nid,
				name: name,
				text: text
			},
			success: function(data){
				jQuery.parseJSON(data); // возращают номер доб. записи.

				if(data.data_ajax2=="error_user_name"){						
					flag_error = 1;
				}
				flag_new_id_comm = data.data_ajax2;

			}
		});
		
		if(flag_error==1){
			alert ("Пользователь с таким именем уже зарегистрирован. Выберите другое имя.");
			return false;
		}
		
		if(mode=="internal"){
			$('#comm_form_add_'+id).fadeOut().css('display','none');  //скрываем форму
		}
		else{
			$('#form_add_'+mode+'_'+nid).fadeOut().css('display','none');  //скрываем форму			
		}
				
		GetOrCloseComment(nid, flag_new_id_comm); // 1 -  значит доб. комент и надо перезагрузить ветвь.
	}
	else{
		var str_err = "";
		if ( $('input').hasClass('flag_user') ){
			str_err = "Заполните поле 'Сообщение'";
		}
		else{
			str_err = "Поля 'Имя' и 'Сообщение' обязательны для заполнения";
		}		
		
		if(mode=="internal"){
			$('#err_'+nid+'_comm_'+id).html(str_err).fadeIn();
			setTimeout(function(){ $('#err_'+nid+'_comm_'+id).fadeOut(); }, 3000);
		}
		else{
			$('#err_'+nid+'_comm_'+id+mode).html(str_err).fadeIn();	
			setTimeout(function(){ $('#err_'+nid+'_comm_'+id+mode).fadeOut(); }, 3000);
		}
	}
	return false;
}	



function EditComment(id, save) {  // если save=1 значит сохраняем комент, если нет то просто выводим поле textarea
	
	if(save!=1){
		$.ajax({
			type: "POST",
			dataType: "json",
			url: "/edit_comment/",
			async: false,
			data:  {
				id: id,
				save: 0,
				text: 0
			},
			success: function(data){
				jQuery.parseJSON(data);	
				$('#comm_'+id).find(".comm_text").html(data.data_ajax).fadeIn();
			}
		});
	}
	else{
		var text = $('#comm_'+id).find(".comm_text").find("textarea").val();
		$.ajax({
			type: "POST",
			dataType: "json",
			url: "/edit_comment/",
			async: false,
			data:  {
				id: id,
				save: 1,
				text: text
			},
			success: function(data){
				jQuery.parseJSON(data);	
				$('#comm_'+id).find(".comment").html(data.data_ajax).fadeIn();
			}
		});
	}

	return false;
}
