side-bar.pug 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. .dropdown(
  2. dropdown
  3. dropdown-append-to-body
  4. )
  5. a.btn.btn-primary.sidebar-new-proj-btn.dropdown-toggle(
  6. href="#",
  7. data-toggle="dropdown",
  8. dropdown-toggle
  9. )
  10. | #{translate("new_project")}
  11. ul.dropdown-menu(role="menu")
  12. li
  13. a(
  14. href,
  15. ng-click="openCreateProjectModal()"
  16. ) #{translate("blank_project")}
  17. li
  18. a(
  19. href,
  20. ng-click="openCreateProjectModal('example')"
  21. ) #{translate("example_project")}
  22. li
  23. a(
  24. href,
  25. ng-click="openUploadProjectModal()"
  26. ) #{translate("upload_project")}
  27. != moduleIncludes("newProjectMenu", locals)
  28. if portalTemplates.length > 0
  29. //- portalTemplates is set in ProjectController
  30. li.divider
  31. li.dropdown-header #{translate("institution")} #{translate("templates")}
  32. for portal in portalTemplates
  33. li
  34. a.menu-indent(
  35. href=portal.url + "#templates",
  36. ng-non-bindable
  37. ) #{portal.name}
  38. if (templates)
  39. //- templates is an express local var, via settings.templateLinks
  40. li.divider
  41. li.dropdown-header #{translate("templates")}
  42. each item in templates
  43. li
  44. a.menu-indent(href=item.url) #{translate(item.name)}
  45. .row-spaced(ng-if="projects.length > 0", ng-cloak)
  46. ul.list-unstyled.folders-menu(
  47. ng-controller="TagListController"
  48. )
  49. li(ng-class="{active: (filter == 'all')}", ng-click="filterProjects('all')")
  50. a(href) #{translate("all_projects")}
  51. li(ng-class="{active: (filter == 'owned')}", ng-click="filterProjects('owned')")
  52. a(href) #{translate("your_projects")}
  53. li(ng-class="{active: (filter == 'shared')}", ng-click="filterProjects('shared')")
  54. a(href) #{translate("shared_with_you")}
  55. li(ng-class="{active: (filter == 'archived')}", ng-click="filterProjects('archived')")
  56. a(href) #{translate("archived_projects")}
  57. li(ng-class="{active: (filter == 'trashed')}", ng-click="filterProjects('trashed')")
  58. a(href) #{translate("trashed_projects")}
  59. li.separator
  60. h2 #{translate("tags_slash_folders")}
  61. li.tag(ng-cloak)
  62. a.tag-name(href, ng-click="openNewTagModal()")
  63. i.fa.fa-fw.fa-plus(aria-hidden="true")
  64. span.name #{translate("new_folder")}
  65. li.tag(
  66. ng-repeat="tag in tags | orderBy:'name'",
  67. ng-class="{active: tag.selected}",
  68. ng-cloak,
  69. ng-click="selectTag(tag)"
  70. )
  71. a.tag-name(href)
  72. i.icon.fa.fa-fw(
  73. ng-class="{\
  74. 'fa-folder-open': tag.selected,\
  75. 'fa-folder': !tag.selected\
  76. }"
  77. ng-style="{ 'color': 'hsl({{ getHueForTagId(tag._id) }}, 70%, 45%)' }"
  78. aria-hidden="true"
  79. )
  80. span.name {{tag.name}}
  81. span.subdued ({{countProjectsForTag(tag)}})
  82. span.dropdown.tag-menu(dropdown)
  83. a.dropdown-toggle(
  84. href="#",
  85. data-toggle="dropdown",
  86. dropdown-toggle,
  87. stop-propagation="click"
  88. )
  89. span.caret
  90. ul.dropdown-menu.dropdown-menu-right(
  91. role="menu"
  92. )
  93. li
  94. a(href, ng-click="renameTag(tag)", stop-propagation="click")
  95. | #{translate("rename")}
  96. li
  97. a(href, ng-click="deleteTag(tag)", stop-propagation="click")
  98. | #{translate("delete")}
  99. li.tag.untagged(
  100. ng-if="tags.length",
  101. ng-cloak,
  102. ng-click="selectUntagged()"
  103. ng-class="{active: filter === 'untagged'}",
  104. )
  105. a.tag-name(href)
  106. span.name
  107. | #{translate("uncategorized")}
  108. span.subdued ({{ nUntagged }})
  109. .row-spaced(ng-if="projects.length == 0", ng-cloak)
  110. .first-project
  111. div
  112. i.fa.fa-arrow-up.fa-2x(aria-hidden="true")
  113. div
  114. strong #{translate("create_your_first_project")}
  115. if (isOverleaf)
  116. span(ng-controller="LeftHandMenuPromoController", ng-cloak)
  117. .row-spaced#userProfileInformation(ng-if="hasProjects")
  118. div(ng-hide="withAffiliations", ng-cloak)
  119. hr
  120. .text-centered.user-profile
  121. p Are you affiliated with an institution?
  122. a.btn.btn-info(
  123. href="/user/settings"
  124. ) Add Affiliation