list.jade 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204
  1. extends ../layout
  2. block content
  3. mixin formatAccessLevel(accessLevel)
  4. -if (accessLevel == "owner")
  5. span Owner
  6. -else if (accessLevel == "readWrite")
  7. span Read and Write
  8. -else if (accessLevel == "readOnly")
  9. span Read Only
  10. -else
  11. span Unknown?
  12. mixin formatOwnerText(level, publicLevel)
  13. -if (level == "owner")
  14. span Me
  15. -else
  16. span #{formatProjectPublicAccessLevel()}  
  17. mixin formatAccessLevel(project.accessLevel)
  18. mixin tag(project_id, tagName, showDeleteIcon)
  19. span.label.label-info.tag-label(data-project-id=project_id, data-tag=tagName)
  20. span.text #{tagName}  
  21. - if (showDeleteIcon)
  22. i.fa.fa-times.delete-tag(data-project-id=project_id, data-tag=tagName)
  23. mixin projectList(projects)
  24. -each project in projects
  25. - project_id = project._id.toString()
  26. li.project_entry(id=project_id)
  27. label.checkbox.select-item
  28. input(type="checkbox")
  29. span.title
  30. a.projectName(href="/project/#{project._id}") #{project.name}
  31. span.project-tags(data-project-id=project_id)
  32. - each tag in project.tags
  33. mixin tag(project_id, tag.name, true)
  34. span.owner
  35. mixin formatOwnerText(project.accessLevel, project.publicAccesLevel)
  36. span.last-modified.isoDate #{project.lastUpdated.toISOString()}
  37. .container
  38. .row
  39. .col-md-2
  40. br
  41. #newProject.dropdown
  42. a.btn.btn-primary.dropdown-toggle(data-toggle="dropdown", href="#") New Project
  43. span.caret
  44. ul.dropdown-menu(role="menu")
  45. li
  46. a#blankNewProject(href="#", data-csrf=csrfToken) Blank Project
  47. li
  48. a#newProjectExample(href="#", data-csrf=csrfToken) Example Project
  49. li
  50. a#uploadNewProject(href="#", data-csrf=csrfToken) Upload Project
  51. li.divider
  52. li.dropdown-submenu
  53. a(tabindex="-1", href="#", data-toggle="dropdown") Templates
  54. ul.dropdown-menu
  55. li
  56. a.menu-indent(href="/templates/cv") CV or Resume
  57. li
  58. a.menu-indent(href="/templates/cover-letters") Cover Letter
  59. li
  60. a.menu-indent(href="/templates/journals") Journal Article
  61. li
  62. a.menu-indent(href="/templates/presentations") Presentation
  63. li
  64. a.menu-indent(href="/templates/thesis") Thesis
  65. li
  66. a.menu-indent(href="/templates/bibliographies") Bibliographies
  67. li
  68. a.menu-indent(href="/templates") View All »
  69. br
  70. ul.unstyled.menu.js-folders-menu
  71. li
  72. a.normalText.menu-indent(href="#") All projects
  73. li
  74. a.normalText.menu-indent(href="#") Your projects
  75. li
  76. a.normalText.menu-indent(href="#") Shared with you
  77. li Folders
  78. li
  79. a.normalText.menu-indent(href="#")
  80. i.icon.fa.fa-folder-o
  81. | PhD work
  82. span.normalText (5)
  83. li
  84. a.normalText.menu-indent(href="#")
  85. i.icon.fa.fa-folder-o
  86. | Notes
  87. span.normalText (2)
  88. li
  89. a.normalText.menu-indent(href="#")
  90. i.icon.fa.fa-folder-o
  91. | Papers
  92. span.normalText (1)
  93. ul.unstyled.menu
  94. li
  95. a.normalText.menu-indent(href="#")
  96. i.icon.fa.fa-plus
  97. | New Folder
  98. -if (tags.length > 0)
  99. hr.soften
  100. ul#allProjectTagsArea.unstyled.menu
  101. li Tags
  102. - each tag in tags
  103. -if (tag.project_ids.length > 0)
  104. li
  105. mixin tag("", tag.name, false)
  106. span.number x #{tag.project_ids.length}
  107. -if (settings.enableSubscriptions)
  108. p
  109. a(href="/user/bonus").btn.btn-info Upgrade Account
  110. .col-md-10
  111. .row-fluid
  112. .span12
  113. form.form-inline.search.project-search
  114. input#projectFilter(placeholder='Search projects…', autofocus='autofocus').span6.projectSearch.search-query
  115. i.fa.fa-search
  116. //- i.fa.fa-remove
  117. .project-tools.js-toggle-tools.hidden
  118. .btn-toolbar
  119. .btn-group
  120. a(href='/project/'+"5369c5737fc6b47f048da1f5"+'/download/zip', data-toggle="tooltip", data-placement="bottom", title="", data-original-title="Download .zip File").btn.downloadZip
  121. i.fa.fa-cloud-download
  122. -if ("owner" == "owner")
  123. a(href='/project/'+"5369c5737fc6b47f048da1f5", data-name="the project", data-id="5369c5737fc6b47f048da1f5", data-csrf=csrfToken, data-toggle="tooltip", data-placement="bottom", title="", data-original-title="Remove").btn.deleteProject
  124. i.fa.fa-trash-o
  125. a.btn.dropdown-toggle
  126. i.fa.fa-folder-open-o
  127. .btn-group.project-actions
  128. a.btn.dropdown-toggle(data-toggle="dropdown", href="#") More
  129. span.caret
  130. ul.dropdown-menu.pull-right(role="menu")
  131. li
  132. a(href='/project/'+"5369c5737fc6b47f048da1f5"+'/clone', data-csrf=csrfToken).cloneProject Make a Copy...
  133. -if ("owner" == "owner")
  134. li
  135. a(href='/project/'+"5369c5737fc6b47f048da1f5"+'/rename', data-name="the project", data-id="5369c5737fc6b47f048da1f5", data-csrf=csrfToken).renameProject Rename...
  136. -else
  137. li
  138. a(href='/project/'+"5369c5737fc6b47f048da1f5"+'/leave', data-name="the project", data-id="5369c5737fc6b47f048da1f5", data-csrf=csrfToken).leaveProject Leave Project
  139. .card.card-thin.first
  140. - if (projects.length > 0)
  141. ul#projectList
  142. li
  143. label.checkbox.select-all
  144. input(type="checkbox")
  145. span.title TITLE
  146. span.owner OWNER
  147. span.last-modified LAST MODIFIED
  148. mixin projectList(projects)
  149. - else
  150. .row
  151. .span12
  152. .welcome
  153. h1
  154. i.fa.fa-arrow-left
  155. | Welcome! Follow the arrow to get started
  156. p New to LaTeX? Start by having a look at our
  157. a(href="/templates") templates
  158. | or
  159. a(href="/learn") help guides
  160. | .
  161. if freeTrial && !freeTrial.expired
  162. .row-fluid
  163. .span12
  164. .alert.alert-info.alert-free-trial
  165. h2 You are currently using a free trial which expires on #{freeTrial.expiresAt}.
  166. p
  167. a(href="/user/subscription").btn.btn-primary Upgrade now
  168. if freeTrial && freeTrial.expired
  169. .row-fluid
  170. .span12
  171. .alert.alert-danger.alert-free-trial
  172. h2 Your free trial has expired!
  173. p Upgrade now to continue using ShareLaTeX uninterrupted.
  174. p
  175. a(href="/user/subscription").btn.btn-danger Upgrade now
  176. include ../general/small-footer
  177. script(type="text/template")#tagTemplate
  178. mixin tag('{{ project_id }}', '{{ tagName }}', true)
  179. - locals.supressDefaultJs = true
  180. script(type="text/javascript").
  181. window.requirejs = {
  182. "paths" : {
  183. "moment": "libs/moment"
  184. }
  185. };
  186. script(
  187. data-main=jsPath+'list.js?fingerprint='+fingerprint(jsPath + 'list.js'),
  188. baseurl=jsPath,
  189. src=jsPath+'libs/require.js?fingerprint='+fingerprint(jsPath + 'libs/require.js')
  190. )