--- a/degal/commands/main.py Sun Jun 14 22:52:07 2009 +0300
+++ b/degal/commands/main.py Sun Jun 14 22:59:29 2009 +0300
@@ -10,7 +10,7 @@
ctx.log_debug("%s", image.html)
# render output
- tpl = templates.master(ctx.gallery, image.title, image.html,
+ tpl = templates.master(ctx.gallery, image,
templates.image_page(image)
)
@@ -65,17 +65,17 @@
# render each page separately
for page in xrange(folder.page_count) :
# output .html page
- html_file = folder.html_file(page)
+ html = folder.html_page(page)
- ctx.log_debug("%s", html_file)
+ ctx.log_debug("%s", html)
# render template
- tpl = templates.master(ctx.gallery, folder.title, html_file,
+ tpl = templates.master(ctx.gallery, folder,
templates.folder_page(folder, page)
)
# write output
- tpl.render_file(html_file)
+ tpl.render_file(html)
def render_folder (ctx, folder) :
"""
--- a/degal/folder.py Sun Jun 14 22:52:07 2009 +0300
+++ b/degal/folder.py Sun Jun 14 22:59:29 2009 +0300
@@ -150,8 +150,16 @@
# slice
return self.images[offset : offset + self.config.images_per_page]
+
+ @property
+ def html (self) :
+ """
+ Path to default page
+ """
- def html_file (self, page=0) :
+ return self.html_page()
+
+ def html_page (self, page=0) :
"""
Returns the File representing the .html for the given page
"""
--- a/degal/templates.py Sun Jun 14 22:52:07 2009 +0300
+++ b/degal/templates.py Sun Jun 14 22:59:29 2009 +0300
@@ -60,14 +60,14 @@
Returns a link to the given folder from the given page
"""
- return link_from(from_page, folder.html_file(page))(folder.title)
+ return link_from(from_page, folder.html_page(page))(folder.title)
def folder_page_link (folder, page) :
"""
Returns a partial a tag from the folder itself to the given page number
"""
- return link_from(folder, folder.html_file(page))
+ return link_from(folder, folder.html_page(page))
def folder_paginate (folder, cur_page) :
"""
@@ -134,14 +134,14 @@
# shorturl
]
-def breadcrumb_trail (gallery, page) :
+def breadcrumb_trail (gallery, cur_page) :
"""
Yield the breadcrumb elements
"""
is_first = True
- for segment in gallery.path_to(page) :
+ for page in gallery.path_to(cur_page) :
# spacers
if is_first :
is_first = False
@@ -150,9 +150,7 @@
yield html.raw("»")
# link from this page to sub-page
- # XXX: title
- yield link_from(page, segment)(segment.name.title())
-
+ yield link_from(cur_page, page.html)(page.title)
def breadcrumb (gallery, page) :
"""
@@ -163,17 +161,17 @@
breadcrumb_trail(gallery, page)
)
-def master (gallery, title, page, body) :
+def master (gallery, page, body) :
"""
Render the full-page HTML layout for the given page with title and body
"""
return html.XHTMLDocument(
head=[
- tags.title(title),
+ tags.title(page.title),
# stylesheet
- tags.link(rel='Stylesheet', type='text/css', href=gallery.stylesheet.path_from(page))
+ tags.link(rel='Stylesheet', type='text/css', href=gallery.stylesheet.path_from(page.html))
],
body=[