View the DQSD CVS repository here:
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/dqsd/

Update of /cvsroot/dqsd/dqsd/addons/bookmarks
In directory usw-pr-cvs1:/tmp/cvs-serv28029/addons/bookmarks

Modified Files:
        bmie.xml bmmz.xml bmns4.xml bmya.xml bookmarks_lib.js 
        readme.txt 
Log Message:
updated bookmarks addon to take advantage of new functions in DQSD 3.1.4.3

Index: bmie.xml
===================================================================
RCS file: /cvsroot/dqsd/dqsd/addons/bookmarks/bmie.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** bmie.xml    27 Sep 2002 06:27:44 -0000      1.1
--- bmie.xml    24 Oct 2002 15:10:54 -0000      1.2
***************
*** 15,19 ****
    </description>
    <link></link>
!   <category>Bookmarks</category>
    <contributor>Brent Beardsley</contributor>
  
--- 15,19 ----
    </description>
    <link></link>
!   <category nomenu="true">Bookmarks</category>
    <contributor>Brent Beardsley</contributor>
  
***************
*** 22,25 ****
--- 22,40 ----
      var ie_bookmarks_array = null;
  
+     function bmie_get_bookmarks_array()
+     {
+       if (ie_bookmarks_array == null) {
+               var user_specified_dir = (typeof bookmarks_ie_location != "undefined" 
+&& bookmarks_ie_location != "");
+               var fav_location = "";
+               if (user_specified_dir) {
+                       fav_location = bookmarks_ie_location;
+               } else {
+                       fav_location = 
+DQSDLauncher.GetSpecialFolderLocation("Favorites");
+               }
+               ie_bookmarks_array = 
+bookmarks_get_bookmarks_array_from_ie(fav_location);
+       }
+       return ie_bookmarks_array;
+     }
+ 
      function bmie(q)
      {
***************
*** 38,55 ****
        }
  
!       if (ie_bookmarks_array == null) {
!               var user_specified_dir = (typeof bookmarks_ie_location != "undefined" 
&& bookmarks_ie_location != "");
!               var fav_location = "";
!               if (user_specified_dir) {
!                       fav_location = bookmarks_ie_location;
!               } else {
!                       var shell_obj = new ActiveXObject("WScript.Shell");
!                       fav_location = shell_obj.SpecialFolders ("Favorites");
!                       shell_obj = null;
!               }
!               ie_bookmarks_array = 
bookmarks_get_bookmarks_array_from_ie(fav_location);
        }
!       bookmarks_show_menu(ie_bookmarks_array);
      }
      ]]>
    </script>
--- 53,73 ----
        }
  
!       bookmarks_show_menu(bmie_get_bookmarks_array());
!     }
! 
!     function bmieMenuHook(mb)
!     {
!       if (typeof bookmarks_type != "undefined" && bookmarks_type != "bmie")
!               return;
! 
!       var hBookmarksMenu = bookmarksGetMenu(mb);
!       if (hBookmarksMenu > 0) {
!         bookmarks_get_menu(bmie_get_bookmarks_array(), mb, hBookmarksMenu);
        }
! 
      }
+ 
+     registerMenuHook(bmieMenuHook);
+ 
      ]]>
    </script>

Index: bmmz.xml
===================================================================
RCS file: /cvsroot/dqsd/dqsd/addons/bookmarks/bmmz.xml,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** bmmz.xml    28 Sep 2002 06:14:31 -0000      1.2
--- bmmz.xml    24 Oct 2002 15:10:55 -0000      1.3
***************
*** 15,19 ****
    </description>
    <link></link>
!   <category>Bookmarks</category>
    <contributor>Brent Beardsley</contributor>
  
--- 15,19 ----
    </description>
    <link></link>
!   <category nomenu="true">Bookmarks</category>
    <contributor>Brent Beardsley</contributor>
  
***************
*** 22,25 ****
--- 22,52 ----
      var mozilla_bookmarks_array = null;
  
