diff -r 18b3b1926720 -r e22d9f699081 degal/folder.py --- a/degal/folder.py Fri Jun 05 23:41:57 2009 +0300 +++ b/degal/folder.py Fri Jun 05 23:42:03 2009 +0300 @@ -4,15 +4,17 @@ import filesystem, image, html -from utils import lazy_load +from utils import lazy_load, lazy_load_iter -class Folder (filesyste.Directory) : +import math + +class Folder (filesystem.Directory) : """ A Folder is a filesystem Directory that contains any number of other Folders and Images. """ - def __init__ (self, node) : - super(Folder, self).__init__(node) + def __init__ (self, *args, **kwargs) : + super(Folder, self).__init__(*args, **kwargs) # info self.title = None @@ -40,7 +42,7 @@ Load and return an ordered list of child-Nodes """ - return super(Folder, self).subnodes(skip_dotfiles=True, sorted=True) + return super(Folder, self).subnodes(skip_dotfiles=True, sort=True) @lazy_load_iter def subfolders (self) : @@ -61,7 +63,7 @@ for node in self.subnodes : # skip non-relevant ones # XXX: node should need to be a File - if not isinstance(node, filesystem.File) or not self.config.is_image(node) : + if not node.is_file() or not self.config.is_image(filesystem.File(node)) : continue # create new @@ -69,6 +71,7 @@ # link up if prev : + img.prev = prev prev.next = img # yield the linked-up prev @@ -87,7 +90,7 @@ Returns the number of pages needed to show this folder's images """ - return math.ceil(len(self.images) / float(self.config.images_per_page)) + return int(math.ceil(len(self.images) / float(self.config.images_per_page))) def images_for_page (self, page) : """