(function($) {
    $.fn.initPagination = function() {
        // Overwrite no javascript css properties
        $('#pg_dropdown').css({ display: 'none', position: 'absolute', right: '12px', top: '22px' });


        $('.result_dropdown').css({ display: 'none', position: 'absolute', right: '12px', top: '22px' });

        $('.page_resultNumber dl').each(function() {
            $(this).css({ cursor: 'pointer' });

            $(this).click(function() {
                toggleDisplayClass($(this).next());
                return false;
            });
        });

        $('body').click(function() {
            $('#pg_dropdown').css({ display: 'none' });
            $('.icon_arrow').removeClass('icon_arrow').addClass('icon-left-arrow');
        });

        $('#pagination').each(function() {
            $(this).css({ cursor: 'pointer' });

            $(this).click(function() {
                toggleDisplay('pg_dropdown');
                return false;
            });
        });

        $("#pagination li a").unbind("click").bind('click', function() { $('#pagination').unbind('click'); });

        function toggleDisplay(id) {
            var currentItem = $('#' + id)

            if (IsCurrentlyVisible(currentItem)) {
                $(currentItem).css({ display: 'none' });
                $('.icon_arrow').removeClass('icon_arrow').addClass('icon-left-arrow');
            } else {
                $(currentItem).css({ display: 'block' });
                $('.icon-left-arrow').removeClass('icon-left-arrow').addClass('icon_arrow');
            }
        }

        function IsCurrentlyVisible(currentItem) {
            var currentDisplaySetting = $(currentItem).css('display');

            if (currentDisplaySetting == 'block') {
                return true;
            }

            return false;
        }

        function toggleDisplayClass(elem) {
            $(elem).css({ display: 'block' });
        }
    };
})(jQuery);