+     function bmmz_get_bookmarks_array()
+     {
+       if (mozilla_bookmarks_array == null) {
+               var bookmarks_full_path = "";
+               var user_specified_dir = (typeof bookmarks_mozilla_location != 
+"undefined" && bookmarks_mozilla_location != "");
+               var user_profile = (typeof bookmarks_mozilla_profile != "undefined" && 
+bookmarks_mozilla_profile != "") ? bookmarks_mozilla_profile : "default";
+               var user_file = (typeof bookmarks_mozilla_file != "undefined" && 
+bookmarks_mozilla_file != "") ? bookmarks_mozilla_file : "bookmarks.html";
+               if (!user_specified_dir) {
+                       ensureLauncher();
+                       var bmk_folder = 
+DQSDLauncher.GetSpecialFolderLocation("AppData") + 
+"\\Mozilla\\Profiles\\"+user_profile+"\\";
+                       // appears that there is a random directory below the profile 
+directory so get it and if it's there add it to the path
+                       var folders = getFolders(bmk_folder).split('\n');
+                       for (var i=0; i < folders.length; i++) {
+                               if (folders[i] == ".")
+                                       continue;
+                               bmk_folder += (folders[i]+"\\");
+                               break;
+                       }
+                       bookmarks_full_path = bmk_folder + user_file;
+               } else {
+                 bookmarks_full_path = bookmarks_mozilla_location + "\\" + user_file;
+               }
+               mozilla_bookmarks_array = 
+bookmarks_get_bookmarks_array_from_netscape(bookmarks_full_path);
+       }
+       return mozilla_bookmarks_array;
+     }
+ 
      function bmmz(q)
      {
***************
*** 38,65 ****
        }
  
!       if (mozilla_bookmarks_array == null) {
!               var bookmarks_full_path = "";
!               var user_specified_dir = (typeof bookmarks_mozilla_location != 
"undefined" && bookmarks_mozilla_location != "");
!               var user_profile = (typeof bookmarks_mozilla_profile != "undefined" && 
bookmarks_mozilla_profile != "") ? bookmarks_mozilla_profile : "default";
!               var user_file = (typeof bookmarks_mozilla_file != "undefined" && 
bookmarks_mozilla_file != "") ? bookmarks_mozilla_file : "bookmarks.html";
!               if (!user_specified_dir) {
!                       var shell_obj = new ActiveXObject("WScript.Shell");
!                       var bmk_folder = shell_obj.SpecialFolders("AppData") + 
"\\Mozilla\\Profiles\\"+user_profile;
!                       // appears that there is a random directory below the profile 
directory so get it and if it's there add it to the path
!                       var fso = new ActiveXObject("Scripting.FileSystemObject");
!                       var fc = new Enumerator(fso.GetFolder(bmk_folder).SubFolders);
!                       if (!fc.atEnd()) {
!                         bmk_folder += ("\\" + fso.GetFileName(fc.item()));
!                       }
!                       fso = null;
!                       bookmarks_full_path = bmk_folder + "\\" + user_file;
!                       shell_obj = null;
!               } else {
!                 bookmarks_full_path = bookmarks_mozilla_location + "\\" + user_file;
!               }
!               mozilla_bookmarks_array = 
bookmarks_get_bookmarks_array_from_netscape(bookmarks_full_path);
        }
!       bookmarks_show_menu(mozilla_bookmarks_array);
      }
      ]]>
    </script>
--- 65,85 ----
        }
  
!       bookmarks_show_menu(bmmz_get_bookmarks_array());
!     }
! 
!     function bmmzMenuHook(mb)
!     {
!       if (typeof bookmarks_type == "undefined" || bookmarks_type != "bmmz")
!               return;
! 
!       var hBookmarksMenu = bookmarksGetMenu(mb);
!       if (hBookmarksMenu > 0) {
!         bookmarks_get_menu(bmmz_get_bookmarks_array(), mb, hBookmarksMenu);
        }
! 
      }
+ 
+     registerMenuHook(bmmzMenuHook);
+ 
      ]]>
    </script>

