left-menu.jade 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. aside#left-menu.full-size(
  2. ng-class="{ 'shown': ui.leftMenuShown }"
  3. ng-cloak
  4. )
  5. h4 #{translate("download")}
  6. ul.list-unstyled.nav.nav-downloads.text-center
  7. li
  8. a(
  9. ng-href="/project/{{project_id}}/download/zip"
  10. target="_blank"
  11. )
  12. i.fa.fa-file-archive-o.fa-2x
  13. br
  14. | #{translate("source")}
  15. li
  16. a(
  17. ng-href="{{pdf.url}}"
  18. target="_blank"
  19. ng-if="pdf.url"
  20. )
  21. i.fa.fa-file-pdf-o.fa-2x
  22. br
  23. | PDF
  24. div.pdf-disabled(
  25. ng-if="!pdf.url"
  26. tooltip="#{translate('please_compile_pdf_before_download')}"
  27. tooltip-placement="bottom"
  28. )
  29. i.fa.fa-file-pdf-o.fa-2x
  30. br
  31. | PDF
  32. span(ng-show="!anonymous")
  33. h4 #{translate("actions")}
  34. ul.list-unstyled.nav
  35. li(ng-controller="CloneProjectController")
  36. a(
  37. href,
  38. ng-click="openCloneProjectModal()"
  39. )
  40. i.fa.fa-fw.fa-copy
  41. |    #{translate("copy_project")}
  42. li(ng-controller="TemplatesController", ng-show="permissions.admin")
  43. a(ng-click="openPublishTemplateModal()")
  44. i.fa.fa-external-link.fa-fw
  45. |    #{translate("publish_as_template")}
  46. div(ng-show="permissions.admin")
  47. h4() #{translate("sync")}
  48. span(ng-controller="DropboxController")
  49. ul.list-unstyled.nav()
  50. li
  51. a(ng-click="openDropboxModal()")
  52. i.fa.fa-dropbox.fa-fw
  53. |    Dropbox
  54. !{moduleIncludes("editorLeftMenu", locals)}
  55. h4(ng-show="!anonymous") #{translate("settings")}
  56. form.settings(ng-controller="SettingsController", ng-show="!anonymous")
  57. .containter-fluid
  58. .form-controls(ng-show="permissions.write")
  59. label(for="compiler") #{translate("compiler")}
  60. select(
  61. name="compiler"
  62. ng-model="project.compiler"
  63. )
  64. option(value='pdflatex') pdfLaTeX
  65. option(value='latex') LaTeX
  66. option(value='xelatex') XeLaTeX
  67. option(value='lualatex') LuaLaTeX
  68. .form-controls(ng-show="permissions.write")
  69. label(for="rootDoc_id") #{translate("main_document")}
  70. select(
  71. name="rootDoc_id",
  72. ng-model="project.rootDoc_id",
  73. ng-options="doc.doc.id as doc.path for doc in docs"
  74. )
  75. .form-controls
  76. label(for="spellCheckLanguage") #{translate("spell_check")}
  77. select(
  78. name="spellCheckLanguage"
  79. ng-model="project.spellCheckLanguage"
  80. )
  81. option(value="") #{translate("off")}
  82. optgroup(label="Language")
  83. for language in languages
  84. option(
  85. value=language.code
  86. )= language.name
  87. .form-controls
  88. label(for="autoComplete") #{translate("auto_complete")}
  89. select(
  90. name="autoComplete"
  91. ng-model="settings.autoComplete"
  92. ng-options="o.v as o.n for o in [{ n: 'On', v: true }, { n: 'Off', v: false }]"
  93. )
  94. .form-controls
  95. label(for="theme") #{translate("theme")}
  96. select(
  97. name="theme"
  98. ng-model="settings.theme"
  99. )
  100. each theme in themes
  101. option(value=theme) #{theme.replace(/_/g, ' ')}
  102. .form-controls(ng-show="!anonymous")
  103. label(for="mode") #{translate("keybindings")}
  104. select(
  105. name="mode"
  106. ng-model="settings.mode"
  107. )
  108. option(value='default') None
  109. option(value='vim') Vim
  110. option(value='emacs') Emacs
  111. .form-controls
  112. label(for="fontSize") #{translate("font_size")}
  113. select(
  114. name="fontSize"
  115. ng-model="settings.fontSize"
  116. )
  117. each size in ['10','11','12','13','14','16','20','24']
  118. option(value=size) #{size}px
  119. .form-controls
  120. label(for="pdfViewer") #{translate("pdf_viewer")}
  121. select(
  122. name="pdfViewer"
  123. ng-model="settings.pdfViewer"
  124. )
  125. option(value="pdfjs") #{translate("built_in")}
  126. option(value="native") #{translate("native")}
  127. h4 #{translate("hotkeys")}
  128. ul.list-unstyled.nav
  129. li(ng-controller="HotkeysController")
  130. a(ng-click="openHotkeysModal()")
  131. i.fa.fa-keyboard-o.fa-fw
  132. |    #{translate("show_hotkeys")}
  133. #left-menu-mask(
  134. ng-show="ui.leftMenuShown",
  135. ng-click="ui.leftMenuShown = false"
  136. ng-cloak
  137. )
  138. script(type='text/ng-template', id='cloneProjectModalTemplate')
  139. .modal-header
  140. h3 #{translate("copy_project")}
  141. .modal-body
  142. form(name="cloneProjectForm", novalidate)
  143. .form-group
  144. label #{translate("new_name")}
  145. input.form-control(
  146. type="text",
  147. placeholder="New Project Name",
  148. required,
  149. ng-model="inputs.projectName",
  150. on-enter="clone()",
  151. focus-on="open"
  152. )
  153. .modal-footer
  154. button.btn.btn-default(
  155. ng-disabled="state.inflight"
  156. ng-click="cancel()"
  157. ) #{translate("cancel")}
  158. button.btn.btn-primary(
  159. ng-disabled="cloneProjectForm.$invalid || state.inflight"
  160. ng-click="clone()"
  161. )
  162. span(ng-hide="state.inflight") #{translate("copy")}
  163. span(ng-show="state.inflight") #{translate("copying")}...