This commit is contained in:
Simon Conseil
2014-12-06 22:46:44 +01:00
parent 40a81bf79e
commit bfbf07a4b2
2 changed files with 10 additions and 14 deletions

View File

@@ -1,7 +1,6 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2009-2014 - Simon Conseil
# Copyright (c) 2013 - Christophe-Marie Duquesne
# Copyright (c) 2014 - Jamie Starke
# Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -27,22 +26,21 @@ import os
"""Plugin which generates pages for each image.
"""
import codecs
import logging
from sigal import signals
from sigal.writer import Writer
import codecs
from sigal.utils import check_or_create_dir
from sigal.utils import url_from_path
from sigal.pkgmeta import __url__ as sigal_link
logger = logging.getLogger(__name__)
class PageWriter(Writer):
'''A writer for writing media pages, based on writer'''
def __init__(self, settings, index_title=""):
super(PageWriter, self).__init__(
settings, index_title=index_title, template_file="media.html")
template_file = "media.html"
def write(self, album, media_group):
''' Generate the media page and save it '''
@@ -67,13 +65,13 @@ class PageWriter(Writer):
with codecs.open(output_file, 'w', 'utf-8') as f:
f.write(page)
def generate_media_pages(gallery):
'''Generates and writes the media pages for all media in the gallery'''
writer = PageWriter(gallery.settings,index_title=gallery.title)
writer = PageWriter(gallery.settings, index_title=gallery.title)
for album in gallery.albums.values():
medias = album.medias
next_medias = medias[1:] + [None]
previous_medias = [None] + medias[:-1]
@@ -82,7 +80,8 @@ def generate_media_pages(gallery):
media_groups = zip(medias, next_medias, previous_medias)
for media_group in media_groups:
writer.write(album,media_group)
writer.write(album, media_group)
def register(settings):
signals.gallery_build.connect(generate_media_pages)

View File

@@ -45,10 +45,7 @@ class Writer(object):
template_file = 'index.html'
def __init__(self, settings, index_title='', template_file=None):
if template_file:
self.template_file = template_file
def __init__(self, settings, index_title=''):
self.settings = settings
self.output_dir = settings['destination']
self.theme = settings['theme']