view.html 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <div id="filebrowser" class="filebrowser">
  2. <!-- ko if: folder() -->
  3. <!-- ko let: { loopRoot: $data } -->
  4. <ul data-bind="template: { name: 'tree-template', foreach: folder().children() }" class="tree-file"></ul>
  5. <!-- /ko -->
  6. <!-- /ko -->
  7. <script id="tree-template" type="text/html">
  8. <!-- ko if: $data.type() === "folder" -->
  9. <li class="folder">
  10. <i class="fa fa-folder-o" data-bind="attr: {id: 'icon_folder_' + $data.uuid()}"></i>
  11. <span data-bind="text: $data.name, event: { dblclick: loopRoot.openFolder, contextmenu: loopRoot.openContextMenu, click: loopRoot.select }"/>
  12. <input type="checkbox" data-bind="attr: {id: $data.uuid}" />
  13. <ul data-bind="template: { name: 'tree-template', foreach: $data.children }"></ul>
  14. </li>
  15. <!-- /ko -->
  16. <!--ko if: $data.type() !== "folder"-->
  17. <li data-bind="attr: {'data-id': $data.uuid, 'data-filetype': $data.type()}" class="file">
  18. <!--ko ifnot: $data.type -->
  19. <i data-bind="attr: {class: 'fa fa-file-o'}"></i>
  20. <!-- /ko -->
  21. <!--ko if: $data.type -->
  22. <i data-bind="attr: {class: 'fa fa-file-' + $data.type() + '-o', title: $data.type()}"></i>
  23. <!-- /ko -->
  24. <span data-bind="text: $data.name, event: { dblclick: loopRoot.openFile, contextmenu: loopRoot.openContextMenu, click: loopRoot.select }, attr: {'data-extra': $data.extra ? $data.extra : ''}"></span>
  25. </li>
  26. <!-- /ko -->
  27. </script>
  28. <!-- Context menu -->
  29. <div id="fileBrowserContextMenu" class="dropdown open" data-bind="visible: showContextMenu" tabindex="1">
  30. <ul class="dropdown-menu" role="menu" aria-labelledby="contextMenu">
  31. <!-- ko if: selected() != undefined && !selected().extra -->
  32. <li role="presentation"><a role="menuitem" tabindex="-1" href="#" data-bind="click: newItem">New ...</a></li>
  33. <!-- /ko -->
  34. <li role="presentation"><a role="menuitem" tabindex="-1" href="#" data-bind="click: openRenamePopup">Rename</a></li>
  35. <li role="presentation"><a role="menuitem" tabindex="-1" href="#" data-bind="click: copy">Copy</a></li>
  36. <!-- ko if: selected() != undefined && !selected().extra -->
  37. <li role="presentation" data-bind="css: { 'disabled': !hasCopied()}"><a role="menuitem" tabindex="-1" href="#" data-bind="click: paste">Paste</a></li>
  38. <!-- /ko -->
  39. <li role="presentation"><a role="menuitem" tabindex="-1" href="#" data-bind="click: openDeletePopup">Delete</a></li>
  40. </ul>
  41. </div>
  42. <!-- End of Context menu -->
  43. </div>