var Module_Page = {
    updateDynamicPager : function(obj, id, params, page) {
        if (pagerObj = document.getElementById('dynamicPager'))
        {
            switch (page)
            {
                case 'first' :
                    page = 1;
                    break;

                case 'previous' :
                    page = parseInt(Module_Page.pageNumber) - 1;
                    break;

                case 'next' :
                    page = parseInt(Module_Page.pageNumber) + 1;
                    break;

                case 'last' :
                    page = 99999999;
                    break;
            }

            var selections = pagerObj.getElementsByTagName('a');
            var selectionCount = selections.length;
            for(var iLink = 0; iLink < selectionCount; iLink++)
            {
                if (selections[iLink] == obj)
                {
                    if (!selections[iLink].className.match(/\s?active/))
                    {
                        selections[iLink].className += ' active';
                    }
                }
                else
                {
                    selections[iLink].className = selections[iLink].className.replace(/\s?active/, '');
                } 
            }
        }

        params = params.replace(/&amp;/g, '&');

        document.getElementById(id).style.visibility = 'hidden';
        if (loader = document.getElementById(id + '-loader'))
        {
            loader.style.display = 'block';
        }

        new Ajax.Updater(id, '/index.php',
            {
                onComplete : function() {
                    document.getElementById(id).style.visibility = 'visible';
                    if (loader) {
                        loader.style.display = 'none';
                    }

                    if (typeof page != 'undefined')
                    {
                        window.location.href = '#page=' + page;
                        Module_Page.pageNumber = page;
                    }
                },
                method: 'get',
                parameters: params
            }
        );
    },

    updateDynamicPagerWrapper : function(obj, id, params, max)
    {
        var windowHash = String(window.location);
        windowHash = windowHash.split('#');

        if (windowHash.length > 1)
        {
            var regex = /page=\d+/;
            var match = regex.exec(windowHash);

            if (match)
            {
                var pageNumber = String(match).split('=')[1];
            }
        }
        if (typeof pageNumber == 'undefined')
        {
            pageNumber = 1;
        }

        if (this.pageNumber != pageNumber)
        {
            Module_Page.updateDynamicPager(obj, id, params + '' + ((parseInt(pageNumber) - 1) * parseInt(max)));
        }

        this.pageNumber = pageNumber;

        setTimeout(
            function()
            {
                Module_Page.updateDynamicPagerWrapper(obj, id, params, max)
            }, 200);
    }
}

function GetRules()
{
    var rulesReturn = new Array();
    var sheets = document.styleSheets;
    for(i = 0; i < sheets.length; i++)
    {
        var sheet = sheets[i];
        var rules = (typeof sheet.cssRules != "undefined") ? sheet.cssRules :
            ((typeof sheet.rules != "undefined") ? sheet.rules : null);
        if(rules)
        {
            for(j = 0; j < rules.length; j++)
            {
                var rule = rules[j];
                var selector = rule.selectorText.toLowerCase();
                for(k = 0; k < arguments.length; k++)
                {
                    if(selector == arguments[k])
                        rulesReturn.push(rule);
                }
            }
        }
    }

    return rulesReturn;
}

function SetFontSize(dyFontSize)
{
    var rules = GetRules("td");
    var cyFontSize = 11;
    for(i = 0; i < rules.length; i++)
    {
        cyFontSize = parseInt(rules[i].style.fontSize) + dyFontSize;
        rules[i].style.fontSize =  Math.max(cyFontSize,1) + "%";
    }
//  SetCookie('fontSize', cyFontSize);
}

function SetFontFamily(sFontFamily)
{
    var rules = GetRules("body", "td");
    for(i = 0; i < rules.length; i++)
    {
        rules[i].style.fontFamily = sFontFamily;
    }
//  SetCookie('fontFamily', sFontFamily);
}

