X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=Storage%2Fbkmk_stflad.py;h=b936c4a723b5485295ace7ed958706d23fabaa84;hb=71900f3630cb51580964038b78100d60e3671981;hp=031b03622f2918e1e196518eeb4cc3c2f240ef3f;hpb=f97d97b040fc8dcab4b43af16e966e0ff4c877a9;p=bookmarks_db.git diff --git a/Storage/bkmk_stflad.py b/Storage/bkmk_stflad.py index 031b036..b936c4a 100644 --- a/Storage/bkmk_stflad.py +++ b/Storage/bkmk_stflad.py @@ -1,10 +1,16 @@ -""" - Bookmarks storage module - FLAD (Flat ASCII Database) - special version for compatibility with old (version 1) bkmk2db +"""Bookmarks storage module - FLAD (Flat ASCII Database) + +Special version for compatibility with old (version 1) bkmk2db. - Written by BroytMann, Feb 2000 - Mar 2005. Copyright (C) 2000-2005 PhiloSoft Design +This file is a part of Bookmarks database and Internet robot. """ +__author__ = "Oleg Broytman " +__copyright__ = "Copyright (C) 2000-2017 PhiloSoft Design" +__license__ = "GNU GPL" + +__all__ = ['storage_flad'] + import string from m_lib.flad import fladm @@ -32,8 +38,8 @@ Level: %d Folder: %s AddDate: %s Comment: %s -""" % (level, f.name, f.add_date, f.comment)) - +LastModified: %s +""" % (level, f.name, f.add_date, f.comment, f.last_modified or '')) def bookmark(self, b, level): self.outfile.write(""" @@ -45,20 +51,21 @@ LastVisit: %s LastModified: %s Keyword: %s Comment: %s +IconURI: %s +Icon: %s +Charset: %s """ % (level+1, b.name, b.href, b.add_date, b.last_visit, b.last_modified, - b.keyword, b.comment.replace('\n', "\\n"))) - + b.keyword, b.comment.replace('\n', "\\n"), + b.icon_href or '', b.icon or '', b.charset or '')) def ruler(self, r, level): self.outfile.write("\nLevel: %s\nRuler: YES\n" % (level+1)) - def store(self, root_folder): self.outfile = open(self.filename, 'w') root_folder.walk_depth(self) self.outfile.close() - def unindent(self, old_level, new_level): while old_level > new_level: old_level = old_level - 1 @@ -95,11 +102,11 @@ Comment: %s pass elif level == save_level + 1: if not got_folder: - raise ValueError, "indent without folder" + raise ValueError("indent without folder") elif level <= save_level - 1: self.unindent(save_level, level) else: - raise ValueError, "new level (%d) too big; must be %d - %d" % (level, save_level-1, save_level+1) + raise ValueError("new level (%d) too big; must be %d - %d" % (level, save_level-1, save_level+1)) save_level = level got_folder = record.has_key("Folder") # Test here to save got_folder for next loop @@ -113,7 +120,7 @@ Comment: %s self.current_folder.append(bookmark) elif record.has_key("Folder"): - folder = Folder(record["AddDate"], record["Comment"]) + folder = Folder(record["AddDate"], record["Comment"], record["LastModified"]) folder.name = record["Folder"] self.current_folder.append(folder) self.folder_stack.append(folder) @@ -123,11 +130,11 @@ Comment: %s self.current_folder.append(Ruler()) else: - raise KeyError, "neither \"URL\" nor \"Folder\" nor \"Ruler\" in record " + str(record) + raise KeyError("neither \"URL\" nor \"Folder\" nor \"Ruler\" in record " + str(record)) if save_level >= 0: self.unindent(save_level, 0) else: - raise ValueError, "new level (%d) too little - must be >= 0" % save_level + raise ValueError("new level (%d) too little - must be >= 0" % save_level) return root_folder