var last_show_answer_value = 0;
var last_show_admin_value = 0;

function show_answer_post(post_id) {
	if (post_id == last_show_answer_value) {
		$('answer_' + post_id).style.display='none';
		last_show_answer_value = 0;
	} else {
		if (last_show_answer_value) {
			$('answer_' + last_show_answer_value).style.display='none';
		}
		$('answer_' + post_id).style.display='block';
		last_show_answer_value = post_id;
	}
}

function show_admin_post(post_id) {
	if (post_id == last_show_admin_value) {
		$('admin_' + post_id).style.display='none';
		last_show_admin_value = 0;
	} else {
		if (last_show_admin_value) {
			$('admin_' + last_show_admin_value).style.display='none';
		}
		$('admin_' + post_id).style.display='block';
		last_show_admin_value = post_id;
	}
}

function jump_to_iterator(id) {
    $('actual_post_' + current_post).style.border="1px solid #ccc";
    current_post = id;
    $('actual_post_' + current_post).style.border="3px solid #780000";
	if (id > 1) {
		id = id - 1;
	}
    $('actual_post_' + id).scrollTo();
}

function show_parent(parent_iterator, post_iterator) {
	for (var i = parent_iterator + 1; i < post_iterator; i++) {
		$('post_' + i).style.display="none";
	}
	$('post_extra_' + parent_iterator).style.display="block";
	$('post_extra_' + parent_iterator).innerHTML='<a href="javascript:show_all_posts(' + parent_iterator + ',' + post_iterator + ');">Visa alla</a>';
	
	jump_to_iterator(parent_iterator);
}

function show_all_posts(parent_iterator, post_iterator) {
	for (var i = parent_iterator + 1; i < post_iterator; i++) {
		$('post_' + i).style.display="block";
	}
	$('post_extra_' + parent_iterator).style.display="none";
	
	jump_to_iterator(post_iterator);
}

function retrieve_children(div, post_iterator, post_id, sort_id) {
	show_info_func = function (transport) { show_children(div, post_iterator, div.innerHTML, transport); };
	failed_show_info_func = function (transport) { show_children(div, post_iterator, div.innerHTML, transport); };
    var pars = 'post=' + post_id + "&sort=" + sort_id + "&start_iterator=" + post_iterator;
	var myAjax = new Ajax.Request('forum/ajax/get_children.cgi',
	                              { method: 'get',
		                            parameters: pars,
	                                onSuccess: show_info_func,
								    onFailure: failed_show_info_func
	                              });

}

function show_children(div, post_iterator, extra, transport) {
	var added = post_iterator + 1;
	
	var data = transport.responseJSON;
	for (var i = 0; i < data.length; i++) {
		var contentname = 'content_' + data[i].id;
		if (i != data.length - 1) {
			$(contentname).parentNode.style.marginLeft="20px";
		}
		if (data[i].message) {
			$(contentname).innerHTML=data[i].message;
		}
	}
	$('expand_'+post_iterator).style.display='none';
}

function describe_abuse(post) {
    if ($('desc_' + post).style.display == 'none') { 
	$('desc_' + post).style.display = 'block';
    }
    else if ( $('desc_' + post).style.display == 'block') {
	$('desc_' + post).style.display = 'none';
    }
}

function report_abuse(post) {
    str = $('post_' + post).value + ' ' + $('context_' + post).value + ' ' + $('abuse_member_' + post).value + ' ' + $('description_' + post).value;
    show_info_func = function (transport) { save_abuse(transport, post); };
    var pars = 'post=' + $('post_' + post).value + '&con=' + $('context_' + post).value + '&abuse_member=' + $('abuse_member_' + post).value + '&description=' + $('description_' + post).value;
    var myAjax = new Ajax.Request('/forum/ajax/save_report_abuse.cgi',
	                              { method: 'get',
									parameters: pars,
	                                onSuccess: show_info_func
	                              });
}

function save_abuse(transport, post) {
    if (transport.responseText == 'ok') {
	$('desc_' + post).style.display = 'none';
	$('report_abuse_' + post).innerHTML = "Inlägg anmält";
    }
    else {
	alert("Något gick fel");
	$('desc_' + post).style.display = 'none';
	$('report_abuse_' + post).innerHTML = "Något gick fel";
    }
}

function remove_post(post) {
    show_info_func = function (transport) { confirm_remove_post(transport); };
    var pars = 'post=' + post + '&type=post';
    var myAjax = new Ajax.Request('forum/ajax/remove_post.cgi',
	                              { method: 'get',
									parameters: pars,
	                                onSuccess: show_info_func
	                              });
}

function remove_article(post) {
    if (!confirm('Vill du verkligen ta bort detta?')) {
        return false;
    }
    show_info_func = function (transport) { confirm_remove_article(transport); };
    var pars = 'post=' + post + '&type=article';
    var myAjax = new Ajax.Request('forum/ajax/remove_post.cgi',
	                              { method: 'get',
									parameters: pars,
	                                onSuccess: show_info_func
	                              });
}

function confirm_remove_post(transport) {
    if (transport.responseText == 'ok') {
    	document.location.reload();
    }
    else {
	alert("Något gick fel");
    }
}
function confirm_remove_article(transport) {
    if (transport.responseText == 'ok') {
	document.location.reload();
    }
}

function showNoCreateNew(e, div){
// capture the mouse position
    var posx = 0;
    var posy = 0;
    if (!e) var e = window.event;
    if (e.pageX || e.pageY)
    {
        posx = 400;
        posy = e.pageY- 120;
    }
    else if (e.clientX || e.clientY)
    {
        posx = 400;
        posy = e.clientY + document.documentElement.scrollTop - 120;
    }
	$(div).style.left = posx + "px";
	$(div).style.top = posy + "px";
	$(div).style.display='block';
}

