view.html 2.5 KB

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