Index: bmns4.xml
===================================================================
RCS file: /cvsroot/dqsd/dqsd/addons/bookmarks/bmns4.xml,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** bmns4.xml   28 Sep 2002 06:14:31 -0000      1.2
--- bmns4.xml   24 Oct 2002 15:10:55 -0000      1.3
***************
*** 15,19 ****
    </description>
    <link></link>
!   <category>Bookmarks</category>
    <contributor>Brent Beardsley</contributor>
  
--- 15,19 ----
    </description>
    <link></link>
!   <category nomenu="true">Bookmarks</category>
    <contributor>Brent Beardsley</contributor>
  
***************
*** 22,25 ****
--- 22,49 ----
      var netscape4_bookmarks_array = null;
  
+     function bmns4_get_bookmarks_array()
+     {
+       if (netscape4_bookmarks_array == null) {
+               var bmk_location = (typeof bookmarks_netscape4_location != "undefined" 
+&& bookmarks_netscape4_location != "") ? bookmarks_netscape4_location : "C:\\Program 
+Files\\Netscape";
+               bmk_location += "\\Users\\";
+               var bmk_profile = (typeof bookmarks_netscape4_profile != "undefined" 
+&& bookmarks_netscape4_profile != "") ? bookmarks_netscape4_profile : "";
+               var bmk_file = (typeof bookmarks_netscape4_file != "undefined" && 
+bookmarks_netscape4_file != "") ? bookmarks_netscape4_file : "bookmark.htm";
+               if (bmk_profile == "") {
+                       // if no profile specified grab the first one you find in 
+bmk_location
+                       var folders = getFolders(bmk_location).split('\n');
+                       for (var i=0; i < folders.length; i++) {
+                               if (folders[i] == ".")
+                                       continue;
+                               bmk_profile = folders[i];
+                               break;
+                       }
+               }
+               var bookmarks_full_path = bmk_location+bmk_profile+"\\"+bmk_file;
+               netscape4_bookmarks_array = 
+bookmarks_get_bookmarks_array_from_netscape(bookmarks_full_path);
+       }
+       return netscape4_bookmarks_array;
+     }
+ 
+ 
      function bmns4(q)
      {
***************
*** 38,61 ****
        }
  
!       if (netscape4_bookmarks_array == null) {
!               var bmk_location = (typeof bookmarks_netscape4_location != "undefined" 
&& bookmarks_netscape4_location != "") ? bookmarks_netscape4_location : "C:\\Program 
Files\\Netscape";
!               bmk_location += "\\Users";
!               var bmk_profile = (typeof bookmarks_netscape4_profile != "undefined" 
&& bookmarks_netscape4_profile != "") ? bookmarks_netscape4_profile : "";
!               var bmk_file = (typeof bookmarks_netscape4_file != "undefined" && 
bookmarks_netscape4_file != "") ? bookmarks_netscape4_file : "bookmark.htm";
!               if (bmk_profile == "") {
!                       // if no profile specified grab the first one you find in 
bmk_location
!                       var fso = new ActiveXObject("Scripting.FileSystemObject");
!                       var fc = new 
Enumerator(fso.GetFolder(bmk_location).SubFolders);
!                       if (!fc.atEnd()) {
!                         bmk_profile = fso.GetFileName(fc.item());
!                       }
!                       fso = null;
!               }
  
!               var bookmarks_full_path = bmk_location+"\\"+bmk_profile+"\\"+bmk_file;
!               netscape4_bookmarks_array = 
bookmarks_get_bookmarks_array_from_netscape(bookmarks_full_path);
        }
!       bookmarks_show_menu(netscape4_bookmarks_array);
      }
      ]]>
    </script>
--- 62,82 ----
        }
  
!       bookmarks_show_menu(bmns4_get_bookmarks_array());
!     }
  
!     function bmns4MenuHook(mb)
!     {
!       if (typeof bookmarks_type == "undefined" || bookmarks_type != "bmns4")
!               return;
! 
!       var hBookmarksMenu = bookmarksGetMenu(mb);
!       if (hBookmarksMenu > 0) {
!         bookmarks_get_menu(bmns4_get_bookmarks_array(), mb, hBookmarksMenu);
        }
! 
      }
