(function() {
	window.opmsgCallback = function(obj) {
		genAll(obj);
	};
	
	window.failCallback = function(obj) {
		$('#confreg_page_navigator').html('');
		$('#confreg_bulletins').html('錯誤，請使用 google 帳號登入');
	};
})();

function genAll(obj) {
	var nav = $('#confreg_page_navigator');
	nav.children().unbind();
	
	nav.find('#total').html(obj.total);
	nav.find('#current').html(obj.current + 1);
	genLinks(nav, obj.current, obj.u);
	genNavCss(nav);

	genList(obj.bulletins);
};

function genLinks(nav, obj, u) {
	var url = "http://easybulletin.appspot.com/paging";
	nav.find('#first').click(function(){
    	$.getJSON(url+"/?page=first&current="+ obj +"&u="+ u +"&jsoncallback=?", function(data) {
			genAll(data);
		});
    });

 	nav.find('#previous').click(function(){
	    $.getJSON(url+"/?page=previous&current="+ obj +"&u="+ u +"&jsoncallback=?", function(data) {
			genAll(data);
		});
	});
		    	    
 	nav.find('#next').click(function(){
    	$.getJSON(url+"/?page=next&current="+ obj +"&u="+ u +"&jsoncallback=?", function(data) {
			genAll(data);
		});
    });	 
		    
	nav.find('#last').click(function(){
    	$.getJSON(url+"/?page=last&current="+ obj +"&u="+ u +"&jsoncallback=?", function(data) {
			genAll(data);
		});
    });   
};


function genList(obj) {
	var html = "";
    for(var i = 0; i < obj.length; i++) {
       html += "<li>" + obj[i].content + "</li>";
    }
    document.getElementById("confreg_bulletins").innerHTML = html;
};

function genNavCss(nav) {
	 nav.find('#first').css("cursor","pointer");
	 nav.find('#previous').css("cursor","pointer");
	 nav.find('#next').css("cursor","pointer");
	 nav.find('#last').css("cursor","pointer");
};

