"""
__author__ = "Oleg Broytman <phd@phdru.name>"
-__copyright__ = "Copyright (C) 2000-2017 PhiloSoft Design"
+__copyright__ = "Copyright (C) 2000-2023 PhiloSoft Design"
__license__ = "GNU GPL"
__all__ = ['storage_flad']
-import string
from m_lib.flad import fladm
from bkmk_objects import Folder, Bookmark, Ruler, Walker
self.first_object = 1
def root_folder(self, f):
- header = string.replace(f.header, ".", ".\n")
- header = string.replace(header, "<", "\n<", 3)[1:]
+ header = f.header.replace(".", ".\n")
+ header = header.replace("<", "\n<", 3)[1:]
header_file = open("header", 'w')
header_file.write(header + "\n")
header_file.write('<H1>%s</H1>\n\n' % f.name)
def start_folder(self, f, level):
self.outfile.write("""
- Level: %d
- Folder: %s
- AddDate: %s
- Comment: %s
- LastModified: %s
- """ % (level, f.name, f.add_date, f.comment, f.last_modified or ''))
+Level: %d
+Folder: %s
+AddDate: %s
+Comment: %s
+LastModified: %s
+""" % (level, f.name, f.add_date, f.comment, f.last_modified or ''))
def bookmark(self, b, level):
self.outfile.write("""
- Level: %d
- Title: %s
- URL: %s
- AddDate: %s
- 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.icon_href or '', b.icon or '', b.charset or ''))
+Level: %d
+Title: %s
+URL: %s
+AddDate: %s
+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.icon_href or '', b.icon or '', b.charset or ''))
def ruler(self, r, level):
self.outfile.write("\nLevel: %s\nRuler: YES\n" % (level+1))
self.current_folder = None
def load(self):
- bookmarks_db = fladm.load_from_file(self.filename, fladm.check_record, ["Level"])
+ bookmarks_db = fladm.load_from_file(
+ self.filename, fladm.check_record, ["Level"])
root_folder = Folder()
self.folder_stack = [root_folder]
header = header_file.read()
header_file.close()
- header = string.split(header, "\n")
- root_folder.header = string.join(header[:5], '')
- root_folder.name = header[5][4:-5]
- root_folder.comment = string.join(header[7:], '')[4:]
+ header = header.split("\n")
+ root_folder.header = ''.join(header[:5])
+ root_folder.name = ''.join(header[5:6])[4:-5]
+ root_folder.comment = ''.join(header[7:])[4:]
save_level = 0
- got_folder = 1 # Start as if we already have one folder
+ got_folder = 1 # Start as if we already have one folder
for record in bookmarks_db:
level = int(record["Level"])
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
+ # Test here to save got_folder for next loop
+ got_folder = "Folder" in record
- if record.has_key("URL"):
+ if "URL" in record:
comment = record["Comment"].replace("\\n", '\n')
- bookmark = Bookmark(record["URL"], record["AddDate"],
- record["LastVisit"], record["LastModified"],
- record["Keyword"], comment)
+ bookmark = Bookmark(
+ record["URL"], record["AddDate"],
+ record["LastVisit"], record["LastModified"],
+ record["Keyword"], comment)
bookmark.name = record["Title"]
self.current_folder.append(bookmark)
- elif record.has_key("Folder"):
- folder = Folder(record["AddDate"], record["Comment"], record["LastModified"])
+ elif "Folder" in record:
+ folder = Folder(
+ record["AddDate"], record["Comment"],
+ record["LastModified"]
+ )
folder.name = record["Folder"]
self.current_folder.append(folder)
self.folder_stack.append(folder)
self.current_folder = folder
- elif record.has_key("Ruler"):
+ elif "Ruler" in record:
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