]> git.phdru.name Git - bookmarks_db.git/blobdiff - Writers/bkmk_whtml.py
HTML parser based on lxml was implemnted.
[bookmarks_db.git] / Writers / bkmk_whtml.py
index 7e652d2e7dc5f84f4300f9aaf3298a69667454ae..b4c4dab5c59ff3c0a28a7698376757e39efb542a 100644 (file)
@@ -1,12 +1,10 @@
 """
    Convert a bkmk database back to bookmarks.html
 
-   Written by BroytMann. Copyright (C) 2000-2007 PhiloSoft Design
+   Written by Broytman. Copyright (C) 2000-2010 PhiloSoft Design
 """
 
-
-import os
-BKMK_FORMAT = os.environ.has_key("BKMK_FORMAT")
+from bkmk_objects import Writer, BKMK_FORMAT, quote_title
 
 
 def dump_comment(comment):
@@ -18,8 +16,6 @@ def dump_comment(comment):
 
 ind_s = " "*4
 
-from bkmk_objects import Writer
-
 class writer_html(Writer):
    filename = "bookmarks.html"
 
@@ -30,13 +26,13 @@ class writer_html(Writer):
    def root_folder(self, f):
       self.outfile.write("<!DOCTYPE NETSCAPE-Bookmark-file-1>\n")
       self.outfile.write(f.header + "\n")
-      self.outfile.write('<H1>%s</H1>\n\n' % f.name)
+      self.outfile.write('<H1>%s</H1>\n\n' % quote_title(f.name))
       self._folder(f, 0)
 
    def start_folder(self, f, level):
       self.outfile.write(ind_s*level + '<DT><H3 ADD_DATE="%s"' % f.add_date)
       if (BKMK_FORMAT == "MOZILLA") and f.last_modified: self.outfile.write(' LAST_MODIFIED="%s"' % f.last_modified)
-      self.outfile.write('>%s</H3>\n' % f.name)
+      self.outfile.write('>%s</H3>\n' % quote_title(f.name))
       self._folder(f, level)
 
    def end_folder(self, f, level):
@@ -46,9 +42,10 @@ class writer_html(Writer):
       self.outfile.write(ind_s*(level+1) + '<DT><A HREF="%s" ADD_DATE="%s" LAST_VISIT="%s" LAST_MODIFIED="%s"' % (b.href, b.add_date, b.last_visit, b.last_modified))
       if BKMK_FORMAT == "MOZILLA":
          if b.keyword: self.outfile.write(' SHORTCUTURL="%s"' % b.keyword)
+         if b.icon_href: self.outfile.write(' ICON_URI="%s"' % b.icon_href)
          if b.icon: self.outfile.write(' ICON="%s"' % b.icon)
          if b.charset: self.outfile.write(' LAST_CHARSET="%s"' % b.charset)
-      self.outfile.write('>%s</A>\n' % b.name)
+      self.outfile.write('>%s</A>\n' % quote_title(b.name))
       if b.comment: self.outfile.write('<DD>%s\n' % dump_comment(b.comment))
 
    def ruler(self, r, level):