OLD | NEW |
(Empty) | |
| 1 <html> |
| 2 <link rel="stylesheet" type="text/css" href="extensions_toolstrip.css"> |
| 3 <script> |
| 4 var dump = function(obj, indent) { |
| 5 if (indent === undefined) |
| 6 indent = ""; |
| 7 if (typeof obj == "object") { |
| 8 var ret = "{<br/>"; |
| 9 var child_indent = indent + " "; |
| 10 for (var item in obj) { |
| 11 var child = null; |
| 12 try { |
| 13 child = obj[item]; |
| 14 } catch (e) { |
| 15 child = '<error>'; |
| 16 } |
| 17 ret += child_indent + item + ": " + dump(child, indent + " "); |
| 18 } |
| 19 return ret + indent + "}" + "<br/>"; |
| 20 } else { |
| 21 return obj.toString() + "<br/>"; |
| 22 } |
| 23 } |
| 24 |
| 25 var testMoveBookmarks = function(event) { |
| 26 testMoveBookmarks2(event); |
| 27 } |
| 28 |
| 29 var testMoveBookmarks2 = function(event) { |
| 30 console.log(testMoveBookmarks2.caller.name); |
| 31 if (event.shiftKey) { |
| 32 // TODO - it would be nice to have a mechanism to do this built-in to a |
| 33 // context menu. |
| 34 window.location.reload(); |
| 35 return; |
| 36 } |
| 37 console.log("testMoveBookmarks2"); |
| 38 chromium.bookmarks.get([], function(root) { |
| 39 console.log("1"); |
| 40 chromium.bookmarks.get(root[0].childrenIds, function(root_children) { |
| 41 var bookmark_bar = root_children[0]; // bookmarks bar is always first |
| 42 chromium.bookmarks.get(bookmark_bar.childrenIds, |
| 43 function(bar_children) { |
| 44 var folder_search = []; |
| 45 bar_children.forEach(function(child) { |
| 46 if (child.title == "folder" && child.url == undefined) { |
| 47 folder_search.push(child); |
| 48 } |
| 49 }); |
| 50 if (folder_search.length == 1) { |
| 51 console.log('moving children out of "folder"'); |
| 52 var folder = folder_search[0]; |
| 53 folder.childrenIds.forEach(function(folder_child_id) { |
| 54 chromium.bookmarks.move({'id': folder_child_id, |
| 55 'parentId': bookmark_bar.id}); |
| 56 }); |
| 57 chromium.bookmarks.remove({'id': folder.id}); |
| 58 } else if (folder_search.length == 0) { |
| 59 console.log('creating "folder" and moving children into it'); |
| 60 chromium.bookmarks.create({'parentId': bookmark_bar.id, |
| 61 'title': 'folder'}, |
| 62 function(folder) { |
| 63 chromium.bookmarks.search("oog", function(oog_search) { |
| 64 oog_search.forEach(function(oog_match) { |
| 65 chromium.bookmarks.move({'id': oog_match.id, |
| 66 'parentId': folder.id}) |
| 67 }); |
| 68 }); |
| 69 }); |
| 70 } else { |
| 71 console.log("my puny code wasn't written to handle this"); |
| 72 } |
| 73 }); |
| 74 }); |
| 75 }); |
| 76 }; |
| 77 |
| 78 var dumpBookmarks = function(event) { |
| 79 window.open("bookmark_view.html"); |
| 80 }; |
| 81 </script> |
| 82 <body> |
| 83 <div class="toolstrip-button" onclick="dumpBookmarks(window.event);"> |
| 84 <span>Dump Bookmarks</span> |
| 85 </div> |
| 86 <div class="toolstrip-button" onclick="testMoveBookmarks(window.event);"> |
| 87 <span>Test Move</span> |
| 88 </div> |
| 89 </body> |
| 90 </html> |
OLD | NEW |