+ 
+     registerMenuHook(bmns4MenuHook);
+ 
      ]]>
    </script>

Index: bmya.xml
===================================================================
RCS file: /cvsroot/dqsd/dqsd/addons/bookmarks/bmya.xml,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** bmya.xml    28 Sep 2002 06:14:31 -0000      1.2
--- bmya.xml    24 Oct 2002 15:10:55 -0000      1.3
***************
*** 15,19 ****
    </description>
    <link>http://my.yahoo.com/</link>
!   <category>Bookmarks</category>
    <contributor>Brent Beardsley</contributor>
  
--- 15,19 ----
    </description>
    <link>http://my.yahoo.com/</link>
!   <category nomenu="true">Bookmarks</category>
    <contributor>Brent Beardsley</contributor>
  
***************
*** 21,24 ****
--- 21,33 ----
    <script><![CDATA[
      var yahoo_bookmarks_array = null;
+  
+     function bmya_get_bookmarks_array()
+     {
+       if (yahoo_bookmarks_array == null) {
+               var bmk_location = (typeof bookmarks_yahoo_location != "undefined" && 
+bookmarks_yahoo_location != "") ? bookmarks_yahoo_location : 
+"http://e.my.yahoo.com/config/export_bookmark?.commit=1";;
+               yahoo_bookmarks_array = 
+bookmarks_get_bookmarks_array_from_netscape(bmk_location);
+       }
+       return yahoo_bookmarks_array;
+     }
  
      function bmya(q)
***************
*** 38,47 ****
        }
  
!       if (yahoo_bookmarks_array == null) {
!               var bmk_location = (typeof bookmarks_yahoo_location != "undefined" && 
bookmarks_yahoo_location != "") ? bookmarks_yahoo_location : 
"http://e.my.yahoo.com/config/export_bookmark?.commit=1";;
!               yahoo_bookmarks_array = 
bookmarks_get_bookmarks_array_from_netscape(bmk_location);
        }
!       bookmarks_show_menu(yahoo_bookmarks_array);
      }
      ]]>
    </script>
--- 47,67 ----
        }
  
!       bookmarks_show_menu(bmya_get_bookmarks_array());
!     }
! 
!     function bmyaMenuHook(mb)
!     {
!       if (typeof bookmarks_type == "undefined" || bookmarks_type != "bmya")
!               return;
! 
!       var hBookmarksMenu = bookmarksGetMenu(mb);
!       if (hBookmarksMenu > 0) {
!         bookmarks_get_menu(bmya_get_bookmarks_array(), mb, hBookmarksMenu);
        }
! 
      }
+ 
+     registerMenuHook(bmyaMenuHook);
+ 
      ]]>
    </script>

Index: bookmarks_lib.js
===================================================================
RCS file: /cvsroot/dqsd/dqsd/addons/bookmarks/bookmarks_lib.js,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** bookmarks_lib.js    28 Sep 2002 06:14:31 -0000      1.2
--- bookmarks_lib.js    24 Oct 2002 15:10:55 -0000      1.3
***************
*** 18,64 ****
  }
  
! function bookmarks_get_bookmarks_array_from_ie(fav_location) 
  {
-       var fso = new ActiveXObject("Scripting.FileSystemObject");
        var arr = new Array();
!       bookmarks_process_ie_favorites_folder(fso, fso.GetFolder(fav_location), arr, 
0);
!       fso = null;
        return arr;
  }
  
