Пример #1
0
def pagination(blog_entries, blog_indexes):
  for i in range(len(blog_entries)):
    this_page = blog_entries[i][0]
    s = '<br><span>'
    if i > 0:
      prev_page = blog_entries[i - 1][0]
      s += '\n'*3 + '<b class="pull-left">&larr; %s</b>' % (utils.page_link(prev_page))
      
    if i < len(blog_entries) - 1:
      next_page = blog_entries[i + 1][0]
      s += '\n'*3 + '<b class="pull-right">%s &rarr;</b>' % (utils.page_link(next_page))
    this_page.content += s + '</span>'
    
  for i in range(len(blog_indexes)):
    this_index = blog_indexes[i]
    s = '<br><span>'
    if i > 0:
      prev_index = blog_indexes[i - 1]
      s += '\n'*3 + '<b class="pull-left">&larr; <a href="%s">Previous Page</a></b>' % (prev_index.address())
      
    if i < len(blog_indexes) - 1:
      next_index = blog_indexes[i + 1]
      s += '\n'*3 + '<b class="pull-right"><a href="%s">Next Page</a> &rarr;</b>' % (next_index.address())
    this_index.content += s + '</span>'
Пример #2
0
def make_blog(p):
  blog = blog_dict(p)
  
  blog_entries = []
  blog_indexes = []
  for k in reversed(sorted(blog.iterkeys())):
    blog_entries.append(blog[k])
  
  i = 0
  for j in range(0, len(blog_entries), config.blog_entries_per_page):
    segment = blog_entries[j:j + config.blog_entries_per_page]
    
    s = ''
    sidebar = '<h3>Other Posts</h3>'
    sidebar += '<ul class="nav nav-list">'

    for c, summary in segment:
      s += summary
      sidebar += '<li>%s</li>' % (utils.page_link(c))
    sidebar += '<li class="divider"></li>'
    sidebar += '<li><a href="{{wr}}blog/archives.html"><b>All Entries &rarr;</b></a></li>'
    sidebar += '<li class="divider"></li>'
    sidebar += '<li><a onclick="goBack()"><b>&larr; Go Back</b></a></li>'
    sidebar += '</ul>'
    
    for c, _ in segment:
      c.sidebar = sidebar.replace('<li><a href="%s">%s</a></li>' % (c.address(), c.human_name), \
                  '<li class="active"><a href="%s">%s</a></li>' % (c.address(), c.human_name))
    
    n = objects.page()
    n.human_name = 'Blog'
    n.name = 'index'
    if i > 0:
      n.name += str(i)
      n.human_name = 'Page ' + str(i + 1)
    i += 1
    n.level = p.level + 1
    n.path = os.path.join(p.path, 'blog')
    n.destination = os.path.join(p.destination, 'blog')
    n.omit_sidebar = False
    n.sidebar = sidebar
    n.content = s
    n.enable_comments = False
    p.children.append(n)
    blog_indexes.append(n)
  
  pagination(blog_entries, blog_indexes)
  p.children.append(full_archive(p, blog_entries))