-"""
- 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 Broytman. Copyright (C) 2000-2010 PhiloSoft Design
+This file is a part of Bookmarks database and Internet robot.
"""
+__author__ = "Oleg Broytman <phd@phdru.name>"
+__copyright__ = "Copyright (C) 2000-2017 PhiloSoft Design"
+__license__ = "GNU GPL"
+
+__all__ = ['storage_flad']
+
import string
from m_lib.flad import fladm
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
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
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