list.pug 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. extends ../layout
  2. block vars
  3. - var suppressNavContentLinks = true
  4. block content
  5. //- We need to do .replace(/\//g, '\\/') do that '</script>' -> '<\/script>'
  6. //- and doesn't prematurely end the script tag.
  7. script#data(type="application/json").
  8. !{JSON.stringify({ projects: projects, tags: tags, notifications: notifications }).replace(/\//g, '\\/')}
  9. script(type="text/javascript").
  10. window.data = JSON.parse($("#data").text());
  11. window.algolia = {
  12. institutions: {
  13. app_id: '#{algolia_app_id}',
  14. api_key: '#{algolia_api_key}'
  15. }
  16. };
  17. if uiConfig.renderAnnouncements
  18. .announcements(
  19. ng-controller="AnnouncementsController"
  20. ng-class="{ 'announcements-open': ui.isOpen }"
  21. ng-cloak
  22. )
  23. .announcements-backdrop(
  24. ng-if="ui.isOpen"
  25. ng-click="toggleAnnouncementsUI();"
  26. )
  27. a.announcements-btn(
  28. href
  29. ng-if="announcements.length"
  30. ng-click="toggleAnnouncementsUI();"
  31. ng-class="{ 'announcements-btn-open': ui.isOpen, 'announcements-btn-has-new': ui.newItems }"
  32. )
  33. span.announcements-badge(ng-if="ui.newItems") {{ ui.newItems }}
  34. .announcements-body(
  35. ng-if="ui.isOpen"
  36. )
  37. .announcements-scroller
  38. .announcement(
  39. ng-repeat="announcement in announcements | filter:(ui.newItems ? { read: false } : '') track by announcement.id"
  40. )
  41. h2.announcement-header {{ announcement.title }}
  42. p.announcement-description(ng-bind-html="announcement.excerpt")
  43. .announcement-meta
  44. p.announcement-date {{ announcement.date | date:"longDate" }}
  45. a.announcement-link(
  46. ng-href="{{ announcement.url }}"
  47. ng-click="logAnnouncementClick()",
  48. target="_blank"
  49. ) Read more
  50. div.text-center(
  51. ng-if="ui.newItems > 0 && ui.newItems < announcements.length"
  52. )
  53. a.btn.btn-default.btn-sm(
  54. href
  55. ng-click="showAll();"
  56. ) Show all
  57. main.content.content-alt.project-list-page(
  58. ng-controller="ProjectPageController"
  59. role="main"
  60. )
  61. - if(typeof(suppressSystemMessages) == "undefined")
  62. .system-messages(
  63. ng-cloak
  64. ng-controller="SystemMessagesController"
  65. )
  66. .system-message(
  67. ng-repeat="message in messages"
  68. ng-controller="SystemMessageController"
  69. ng-hide="hidden"
  70. )
  71. button(ng-click="hide()").close.pull-right
  72. span(aria-hidden="true") &times;
  73. span.sr-only #{translate("close")}
  74. .system-message-content(ng-bind-html="htmlContent")
  75. include ../translations/translation_message
  76. .project-list-content(event-tracking=settings.overleaf ? "loads_v2_dash" : "", onboard=settings.overleaf ? "true" : "", event-tracking-trigger=settings.overleaf ? "load" : "", event-tracking-mb="true", event-segmentation="{location: 'dash', v2_onboard: true}")
  77. .row.project-list-row(ng-cloak)
  78. .project-list-container(ng-if="projects.length > 0")
  79. .project-list-sidebar-wrapper.col-md-2.col-xs-3
  80. aside.project-list-sidebar
  81. include ./list/side-bar
  82. if hasFeature('v1-return-message')
  83. .project-list-sidebar-v2-pane(ng-controller="OverleafV1NotificationController")
  84. div
  85. button.btn-link.pull-right.project-list-sidebar-v2-pane-toggle(
  86. ng-click="toggle()"
  87. )
  88. i.fa.fa-fw(ng-class="{ 'fa-chevron-up': !visible, 'fa-close': visible }")
  89. | Welcome to Overleaf v2!
  90. div(ng-show="visible") #[a(href="https://www.overleaf.com/help/342-overleaf-v2-faq") Find out more].
  91. if userIsFromOLv1(user)
  92. div(ng-show="visible")
  93. | To tag or rename your v1 projects, please go back to Overleaf v1.
  94. div(ng-show="visible")
  95. a.project-list-sidebar-v1-link(
  96. href='/sign_in_to_v1?return_to=/dash%3Fprefer-v1-dash%3D1'
  97. ) Go back to v1
  98. if userIsFromSL(user)
  99. div(ng-show="visible")
  100. a.project-list-sidebar-v1-link(
  101. href=settings.accountMerge.sharelatexHost
  102. ) Go back to ShareLaTeX
  103. .project-list-main.col-md-10.col-xs-9
  104. include ./list/notifications
  105. include ./list/project-list
  106. .project-list-empty(ng-if="projects.length === 0")
  107. .col-md-offset-2.col-md-8.col-md-offset-2.col-xs-8
  108. include ./list/empty-project-list
  109. include ./list/modals
  110. //- include ./list/front-chat