(self, context, nodes, page_type='normal')
return {
            'cl': self,
            'pagination_required': pagination_required,
            'show_all_url': need_show_all_link and self.get_query_string({ALL_VAR: ''}),
            'page_range': map(self.get_page_number, page_range),
            'ALL_VAR': ALL_VAR,
            '1': 1,
        }
Generates the series of links to the pages in a paginated list.
Generates the series of links to the pages in a paginated list.
Generates the series of links to the pages in a paginated list .
def block_pagination(self, context, nodes, page_type='normal'):
        """
        Generates the series of links to the pages in a paginated list.
        """
        paginator, page_num = self.paginator, self.page_num

        pagination_required = (
            not self.show_all or not self.can_show_all) and self.multi_page
        if not pagination_required:
            page_range = []
        else:
            ON_EACH_SIDE = {'normal': 5, 'small': 3}.get(page_type, 3)
            ON_ENDS = 2

            # If there are 10 or fewer pages, display links to every page.
            # Otherwise, do some fancy
            if paginator.num_pages <= 10:
                page_range = range(paginator.num_pages)
            else:
                # Insert "smart" pagination links, so that there are always ON_ENDS
                # links at either end of the list of pages, and there are always
                # ON_EACH_SIDE links at either end of the "current page" link.
                page_range = []
                if page_num > (ON_EACH_SIDE + ON_ENDS):
                    page_range.extend(range(0, ON_EACH_SIDE - 1))
                    page_range.append(DOT)
                    page_range.extend(
                        range(page_num - ON_EACH_SIDE, page_num + 1))
                else:
                    page_range.extend(range(0, page_num + 1))
                if page_num < (paginator.num_pages - ON_EACH_SIDE - ON_ENDS - 1):
                    page_range.extend(
                        range(page_num + 1, page_num + ON_EACH_SIDE + 1))
                    page_range.append(DOT)
                    page_range.extend(range(
                        paginator.num_pages - ON_ENDS, paginator.num_pages))
                else:
                    page_range.extend(range(page_num + 1, paginator.num_pages))

        need_show_all_link = self.can_show_all and not self.show_all and self.multi_page
        return {
            'cl': self,
            'pagination_required': pagination_required,
            'show_all_url': need_show_all_link and self.get_query_string({ALL_VAR: ''}),
            'page_range': map(self.get_page_number, page_range),
            'ALL_VAR': ALL_VAR,
            '1': 1,
        }
def block_pagination ( self , context , nodes , page_type = 'normal' ) : paginator , page_num = self . paginator , self . page_num pagination_required = ( not self . show_all or not self . can_show_all ) and self . multi_page if not pagination_required : page_range = [ ] else : ON_EACH_SIDE = { 'normal' : 5 , 'small' : 3 } . get ( page_type , 3 ) ON_ENDS = 2 # If there are 10 or fewer pages, display links to every page. # Otherwise, do some fancy if paginator . num_pages <= 10 : page_range = range ( paginator . num_pages ) else : # Insert "smart" pagination links, so that there are always ON_ENDS # links at either end of the list of pages, and there are always # ON_EACH_SIDE links at either end of the "current page" link. page_range = [ ] if page_num > ( ON_EACH_SIDE + ON_ENDS ) : page_range . extend ( range ( 0 , ON_EACH_SIDE - 1 ) ) page_range . append ( DOT ) page_range . extend ( range ( page_num - ON_EACH_SIDE , page_num + 1 ) ) else : page_range . extend ( range ( 0 , page_num + 1 ) ) if page_num < ( paginator . num_pages - ON_EACH_SIDE - ON_ENDS - 1 ) : page_range . extend ( range ( page_num + 1 , page_num + ON_EACH_SIDE + 1 ) ) page_range . append ( DOT ) page_range . extend ( range ( paginator . num_pages - ON_ENDS , paginator . num_pages ) ) else : page_range . extend ( range ( page_num + 1 , paginator . num_pages ) ) need_show_all_link = self . can_show_all and not self . show_all and self . multi_page return { 'cl' : self , 'pagination_required' : pagination_required , 'show_all_url' : need_show_all_link and self . get_query_string ( { ALL_VAR : '' } ) , 'page_range' : map ( self . get_page_number , page_range ) , 'ALL_VAR' : ALL_VAR , '1' : 1 , }