! function bookmarks_process_ie_favorites_folder(fso, folder, bookmarks_array, level) 
  {
!     var fsoForReading = 1;
!       var url_regexp = new RegExp(/URL=([^\n]+)/gim); 
!       var fc, ff;
! 
!       // add folders
!       fc = new Enumerator(folder.SubFolders);
!       for (; !fc.atEnd(); fc.moveNext()) {
!               var folderName = fso.GetBaseName(fc.item());
  
                bookmarks_array.push(bookmarks_build_arr_item(folderName, 'Folder', 
level));
! 
!               bookmarks_process_ie_favorites_folder(fso, fc.item(), bookmarks_array, 
level+1);
        }
  
!       // add bookmarks
!       ff = new Enumerator(folder.Files);
!       for (; !ff.atEnd(); ff.moveNext()) {
!               if (fso.GetExtensionName(ff.item()).toUpperCase() != "URL") {
                        continue;
!               }
!               var bookmarkName = fso.GetBaseName(ff.item());
!               var objTextStream = fso.OpenTextFile(ff.item(), fsoForReading);
!               var bookmarkUrl = ff.item();
!               while (!objTextStream.AtEndOfStream) {
!                       var line = objTextStream.ReadLine();
!                       var url_results = url_regexp.exec(line);
!                       if (url_results != null) {
!                               bookmarkUrl = url_results[1];
!                               break;
!                       }
!               }
!               bookmarks_array.push(bookmarks_build_arr_item(bookmarkName, 
bookmarkUrl, level));
        }
  }
--- 18,47 ----
  }
  
! function bookmarks_get_bookmarks_array_from_ie(fav_location)
  {
        var arr = new Array();
!       bookmarks_process_ie_favorites_folder(fav_location+"\\", arr, 0);
        return arr;
  }
  
! function bookmarks_process_ie_favorites_folder(folder, bookmarks_array, level)
  {
!       var folders = getFolders(folder).split('\n');
!       for (var i=0; i < folders.length; i++) {
!               var folderName = folders[i];
!               if (folderName == ".")
!                       continue;
  
                bookmarks_array.push(bookmarks_build_arr_item(folderName, 'Folder', 
level));
!               bookmarks_process_ie_favorites_folder(folder+folderName+"\\", 
bookmarks_array, level+1);
        }
  
!       var files = getFiles(folder).split('\n');
!       for (var i=0; i < files.length; i++) {
!               var bookmarkName = files[i];
!               if (!bookmarkName.match(/\.URL$/i))
                        continue;
!               var bookmarkUrl = (folder+files[i]).replace(/\\/g, "\\\\");
!               
bookmarks_array.push(bookmarks_build_arr_item(bookmarkName.replace(/\.URL$/i, ""), 
bookmarkUrl, level));
        }
  }
