track-changes.jade 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. div#trackChanges(ng-show="ui.view == 'track-changes'")
  2. aside.change-list(
  3. ng-controller="TrackChangesListController"
  4. infinite-scroll="loadMore()"
  5. infinite-scroll-disabled="trackChanges.loading || trackChanges.atEnd"
  6. infinite-scroll-initialize="ui.view == 'track-changes'"
  7. )
  8. .infinite-scroll-inner
  9. ul.list-unstyled(
  10. ng-class="{\
  11. 'hover-state': trackChanges.hoveringOverListSelectors\
  12. }"
  13. )
  14. li.change(
  15. ng-repeat="update in trackChanges.updates"
  16. ng-class="{\
  17. 'first-in-day': update.meta.first_in_day,\
  18. 'selected': update.inSelection,\
  19. 'selected-to': update.selectedTo,\
  20. 'selected-from': update.selectedFrom,\
  21. 'hover-selected': update.inHoverSelection,\
  22. 'hover-selected-to': update.hoverSelectedTo,\
  23. 'hover-selected-from': update.hoverSelectedFrom,\
  24. }"
  25. ng-controller="TrackChangesListItemController"
  26. )
  27. div.day(ng-show="update.meta.first_in_day") {{ update.meta.end_ts | relativeDate }}
  28. div.selectors
  29. div.range
  30. form
  31. input.selector-from(
  32. type="radio"
  33. name="fromVersion"
  34. ng-model="update.selectedFrom"
  35. ng-value="true"
  36. ng-mouseover="mouseOverSelectedFrom()"
  37. ng-mouseout="mouseOutSelectedFrom()"
  38. ng-show="update.afterSelection || update.inSelection"
  39. )
  40. form
  41. input.selector-to(
  42. type="radio"
  43. name="toVersion"
  44. ng-model="update.selectedTo"
  45. ng-value="true"
  46. ng-mouseover="mouseOverSelectedTo()"
  47. ng-mouseout="mouseOutSelectedTo()"
  48. ng-show="update.beforeSelection || update.inSelection"
  49. )
  50. div.description(ng-click="select()")
  51. div.time {{ update.meta.end_ts | formatDate:'h:mm a' }}
  52. div.docs(ng-repeat="(doc_id, doc) in update.docs")
  53. span.doc {{ doc.entity.name }}
  54. div.users
  55. div.user(ng-repeat="update_user in update.meta.users")
  56. .color-square(ng-style="{'background-color': 'hsl({{ update_user.hue }}, 100%, 50%)'}")
  57. span(ng-if="update_user.id != user.id") {{user.first_name}} {{user.last_name}}
  58. span(ng-if="update_user.id == user.id") You
  59. .loading(ng-show="trackChanges.loading")
  60. i.fa.fa-spin.fa-refresh
  61. |   Loading...
  62. .diff.full-size(ng-controller="TrackChangesDiffController")
  63. .diff-editor.hide-ace-cursor(
  64. ace-editor,
  65. ng-show="!!trackChanges.diff && !trackChanges.diff.loading && !trackChanges.diff.deleted",
  66. theme="settings.theme",
  67. font-size="settings.fontSize",
  68. text="trackChanges.diff.text",
  69. highlights="trackChanges.diff.highlights",
  70. read-only="true",
  71. resize-on="layout:main:resize"
  72. )
  73. .diff-deleted.text-centered(
  74. ng-show="trackChanges.diff.deleted"
  75. )
  76. p.text-serif {{ trackChanges.diff.doc.name }} has been deleted.
  77. p
  78. a.btn.btn-primary.btn-lg(
  79. href,
  80. ng-click="restoreDeletedDoc()"
  81. ) Restore
  82. .loading-panel(ng-show="trackChanges.diff.loading")
  83. i.fa.fa-spin.fa-refresh
  84. |   Loading...
  85. .error-panel(ng-show="trackChanges.diff.error")
  86. .alert.alert-danger Sorry, something went wrong :(