You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

128 lines
6.2 KiB

6 years ago
6 years ago
6 years ago
6 years ago
  1. {% extends "base.html" %} {% load static %} {% block header %}
  2. <link rel="stylesheet" type="text/css" href="{% static 'inbox.css' %}"> {% endblock %} {% block content %}
  3. <div class="columns" id="mail-app">
  4. <aside class="column is-2 aside hero is-fullheight">
  5. <div>
  6. <aside class="menu">
  7. <p class="menu-label" style="color:#f2f2f2;">
  8. Progress
  9. </p>
  10. <ul class="menu-list">
  11. <li class="has-text-grey-light level" style="padding-left:10px;margin-bottom:0;font-size:14px">
  12. <span class="level-left">Achievement</span>
  13. <span class="level-right">[[ achievement ]]%</span>
  14. </li>
  15. <li>
  16. <progress class="progress" v-bind:class="progressColor" v-bind:value="achievement" max="100">30%</progress>
  17. </li>
  18. </ul>
  19. </aside>
  20. <aside class="menu">
  21. <p class="menu-label" style="color:#f2f2f2;">
  22. Labels
  23. </p>
  24. <ul class="menu-list">
  25. <div class="control" v-for="(label, label_id) in labels">
  26. <li class="tags has-addons">
  27. <span class="tag is-primary">[[label.shortcut]]</span>
  28. <a class="tag is-grey" v-on:click="addLabel(label.id)" v-shortkey.once="['ctrl', [[ label.shortcut ]]]" @shortkey="addLabel(label.id)">[[label.text]]</a>
  29. </li>
  30. </div>
  31. </ul>
  32. </aside>
  33. </div>
  34. </aside>
  35. <div class="column is-3 messages hero is-fullheight" id="message-feed">
  36. <div class="field has-addons" style="margin:0 10px;">
  37. <div class="control is-expanded">
  38. <input class="input" type="text" placeholder="Find a document" v-model="searchQuery" @keyup.enter="submit"
  39. style="border-right:none;box-shadow: none;-webkit-box-shadow: none;">
  40. </div>
  41. <div class="control">
  42. <div class="dropdown is-hoverable">
  43. <div class="dropdown-trigger">
  44. <button class="button" aria-haspopup="true" aria-controls="dropdown-menu" style="border-left:none">
  45. <span class="icon">
  46. <i class="fas fa-angle-down" aria-hidden="true"></i>
  47. </span>
  48. </button>
  49. </div>
  50. <div class="dropdown-menu" id="dropdown-menu" role="menu">
  51. <div class="dropdown-content">
  52. <a href="#" class="dropdown-item">
  53. Default
  54. </a>
  55. <a class="dropdown-item">
  56. Active
  57. </a>
  58. <a href="#" class="dropdown-item">
  59. Complete
  60. </a>
  61. <a href="#" class="dropdown-item">
  62. Probability
  63. </a>
  64. </div>
  65. </div>
  66. </div>
  67. </div>
  68. </div>
  69. <div class="inbox-messages" id="inbox-messages" v-if="items.length">
  70. <div v-for="(msg, index) in items" class="card" v-bind:class="{ active: index == cur }" v-on:click="showMessage(index)" v-bind:data-preview-id="index">
  71. <div class="card-content" style="padding:1.2rem;">
  72. <div class="msg-header">
  73. <span class="msg-from">
  74. <div class="field is-grouped is-grouped-multiline">
  75. <div class="control" v-for="(annotation, index) in msg.labels">
  76. <div class="tags has-addons">
  77. <span class="tag is-dark">
  78. [[annotation.label.text]]
  79. </span>
  80. <span class="tag is-primary" v-if="annotation.label.prob">[[annotation.label.prob]]</span>
  81. </div>
  82. </div>
  83. </div>
  84. </span>
  85. </div>
  86. <div class="msg-snippet">
  87. <p>[[ msg.text.slice(0, 100) ]]</p>
  88. </div>
  89. </div>
  90. </div>
  91. </div>
  92. </div>
  93. <div class="column is-7 message hero is-fullheight" id="message-pane">
  94. <div class="action-buttons">
  95. <div class="control is-grouped">
  96. <a class="button is-small" v-on:click="prevPage" v-shortkey="['ctrl', 'p']" @shortkey="prevPage">
  97. <i class="fa fa-chevron-left"></i>
  98. </a>
  99. <a class="button is-small" v-on:click="nextPage" v-shortkey="['ctrl', 'n']" @shortkey="nextPage">
  100. <i class="fa fa-chevron-right"></i>
  101. </a>
  102. </div>
  103. </div>
  104. <div class="box message-preview">
  105. <div class="top" v-if="items.length">
  106. <div class="field is-grouped is-grouped-multiline">
  107. <div class="control" v-for="(annotation, index) in items[cur].labels">
  108. <div class="tags has-addons">
  109. <span class="tag is-dark">
  110. <button class="delete is-small" v-on:click="deleteLabel(index)"></button>
  111. [[ annotation.label.text ]]
  112. </span>
  113. <span class="tag is-primary" v-if="annotation.label.prob">[[ annotation.label.prob ]]</span>
  114. </div>
  115. </div>
  116. </div>
  117. <hr>
  118. <div class="content">
  119. <p style="line-height:2">[[ items[cur].text ]]</p>
  120. </div>
  121. </div>
  122. </div>
  123. </div>
  124. </div>
  125. <script type="text/javascript" src="{% static 'main.js' %}"></script>
  126. {% endblock %}