***************
*** 284,294 ****
  
  
! function bookmarks_get_menu(bookmarks_array)
  {
-       // build the menu
-       var mb = new ActiveXObject("DQSDTools.MenuBuilder");
-     // Align the menu with the button
-     mb.HorizontalAlignment = ( buttonalign == 'left' ? 1 : 2 ); // 1 = left, 2 = 
right (default)
- 
      var hsubmenu_stack = new Array();
        var hsubmenu = null;
--- 267,272 ----
  
  
! function bookmarks_get_menu(bookmarks_array, mb, hmenu)
  {
      var hsubmenu_stack = new Array();
        var hsubmenu = null;
***************
*** 296,300 ****
      var arr_regexp = new RegExp(/(\t*)([^\t]+)\t(.*)/);
  
!       hsubmenu_stack[last_level] = null;
        for (i=0; i < bookmarks_array.length; i++) {
                var arr_item = arr_regexp.exec(bookmarks_array[i]);
--- 274,278 ----
      var arr_regexp = new RegExp(/(\t*)([^\t]+)\t(.*)/);
  
!       hsubmenu_stack[last_level] = hmenu;
        for (i=0; i < bookmarks_array.length; i++) {
                var arr_item = arr_regexp.exec(bookmarks_array[i]);
***************
*** 313,317 ****
                        hsubmenu_stack[cur_level+1] = hsubmenu;
                } else {
!                       mb.AppendMenuItem(cur_name, cur_url, '', hsubmenu);
                }
        }
--- 291,305 ----
                        hsubmenu_stack[cur_level+1] = hsubmenu;
                } else {
!                       var isURL = cur_url.match(/^(ftp|http|https)\:\/\//);
!                       if (!isURL)  {
!                               if (cur_url.match(/\s/)) {
!                                       // escape spaces
!                                       cur_url = '\"' + cur_url + '\"';
!                               }
!                               cur_url = "openDocument('"+cur_url+"')";
!                       } else {
!                               cur_url = "openSearchWindow('"+cur_url+"')";
!                       }
!                       mb.AppendMenuItem(cur_name, cur_url, cur_name+" Bookmark", 
hsubmenu);
                }
        }
***************
*** 321,332 ****
  function bookmarks_show_menu(bookmarks_array)
  {
!       var bookmarks_menu = bookmarks_get_menu(bookmarks_array);
!       if (bookmarks_menu != null) {
!               var fn = bookmarks_menu.Display(document);
!               if (fn) {
!                       openSearchWindow(fn);
!               }
!               bookmarks_menu = null;
        }
  
  }
--- 309,358 ----
  function bookmarks_show_menu(bookmarks_array)
  {
!       // build the menu
!       var mb = new ActiveXObject("DQSDTools.MenuBuilder");
!       if (mb != null) {
!       // Align the menu with the button
!       mb.HorizontalAlignment = ( buttonalign == 'left' ? 1 : 2 ); // 1 = left, 2 = 
right (default)
! 
!         bookmarks_get_menu(bookmarks_array, mb, null);
!       var fn = mb.Display(document);
!       if (fn) {
!         eval(fn);
!       }
!       mb = null;
!     }
! }
! 
! function bookmarksMenuHook(mb) {
!       var hm = bookmarksGetMenu(mb);
!       if (hm > 0) {
!               mb.InsertMenuItem("Help / About Bookmarks...", 
"openSearchWindow(\"addons/bookmarks/readme.txt\")", "Help for Bookmarks add-on", 0, 
hm);
!               mb.InsertSeparator(1, hm);
!     }
! }
! 
! function bookmarksGetMenu(mb)
! {
!       var menuName = "Bookmarks";
!       var hm = mb.FindSubMenu(menuName);
!       if (hm <= 0) {
!               var insertPosition = bookmarksFindInsertPosition(mb, menuName);
!               hm = mb.InsertSubMenu(menuName, insertPosition);
        }
+       return hm;
+ }
  
+ function bookmarksFindInsertPosition(mb, menuName)
+ {
+       var menuItemCount = mb.GetMenuItemCount();
+       for (var i = menuItemCount - 1; i >= 0; i--) {
+               var curMenuName = mb.GetMenuString(i);
+               if (curMenuName < menuName) {
+                       return i+1;
+               }
+       }
+       // give up and add it at the end
+       return menuItemCount;
  }
+ 
+ registerMenuHook(bookmarksMenuHook);

Index: readme.txt
===================================================================
RCS file: /cvsroot/dqsd/dqsd/addons/bookmarks/readme.txt,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** readme.txt  27 Sep 2002 06:27:44 -0000      1.1
--- readme.txt  24 Oct 2002 15:10:55 -0000      1.2
***************
*** 30,33 ****
--- 30,44 ----
  your localprefs.js file.
  
+ Requirements
+ ------------
+ * DQSD version 3.1.4.3 or greater
+ 
+ General Variables
+ -----------------
+ * bookmarks_type
+       - specify which bookmarks will show up in the popup menu from the >> button 
+press
+       - default: bmie
+       - values can be: bmie, bmns4, bmmz, bmya
+ 
  Internet Explorer Specific Variables
  ------------------------------------




-------------------------------------------------------
This sf.net email is sponsored by: Influence the future 
of Java(TM) technology. Join the Java Community 
Process(SM) (JCP(SM)) program now. 
http://ads.sourceforge.net/cgi-bin/redirect.pl?sunm0003en
_______________________________________________
DQSD-CVS mailing list
https://lists.sourceforge.net/lists/listinfo/dqsd-cvs
DQSD CVS repository:
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/dqsd/

Reply via email to