var initial = 1;
var talkback_thread_id = 0;
var talkback_forum_post_id = 0;
var talkback_forum_id = 0;
var talkback_prev_forum_post_id = 0;
var prev_forum_post_id = '0';
var submit_talkback_id = 0;
var talkback_preview = 0;
var abusivepost_id = 0;
var display_limit = 0;

function ajpostForumPostShow(thread_id, forum_post_id, forum_id, _display_limit)
{
	// :piete - added for rolling impressions
	if (typeof window.clearRolling == 'function') {
		clearRolling();
	}
	if(initial == 1){

		talkback_prev_forum_post_id = talkback_forum_post_id;
		initial = 0;

	}
	var file = '/forums/aj/forumpost_post.htm';
	var str = ''; 
        talkback_thread_id = thread_id;
	talkback_forum_post_id = forum_post_id;
	talkback_forum_id = forum_id;
	display_limit = _display_limit;

	str ='THREAD_ID='+encodeURIComponent(thread_id)+'&FORUM_POST_ID='+encodeURIComponent(forum_post_id)+'&FORUM_ID='+encodeURIComponent(forum_id)+'&THREAD_DISPLAY_LIMIT='+encodeURIComponent(display_limit);

    request.open( "POST", file, true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
    request.onreadystatechange = updateForumPostComment;
	request.send(str);
}

function updateForumPostComment(){
    if (request.readyState == 4) {
       if (request.status == 200) {
         var response = request.responseText;

	if(talkback_prev_forum_post_id != 00 || talkback_prev_forum_post_id != 0){
		document.getElementById('reply_'+talkback_prev_forum_post_id).innerHTML = '';
	}

	if(talkback_forum_post_id != 00){

		document.getElementById('ajpostComment').innerHTML = '';
		document.getElementById('reply_'+talkback_forum_post_id).innerHTML = response;

		var scrollToTalkback = new Fx.Scroll(window, {duration:500});
		scrollToTalkback.toElement(talkback_forum_post_id);


	 }else{

		document.getElementById('ajpostComment').style.display = '';
		document.getElementById('ajpostComment').innerHTML = response;
        	setTimeout('0.5');

		var scrollToTalkback = new Fx.Scroll(window, {duration:500});
		scrollToTalkback.toElement($('talkback'));

	 }

	if(talkback_prev_forum_post_id != talkback_forum_post_id){

		talkback_prev_forum_post_id = talkback_forum_post_id;

	}

       } else
         ;//alert("status is " + request.status);
     }
}

function ajPreviewForumPost(f){

	var file = '/forums/aj/forumpost_preview.htm';
	var str = ''; 
	
        for(var i = 0;i < f.elements.length;i++)
        {
	    if(f.elements[i].name != 'OPTIONS'){
            	str += f.elements[i].name +
                	"=" + encodeURIComponent(f.elements[i].value) + "&";
           }
	   else{
		if(f.elements[i].checked){
	            	str += f.elements[i].name +
        	        	"=" + encodeURIComponent(f.elements[i].value) + "&";
		}

	   }		
        }


    	request.open( "POST", file, true );
    	request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
    	request.onreadystatechange = updateForumPostPreview;
    	request.send(str);
}

function updateForumPostPreview(){
    if (request.readyState == 4) {
       if (request.status == 200) {
         var response = request.responseText;
         //alert("res is " + response);
	 document.getElementById('ajpostPreview').innerHTML = response;

       } else{
         //alert("status is " + request.status);
       }	
     }	
}

function ajsubmitForumPost(f){

	var file = '/forums/aj/forumpost_controller.htm';
	var str = ''; 

        for(var i = 0;i < f.elements.length;i++)
        {
	    if(f.elements[i].name != 'OPTIONS'){
            	str += f.elements[i].name +
                	"=" + encodeURIComponent(f.elements[i].value) + "&";
           }
	   else{
		if(f.elements[i].checked){
	            	str += f.elements[i].name +
        	        	"=" + encodeURIComponent(f.elements[i].value) + "&";
		}

	   }
		
	   if(f.elements[i].name == 'THREAD_DISPLAY_LIMIT'){
		display_limit = f.elements[i].value;
	   }
			
        }


    	request.open( "POST", file, true );
    	request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
    	request.onreadystatechange = updateForumPostComplete;
    	request.send(str);

	document.getElementById('ajpostFields').innerHTML = '<div class="loading"><img src="/i/x/ajax-loader.gif" alt="Loading" width="220" height="19" /><span>processing your submission...</span></div>';
	document.getElementById('ajpostFields').style.display = 'inline';
}

function updateForumPostComplete(){
    if (request.readyState == 4) {
       if (request.status == 200) {
         var response = request.responseText.split("<!-- TALKBACK SPLIT -->");

	 if(response[0] != ''){

		document.getElementById('ajpostComment').innerHTML = '';

		submit_talkback_id = response[2];

		setTimeout('1000');

		//Refresh talkback
		ajupdateForumPost();

	 }else{
		if(talkback_prev_forum_post_id != 00 || talkback_prev_forum_post_id != 0){
			document.getElementById('reply_'+talkback_forum_post_id).innerHTML = response[1];
		}else{
			document.getElementById('ajpostComment').innerHTML = response[1];
		}

	 }

       } else
         ;//alert("status is " + request.status);
     }	
}


function ajupdateForumPost(){

	var file = '/forums/aj/update_forumpost.htm';
	var str = '';

        str = 'AJAX_THREAD_ID='+talkback_thread_id+'&AJAX_FORUM_POST_ID='+talkback_forum_post_id+'&AJAX_THREAD_DISPLAY_LIMIT='+display_limit;

    	request.open( "POST", file, true );
    	request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
    	request.onreadystatechange = updateForumPostTalkback;
    	request.send(str); 

	document.getElementById('talkback-thread').innerHTML = '<div class="loading"><img src="/i/x/ajax-loader.gif" alt="Loading" width="220" height="19" /><span>processing your submission...</span></div>';
	document.getElementById('talkback-thread').style.display = 'inline';

}

function updateForumPostTalkback(){
    if (request.readyState == 4) {
       if (request.status == 200) {
          var response = request.responseText.split("<!-- TALKBACK SPLIT -->");
          //alert("res is " + response);

	 document.getElementById('talkback-thread').innerHTML = response[0];              
	 document.getElementById('talkback_count').innerHTML = response[1]+' comments';

	returnForumPost(submit_talkback_id);

       } else
         ;//alert("status is " + request.status);
     }	
}

function returnForumPost(comment_id){

	var scrollToTalkback = new Fx.Scroll(window, {duration:500});

	scrollToTalkback.toElement(comment_id);

}

function reportAbusive(post_id){

	var file = '/forums/aj/forumpost_reportabusive.htm';
	var str = '';
	abusivepost_id = post_id;

        str = 'FORUM_POST_ID='+post_id;

    	request.open( "POST", file, true );
    	request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
    	request.onreadystatechange = updateForumPostAbusive;
    	request.send(str); 

}

function updateForumPostAbusive(){

    if (request.readyState == 4) {
       if (request.status == 200) {
          var response = request.responseText;
          //alert("res is " + response);

	 document.getElementById('abusive_'+abusivepost_id).innerHTML = 'Abuse reported';

       } else
         ;//alert("status is " + request.status);
     }	
}

function ajshowLogin()
{
    var file = '/forums/aj/forumpost_login.htm';
    var str = ''; 

    request.open( "POST", file, true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=UTF-8");
    request.onreadystatechange = updateLoginText;
    request.send(str);
}

function updateLoginText(){
    if (request.readyState == 4) {
       if (request.status == 200) {
         var response = request.responseText;

	document.getElementById('ajpostComment').innerHTML = response;
	document.getElementById('ajpostComment').style.display = '';

	var scrollToTalkback = new Fx.Scroll(window, {duration:500});
	scrollToTalkback.toElement('ajpostComment');

       } else
         ;//alert("status is " + request.status);
     }
}