overleaf/services/web/app/views/project/editor/editor.jade

153 lines
6 KiB
Text
Raw Normal View History

div.full-size(
ng-show="ui.view == 'editor'"
layout="pdf"
2014-07-22 08:33:01 -04:00
layout-disabled="ui.pdfLayout != 'sideBySide'"
mask-iframes-on-resize="true"
resize-on="layout:main:resize"
resize-proportionally="true"
initial-size-east="'50%'"
minimum-restore-size-east="300"
)
2016-10-13 09:22:23 -04:00
.ui-layout-center(ng-controller="ReviewPanelController", ng-class="{'has-review-panel': ui.reviewPanelOpen}")
.loading-panel(ng-show="!editor.sharejs_doc || editor.opening")
span(ng-show="editor.open_doc_id")
i.fa.fa-spin.fa-refresh
|   #{translate("loading")}...
span(ng-show="!editor.open_doc_id")
i.fa.fa-arrow-left
|   #{translate("open_a_file_on_the_left")}
2016-10-11 09:24:01 -04:00
2016-10-13 09:22:23 -04:00
#editor(
ace-editor="editor",
ng-show="!!editor.sharejs_doc && !editor.opening"
theme="settings.theme",
keybindings="settings.mode",
font-size="settings.fontSize",
auto-complete="settings.autoComplete",
spell-check="!anonymous",
spell-check-language="project.spellCheckLanguage",
highlights="onlineUserCursorHighlights[editor.open_doc_id]"
show-print-margin="false",
sharejs-doc="editor.sharejs_doc",
last-updated="editor.last_updated",
cursor-position="editor.cursorPosition",
goto-line="editor.gotoLine",
2016-10-13 09:22:23 -04:00
resize-on="layout:main:resize,layout:pdf:resize,layout:review:resize,reviewPanel:toggle",
annotations="pdf.logEntryAnnotations[editor.open_doc_id]",
read-only="!permissions.write",
file-name="editor.open_doc_name",
on-ctrl-enter="recompileViaKey",
syntax-validation="settings.syntaxValidation",
review-panel="reviewPanel",
on-scroll="onScroll",
scroll-events="scrollEvents",
track-changes-enabled="trackChangesFeatureFlag"
track-new-changes= "reviewPanel.trackNewChanges"
)
#review-panel
.review-panel-toolbar
| Track Changes
input(type="checkbox", ng-model="reviewPanel.trackNewChanges")
.review-panel-scroller
2016-11-10 05:19:52 -05:00
.rp-entry-list(review-panel-sorted)
.rp-entry-wrapper(
ng-repeat="(entry_id, entry) in reviewPanel.entries"
2016-11-09 12:10:58 -05:00
)
2016-11-10 05:19:52 -05:00
.rp-entry-callout(
ng-class="'rp-entry-callout-' + entry.type"
2016-11-09 12:10:58 -05:00
style="top: {{ entry.screenPos.y + 15 }}px; height: {{ top - entry.screenPos.y }}px"
)
2016-11-10 05:19:52 -05:00
.rp-entry(
ng-class="'rp-entry-' + entry.type"
2016-11-09 12:12:01 -05:00
ng-style="{'top': top}"
)
div(ng-if="entry.type == 'insert' || entry.type == 'delete'")
2016-11-10 05:19:52 -05:00
.rp-entry-header
.rp-entry-action-icon(ng-switch="entry.type")
i.fa.fa-pencil(ng-switch-when="insert")
i.rp-icon-delete(ng-switch-when="delete")
2016-11-09 12:09:57 -05:00
2016-11-10 05:19:52 -05:00
.rp-entry-metadata
p.rp-entry-metadata-line(style="color: hsl({{ users[entry.metadata.user_id].hue }}, 70%, 50%);") {{ users[entry.metadata.user_id].name }}
2016-11-10 10:08:41 -05:00
p.rp-entry-metadata-line {{ entry.metadata.ts | date : 'MMM d, y h:mm a' }}
2016-11-10 12:19:41 -05:00
.rp-avatar(style="background-color: hsl({{ users[entry.metadata.user_id].hue }}, 70%, 50%);") {{ users[entry.metadata.user_id].avatar_text }}
.rp-entry-body(ng-switch="entry.type")
span(ng-switch-when="insert") Added 
ins.rp-content-highlight {{ entry.content }}
span(ng-switch-when="delete") Delete 
del.rp-content-highlight {{ entry.content }}
.rp-entry-actions
2016-11-10 10:08:41 -05:00
a.rp-entry-button(href, ng-click="acceptChange(entry_id)")
i.fa.fa-check
|  Accept
a.rp-entry-button(href, ng-click="rejectChange(entry_id)")
i.fa.fa-times
|  Reject
2016-11-09 12:12:01 -05:00
div(ng-if="entry.type == 'comment'")
2016-11-10 12:19:41 -05:00
.rp-comment(ng-repeat="comment in entry.thread")
.rp-comment-body(style="color: hsl({{ users[comment.user_id].hue }}, 70%, 90%);")
p.rp-comment-content {{ comment.content }}
p.rp-comment-metadata
| {{ comment.ts | date : 'MMM d, y h:mm a' }}
|  • 
span(style="color: hsl({{ users[comment.user_id].hue }}, 70%, 50%);") {{ users[comment.user_id].name }}
.rp-avatar(style="background-color: hsl({{ users[comment.user_id].hue }}, 70%, 50%);") {{ users[comment.user_id].avatar_text }}
//- div.small(style="color: hsl({{ users[comment.user_id].hue }}, 70%, 50%)") {{ users[comment.user_id].name }}
//- div.small {{ comment.ts }}
//- | {{ comment.content }}
//- pre {{ comment | json}}
//- pre {{ users[comment.user_id] | json }}
//- div(ng-if="entry.replying")
//- textarea(ng-model="entry.replyContent")
//- a.btn.btn-sm.btn-primary(href, ng-click="submitReply(entry)") Submit
//- a(href, ng-click="cancelReply(entry)") X
//- a.btn.btn-sm.btn-primary(href, ng-click="startReply(entry)", ng-if="!entry.replying") Reply
.rp-comment-reply
textarea.rp-comment-reply-input(
ng-model="entry.replyContent"
ng-keypress="handleCommentReplyKeyPress($event, entry);"
placeholder="Hit \"Enter\" to reply"
)
2016-11-10 12:19:41 -05:00
.rp-entry-actions
a.rp-entry-button(href)
i.fa.fa-check
|  Mark as resolved
2016-11-09 12:12:01 -05:00
div(ng-if="entry.type == 'focus-position'")
a.btn.btn-sm(href, ng-if="!commentState.adding", ng-click="startNewComment()") Add comment
div(ng-if="commentState.adding")
textarea(ng-model="commentState.content")
a.btn.btn-sm.btn-primary(href, ng-click="submitNewComment()") Submit
a(href, ng-click="cancelNewComment()") X
.ui-layout-east
2014-07-22 08:33:01 -04:00
div(ng-if="ui.pdfLayout == 'sideBySide'")
include ./pdf
2014-06-30 13:35:01 -04:00
.ui-layout-resizer-controls.synctex-controls(
ng-show="!!pdf.url && settings.pdfViewer == 'pdfjs'"
2014-06-30 13:35:01 -04:00
ng-controller="PdfSynctexController"
)
a.btn.btn-default.btn-xs(
2014-08-20 09:31:44 -04:00
tooltip="#{translate('go_to_code_location_in_pdf')}"
2014-06-30 13:35:01 -04:00
tooltip-placement="right"
tooltip-append-to-body="true"
ng-click="syncToPdf()"
)
i.fa.fa-long-arrow-right
br
a.btn.btn-default.btn-xs(
tooltip-html="'#{translate('go_to_pdf_location_in_code')}'"
2014-06-30 13:35:01 -04:00
tooltip-placement="right"
tooltip-append-to-body="true"
ng-click="syncToCode()"
)
2014-07-22 08:33:01 -04:00
i.fa.fa-long-arrow-left
div.full-size(
ng-if="ui.pdfLayout == 'flat'"
ng-show="ui.view == 'pdf'"
)
include ./pdf