templates/inc_paginate.tmpl
author Tero Marttila <terom@fixme.fi>
Sat, 14 Feb 2009 20:13:26 +0200
changeset 128 2a8a190f8aee
parent 107 67f48e288102
permissions -rw-r--r--
fix config.VERSION_LINK to use relpath('.')
107
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
     1
## special overrides...
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
     2
<%def name="paginate_left()">
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
     3
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
     4
</%def>
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
     5
76
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     6
<%def name="paginate(url, count, page_cur, page_max, _more=None, _last=False, **args)">
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     7
    <%doc>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     8
        Pagination works using page numbers, with a specific number of maximum pages displayed. If _more is True,
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     9
        then instead of a "Next" button, we have a "More" button, which goes to the max+1'th page, unless _last is
107
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    10
        True, whereupon it's not displayed.
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    11
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    12
        Can be called using <%call>, whereupon caller.left/caller.right can define additional data to display at the
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    13
        left/right of the pagination ul.
76
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    14
    </%doc>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    15
    <div class="paginate">
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    16
        <ul>
107
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    17
        % if caller and caller.right :
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    18
            <li class="paginate-right">
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    19
                ${caller.right()}
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    20
            </li>
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    21
        % endif
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    22
        % if caller and caller.left :
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    23
            <li class="paginate-left">
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    24
                ${caller.left()}
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    25
            </li>
67f48e288102 add prev/next date links to channel_date pagination
Tero Marttila <terom@fixme.fi>
parents: 79
diff changeset
    26
        % endif
76
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    27
            <li>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    28
            % if page_cur > 1 :
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    29
                <a href="${h.build_url(url, count=count, page=page_cur-1, max=max, **args)}">&laquo; Prev</a>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    30
            % else :
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    31
                <span>&laquo; Prev</span>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    32
            %endif
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    33
            </li>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    34
        % for page in xrange(1, page_max + 1) :
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    35
            <li>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    36
            % if page == page_cur :
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    37
                <strong>${page}</strong>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    38
            % else :
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    39
                <a href="${h.build_url(url, count=count, page=page, max=page_max, **args)}">${page}</a>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    40
            % endif
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    41
            </li>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    42
        % endfor
79
43ac75054d5c image formatting \o/
Tero Marttila <terom@fixme.fi>
parents: 76
diff changeset
    43
        % if _more and not _last :
43ac75054d5c image formatting \o/
Tero Marttila <terom@fixme.fi>
parents: 76
diff changeset
    44
            <li>&hellip;</li>
43ac75054d5c image formatting \o/
Tero Marttila <terom@fixme.fi>
parents: 76
diff changeset
    45
        % endif
76
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    46
            <li>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    47
            % if _more and _last :
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    48
                <span>More &raquo;</span>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    49
            % elif _more : 
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    50
                <a href="${h.build_url(url, count=count, page=page_max+1, **args)}">More &raquo;</a>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    51
            % elif page_cur == page_max : ## last page
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    52
                <span>Next &raquo;</span>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    53
            % else : 
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    54
                <a href="${h.build_url(url, count=count, page=page_cur+1, **args)}">Next &raquo;</a>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    55
            % endif
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    56
            </li>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    57
        </ul>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    58
    </div>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    59
</%def>
cc3ab2c39ded fix off-by-one with search paginate, and implement basic pagination for channel_date
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    60