Added code to write the timestamps to the Netscape bookmarks file and to record a timestamp for the last modification.

Sat, 24 Mar 2012 19:30:26 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sat, 24 Mar 2012 19:30:26 +0100
changeset 1731
56cf9c150dbf
parent 1730
5d7ce61b64aa
child 1732
b140a24e147a

Added code to write the timestamps to the Netscape bookmarks file and to record a timestamp for the last modification.

Documentation/Help/source.qch file | annotate | diff | comparison | revisions
Helpviewer/Bookmarks/NsHtmlWriter.py file | annotate | diff | comparison | revisions
Helpviewer/HelpBrowserWV.py file | annotate | diff | comparison | revisions
Helpviewer/UrlBar/UrlBar.py file | annotate | diff | comparison | revisions
Binary file Documentation/Help/source.qch has changed
--- a/Helpviewer/Bookmarks/NsHtmlWriter.py	Sat Mar 24 17:57:55 2012 +0100
+++ b/Helpviewer/Bookmarks/NsHtmlWriter.py	Sat Mar 24 19:30:26 2012 +0100
@@ -97,9 +97,22 @@
         @param node reference to the node to be written (BookmarkNode)
         @param indent size of the indentation (integer)
         """
+        if node.added.isValid():
+            added = " ADD_DATE=\"{0}\"".format(node.added.toTime_t())
+        else:
+            added = ""
+        if node.modified.isValid():
+            modified = " LAST_MODIFIED=\"{0}\"".format(node.modified.toTime_t())
+        else:
+            modified = ""
+        if node.visited.isValid():
+            visited = " LAST_VISIT=\"{0}\"".format(node.visited.toTime_t())
+        else:
+            visited = ""
+        
         self.__dev.write(" " * indent)
-        self.__dev.write("<DT><A HREF=\"{0}\">{1}</A>\n".format(
-            node.url, Utilities.html_uencode(node.title)
+        self.__dev.write("<DT><A HREF=\"{0}\"{1}{2}{3}>{4}</A>\n".format(
+            node.url, added, modified, visited, Utilities.html_uencode(node.title)
         ))
     
     def __writeFolder(self, node, indent):
@@ -114,9 +127,14 @@
         else:
             folded = " FOLDED"
         
+        if node.added.isValid():
+            added = " ADD_DATE=\"{0}\"".format(node.added.toTime_t())
+        else:
+            added = ""
+        
         self.__dev.write(" " * indent)
-        self.__dev.write("<DT><H3{0}>{1}</H3>\n".format(
-            folded, Utilities.html_uencode(node.title)
+        self.__dev.write("<DT><H3{0}{1}>{2}</H3>\n".format(
+            folded, added, Utilities.html_uencode(node.title)
         ))
         
         if node.desc:
--- a/Helpviewer/HelpBrowserWV.py	Sat Mar 24 17:57:55 2012 +0100
+++ b/Helpviewer/HelpBrowserWV.py	Sat Mar 24 19:30:26 2012 +0100
@@ -28,6 +28,7 @@
 import UI.PixmapCache
 
 from .Bookmarks.AddBookmarkDialog import AddBookmarkDialog
+from .Bookmarks.BookmarkNode import BookmarkNode
 from .JavaScriptResources import fetchLinks_js
 try:
     from .SslInfoDialog import SslInfoDialog
@@ -401,6 +402,15 @@
            reply.url() == self.mainFrame().url():
             self.__sslConfiguration = reply.sslConfiguration()
             self.__sslConfiguration.url = QUrl(reply.url())
+        
+        if reply.error() == QNetworkReply.NoError and \
+           mainFrameRequest and \
+           reply.url() == self.mainFrame().url():
+            modified = reply.header(QNetworkRequest.LastModifiedHeader)
+            if modified and modified.isValid():
+                manager = Helpviewer.HelpWindow.HelpWindow.bookmarksManager()
+                for bookmark in manager.bookmarksForUrl(reply.url()):
+                    manager.setTimestamp(bookmark, BookmarkNode.TsModified, modified)
     
     def getSslInfo(self):
         """
--- a/Helpviewer/UrlBar/UrlBar.py	Sat Mar 24 17:57:55 2012 +0100
+++ b/Helpviewer/UrlBar/UrlBar.py	Sat Mar 24 19:30:26 2012 +0100
@@ -148,9 +148,10 @@
         manager = Helpviewer.HelpWindow.HelpWindow.bookmarksManager()
         if manager.bookmarkForUrl(self.__browser.url()) is not None:
             self.__bookmarkButton.setIcon(self.__bmActiveIcon)
-            bookmark = manager.bookmarkForUrl(self.__browser.url())
-            manager.setTimestamp(bookmark, BookmarkNode.TsVisited,
-                                 QDateTime.currentDateTime())
+            bookmarks = manager.bookmarksForUrl(self.__browser.url())
+            for bookmark in bookmarks:
+                manager.setTimestamp(bookmark, BookmarkNode.TsVisited,
+                                     QDateTime.currentDateTime())
         elif Helpviewer.HelpWindow.HelpWindow.speedDial()\
            .pageForUrl(self.__browser.url()).url != "":
             self.__bookmarkButton.setIcon(self.__bmActiveIcon)

eric ide

mercurial