var AjaxPager = Class.create({
    pageNum: 1,
    
    initialize: function() {
        this.assignActions();
    },
    
    assignActions: function() {
        var pages = $A($$('.ajaxPager div a'));
        if (pages) {
            for (var i=0; i < pages.length; i++) {
                pages[i].observe('click', this.changePage.bindAsEventListener(this), false);
                pages[i].onClick = function(){return false;};
            }
        }
    },
    
    changePage: function(event) {
        event.stop();
        this.getPageNum(event);
        this.updateContent();
        this.scrollToElement();
    },
    
    scrollToElement: function() {
        window.scrollTo(0, $('ajaxNews').offsetTop);
    },
    
    getPageNum: function(event) {
        var clickedLink;
        clickedLink = event.element();
        if (clickedLink) {
            var patt = /#page[0-9]{0,}/;
            var pageStr = patt.exec(clickedLink.href);
            if (pageStr) {
                this.pageNum = parseInt(pageStr[0].replace('#page', ''));
            }
        }
    },
    
    _succ: function(t) {
        $('ajaxNews').innerHTML = t.responseText;
        this.assignActions();
    },
    
    updateContent: function() {
        var options  = {
            method: 'get',
            parameters: {ajax_tlist_r_and_gr_long_start: this.pageNum},
            onSuccess: this._succ.bind(this)
        };
        new Ajax.Request('/getNews.php', options);
    }
});

var ajaxPager;
Event.observe(window, 'load', function() {
    ajaxPager = new AjaxPager();
});