function DisplayPagination(start, perPage, pageCount, curCount){
	var pageNumber = 0;
    if(start == 0){
		pageNumber = 1
    } 
	else{
		pageNumber = (((start * -1) + perPage) / perPage)
        if(pageNumber % 1 > 0){
            pageNumber = pageNumber + 1;
        }
    }
	showPageNav('myPager', 'pageNavigation', perPage, pageCount, pageNumber);
}

// Calls the UpdateMessageBoardMessage service request.
function updateMessageBoardMessage(thisCtrl, vis, hilite){
    var isVisible = vis;
    var isHighlighted = hilite;
    var id;
    
    id = thisCtrl.value;
    
    if(thisCtrl.name == "visible")
    {
        isVisible = thisCtrl.checked;
    }
	else if (thisCtrl.name == "highlight")
	{
		isHighlighted = thisCtrl.checked;
    }
    
	var resp = Tremor.Ajax.Call("panel","UpdateMessageBoardMessage",{messageId:id, visible:isVisible, highlighted:isHighlighted},{sync:true});

    window.location.reload();
}

function UpdateSearchText(){
    el = document.getElementById("searchText");
    searchText = el.value;

    ReloadContent(0);
}

function updateTopic(threadId){
    elTopic = document.getElementById("topicId");
    elTopic.value = threadId;
}

function UpdateViewCount(id){
    var resp = Tremor.Ajax.Call("panel","UpdateMessageBoardViewCount",{Id:id},{sync:true});

}

function overlay(){
    el = document.getElementById("overlay");
	el.style.visibility = (el.style.visibility == "visible") ? "hidden" : "visible";
}

function First(){
	firstEntry = 0;
	ReloadContent(firstEntry);
}

function hideOverlay(){
    el = document.getElementById("overlay");
    el.style.visibility = (el.style.visibility == "hidden");    
}

function hideReportOverlay(){
    rpt = document.getElementById("reportOverlay");
    rpt.style.visibility = (rpt.style.visibility == "hidden");
}

function Last(){
	var d = new Date();
	var reloadCount=d.getTime();
	var reloadUrl = "messageboard_thread.html?contentId="+$('#contentId').val()+"&startPage=-1&reload="+reloadCount+"#last";
	document.location = reloadUrl;
}

function Next() { 
    if (firstEntry > -document.thread.totalThreadCount + document.thread.perPage){	    
	    firstEntry = firstEntry + entryCount; 
	    ReloadContent(firstEntry);
	}
}

function Prev(){ 
    if(firstEntry > -entryCount)
	    {
	        firstEntry = -entryCount;
	    }
	    {
	  	    if (firstEntry < entryCount)
		    {
    			firstEntry +=entryCount;
	    	}
		    ReloadContent(firstEntry);
		}
}

function quoteMessage(quoteId){
    quote = document.getElementById("quotedMessageId");
    quote.value = quoteId;
    
    el = document.getElementById("text");
    el.value = "<p>test</p>";
}

function ReloadContent(start){
	
	document.getElementById('threadTemplate').innerHTML = "<p style='font-size:14px; margin:0;'>loading...</p>";
	Tremor.Content.LoadControl('threadTemplate','control/MessageBoards.html',{start:start, count:entryCount, limit:perPage, searchText:searchText});
}

function reportOverlay(){
    rpt = document.getElementById("reportOverlay");
	rpt.style.visibility = (rpt.style.visibility == "visible") ? "hidden" : "visible";
}

function showPage(pageNumber, pageCount) {
    if(pageNumber == 1){
        First();
    }
	else if(pageNumber == pageCount){
        Last();
    }
	else{
        pageStart = pageNumber * entryCount + entryCount
        firstEntry = pageStart;
        ReloadContent(firstEntry);
    }
}  

function showPageNav(pagerName, positionId, perPage, pageCount, pageNumber){
	pageCount = Math.round(pageCount);
	pageNumber = Math.round(pageNumber);

    if(pageCount > 1){
   	    var element = document.getElementById(positionId);
   	    var element1 = document.getElementById(positionId + '1');
        var pagerHtml = '<a href="" onclick="First();return false;">&#171 First </a> | <a href="" onclick="Prev();return false;"> Prev </a> | ';
        var k = pageNumber + 5;
        var i = pageNumber;
    
        if((k > pageCount) && (pageCount > 5)){
            i = pageCount - 4;
            pagerHtml += '...| ';
        }
    
        for (i; i <= pageCount; i++){ 
            if(i == pageNumber){
                pagerHtml += i + ' | ';
            }
            else if(i < k){
                pagerHtml += '<a href="#" onclick="showPage(' + i + ', ' + perPage + ');return false;">' + i + '</a> | ';
            } 
			else{
                pagerHtml += '...| ';
                break;
            }
        }
		
        pagerHtml += '<a href="" onclick="Next();return false;"> Next</a> | <a href="" onclick="Last();return false;">Last &#187;</a>';
        element.innerHTML = pagerHtml;
        //element1.innerHTML = pagerHtml;
    }
}

$(document).ready(function() { 
    $('#viewCategory').change(function() {
        location = "messageboard.html?categoryId="+$(this).val();
        });

	$(".mb_lastMessage a").truncate(150);
	$(".truncate_less").css({'display':'inline'});
	$(".truncate_less").append('...');
});

function ShowPostLogin()
{   
	$('#postButton').hide();
    $('#postLogin').show("slide");
}

function HidePostLogin(location)
{
	$('#postButton_'+location).show();
    $('#postLogin_'+location).hide();
}

function PostMessage()
{
    var msg = $('#text').val() || $('#userPost').val();
    Tremor.Ajax.Call("panel","PostMessage",
        {firstName:$('#firstName').val(),
         topicId: $('#topicId').val(),
         text: msg},
         {sync:true});
    Last();
}

function CheckGuestResult(response)
{
	if (response.ServiceResult.ResultCode >= 400){
        $('#tooYoung').show();
        //$('#postAndLogin').hide();
    }
    else
    {
        PostMessage();
    }
	
}
