summaryrefslogtreecommitdiff
path: root/web-ui/app/templates
diff options
context:
space:
mode:
authorRoald de Vries <rdevries@thoughtworks.com>2016-12-08 16:59:09 +0100
committerRoald de Vries <rdevries@thoughtworks.com>2016-12-08 16:59:09 +0100
commitfafac3b4128a0993b0de1c6e8ca3062bf1ccc14e (patch)
tree3b9a446e4c82bb8ba94c1cd0adec57c0042dae28 /web-ui/app/templates
parent521bce7eff5cf921156efe74c91a0499ade43619 (diff)
Revert "[#801] Merge branch 'signup'"
This reverts commit d10f607a4d40587510b0dc31b31fe4750bf4a3a3, reversing changes made to c28abba2f5b1186c671ebef508d40ffaae6d5bc5.
Diffstat (limited to 'web-ui/app/templates')
-rw-r--r--web-ui/app/templates/compose/attachment_item.hbs4
-rw-r--r--web-ui/app/templates/compose/attachment_upload_item.hbs5
-rw-r--r--web-ui/app/templates/compose/attachments_list.hbs14
-rw-r--r--web-ui/app/templates/compose/compose_box.hbs32
-rw-r--r--web-ui/app/templates/compose/feedback_box.hbs18
-rw-r--r--web-ui/app/templates/compose/fixed_recipient.hbs8
-rw-r--r--web-ui/app/templates/compose/inline_box.hbs20
-rw-r--r--web-ui/app/templates/compose/no_mails_available.hbs7
-rw-r--r--web-ui/app/templates/compose/no_message_selected.hbs3
-rw-r--r--web-ui/app/templates/compose/recipient_input.hbs1
-rw-r--r--web-ui/app/templates/compose/recipients.hbs33
-rw-r--r--web-ui/app/templates/compose/reply_section.hbs6
-rw-r--r--web-ui/app/templates/compose/upload_attachment_failed.hbs6
-rw-r--r--web-ui/app/templates/feedback/feedback_trigger.hbs8
-rw-r--r--web-ui/app/templates/mail_actions/actions_box.hbs7
-rw-r--r--web-ui/app/templates/mail_actions/compose_trigger.hbs3
-rw-r--r--web-ui/app/templates/mail_actions/pagination_trigger.hbs3
-rw-r--r--web-ui/app/templates/mail_actions/refresh_trigger.hbs3
-rw-r--r--web-ui/app/templates/mail_actions/trash_actions_box.hbs5
-rw-r--r--web-ui/app/templates/mails/draft.hbs41
-rw-r--r--web-ui/app/templates/mails/full_view.hbs83
-rw-r--r--web-ui/app/templates/mails/mail_actions.hbs6
-rw-r--r--web-ui/app/templates/mails/sent.hbs36
-rw-r--r--web-ui/app/templates/mails/single.hbs28
-rw-r--r--web-ui/app/templates/mails/trash.hbs32
-rw-r--r--web-ui/app/templates/page/logout.hbs9
-rw-r--r--web-ui/app/templates/page/logout_shortcut.hbs6
-rw-r--r--web-ui/app/templates/page/user_settings_box.hbs10
-rw-r--r--web-ui/app/templates/page/user_settings_icon.hbs8
-rw-r--r--web-ui/app/templates/page/version.hbs2
-rw-r--r--web-ui/app/templates/search/search_trigger.hbs3
-rw-r--r--web-ui/app/templates/tags/shortcut.hbs9
-rw-r--r--web-ui/app/templates/tags/tag.hbs3
-rw-r--r--web-ui/app/templates/tags/tag_inner.hbs4
-rw-r--r--web-ui/app/templates/tags/tag_list.hbs6
-rw-r--r--web-ui/app/templates/user_alerts/message.hbs1
36 files changed, 473 insertions, 0 deletions
diff --git a/web-ui/app/templates/compose/attachment_item.hbs b/web-ui/app/templates/compose/attachment_item.hbs
new file mode 100644
index 00000000..7a64f6f5
--- /dev/null
+++ b/web-ui/app/templates/compose/attachment_item.hbs
@@ -0,0 +1,4 @@
+<li data-ident="{{ this.ident }}" class="compose-view__attachments-list-item">
+ <a class="compose-view__attachments-list-item-label" href="/attachment/{{ this.ident }}?encoding={{ this.encoding }}&filename={{ this.name }}">{{ this.name }} <span class="attachment-size">({{ formatSize this.size}})</span></a>
+ {{#if removable}}<i class="fa fa-close remove-icon compose-view__attachments-list-item-icon"></i>{{/if}}
+</li>
diff --git a/web-ui/app/templates/compose/attachment_upload_item.hbs b/web-ui/app/templates/compose/attachment_upload_item.hbs
new file mode 100644
index 00000000..eb6c4ba6
--- /dev/null
+++ b/web-ui/app/templates/compose/attachment_upload_item.hbs
@@ -0,0 +1,5 @@
+<li class="compose-view__attachments-list-item">
+ <div id="attachment-upload-item-progress" class="compose-view__attachments-list-item-progress"><div class="compose-view__attachments-list-item-progress-bar"></div></div>
+ <a class="compose-view__attachments-list-item-label">{{ this.name }} <span class="attachment-size">({{ formatSize this.size}})</span></a>
+ <i id="attachment-upload-item-abort" class="fa fa-close remove-icon compose-view__attachments-list-item-icon"></i>
+</li>
diff --git a/web-ui/app/templates/compose/attachments_list.hbs b/web-ui/app/templates/compose/attachments_list.hbs
new file mode 100644
index 00000000..6f34df9e
--- /dev/null
+++ b/web-ui/app/templates/compose/attachments_list.hbs
@@ -0,0 +1,14 @@
+<div id="attachment-list" class="buttons-group columns compose-view__attachments">
+ <input id="fileupload" type="file" name="attachment" hidden>
+
+ <!-- The container for the uploaded files -->
+ <div class="compose-view__attachments-wrapper">
+ <ul id="attachment-list-item" class="compose-view__attachments-list">
+ {{#each attachments }}
+ {{> attachment_item this }}
+ {{/each }}
+ </ul>
+ <ul id="attachment-upload-item" class="compose-view__attachments-list compose-view__attachments-list--upload"></ul>
+ </div>
+
+</div>
diff --git a/web-ui/app/templates/compose/compose_box.hbs b/web-ui/app/templates/compose/compose_box.hbs
new file mode 100644
index 00000000..fcfbeaaf
--- /dev/null
+++ b/web-ui/app/templates/compose/compose_box.hbs
@@ -0,0 +1,32 @@
+<button class="close-mail-button">
+ <i class="fa fa-times"></i>
+</button>
+
+<div class="compose-view">
+
+ {{> recipients }}
+ <div class="clearfix">
+ <a id="to-trigger" class="hide">{{t 'to'}}</a>
+ <a id="ccs-trigger" class="hide">{{t 'cc'}}</a>
+ <a id="bccs-trigger" class="hide">{{t 'bcc'}}</a>
+ </div>
+
+ <div class="floatlabel">
+ <label class="floatlabel" for="subject">{{t 'subject'}}</label>
+ <input class="floatlabel" name="subject" type="text" id="subject" value="{{subject}}" placeholder="{{t 'subject'}}" tabindex="4"/>
+ </div>
+ <div class="floatlabel">
+ <label class="floatlabel" for="body">{{t 'body'}}</label>
+ <textarea class="floatlabel" name="body" id="text-box" placeholder="{{t 'body'}}" tabindex="5">{{body}}</textarea>
+ </div>
+
+ {{> attachments_list }}
+
+ <div class="buttons-group columns compose-view__buttons">
+ <button id="send-button" tabindex="6"><i class="fa fa-send"></i></button>
+ <div class="compose-view__buttons-attachment"><span id="attachment-button" tabindex="6"></span></div>
+ <button id="trash-button" tabindex="7">{{t 'trash-button'}}<i class="fa fa-trash-o"></i></button>
+ <div id="draft-save-status"></div>
+ </div>
+
+</div> <!-- ./compose-view -->
diff --git a/web-ui/app/templates/compose/feedback_box.hbs b/web-ui/app/templates/compose/feedback_box.hbs
new file mode 100644
index 00000000..346a6192
--- /dev/null
+++ b/web-ui/app/templates/compose/feedback_box.hbs
@@ -0,0 +1,18 @@
+<button class="close-mail-button">
+ <i class="fa fa-times"></i>
+</button>
+
+<div class="compose-view">
+ <div class="floatlabel">
+ <span id="feedback-subject">Feedback</span>
+ </div>
+
+ <div class="floatlabel">
+ <label class="floatlabel" for="text-box">Body</label>
+ <textarea class="floatlabel" name="body" id="text-box" placeholder="{{t 'feedback-placeholder'}}" tabindex="2">{{body}}</textarea>
+ </div>
+
+ <div class="buttons-group columns">
+ <button id="send-button" tabindex="6">{{t 'Submit Feedback'}} </button>
+ </div>
+</div> <!-- ./compose-view -->
diff --git a/web-ui/app/templates/compose/fixed_recipient.hbs b/web-ui/app/templates/compose/fixed_recipient.hbs
new file mode 100644
index 00000000..8b01717c
--- /dev/null
+++ b/web-ui/app/templates/compose/fixed_recipient.hbs
@@ -0,0 +1,8 @@
+<div class="fixed-recipient">
+ <span class="recipient-area">
+ <div class="recipient-value">
+ <span>{{ address }}</span> <a class="recipient-del" href="#" data-label="{{t 'click-to-remove'}}"/>
+ </div>
+ </span>
+ <input type="hidden" value="{{ address }}" name="{{ name }}" />
+</div>
diff --git a/web-ui/app/templates/compose/inline_box.hbs b/web-ui/app/templates/compose/inline_box.hbs
new file mode 100644
index 00000000..c9c114ec
--- /dev/null
+++ b/web-ui/app/templates/compose/inline_box.hbs
@@ -0,0 +1,20 @@
+<div id="subject-container">
+ <h4 id="reply-subject">{{subject}}</h4>
+ <input type="text" value="{{subject}}" style="display: none"/>
+</div>
+<textarea id="text-box" placeholder="{{t 'body'}}" tabindex=1>{{body}}</textarea>
+
+<a id="all-recipients" tabindex=2>
+ <strong>{{t 'to'}}:</strong> {{formatRecipients recipients}}
+</a>
+
+{{> recipients }}
+
+{{> attachments_list }}
+
+<div class="buttons-group columns compose-view__buttons">
+ <button id="send-button" tabindex=6><i class="fa fa-send"></i></button>
+ <div class="compose-view__buttons-attachment"><span id="attachment-button" tabindex="6"></span></div>
+ <button id="trash-button" tabindex=7>{{t 'trash-button'}}<i class="fa fa-trash-o"></i></button>
+ <div id="draft-save-status"></div>
+</div>
diff --git a/web-ui/app/templates/compose/no_mails_available.hbs b/web-ui/app/templates/compose/no_mails_available.hbs
new file mode 100644
index 00000000..c61152a4
--- /dev/null
+++ b/web-ui/app/templates/compose/no_mails_available.hbs
@@ -0,0 +1,7 @@
+<div class="no-mails-available-pane">
+ {{#if forSearch }}
+ {{t 'no-results-for'}}: '{{ forSearch }}'.
+ {{else}}
+ {{t 'no-emails-in'}} '{{t tag}}'.
+ {{/if}}
+</div>
diff --git a/web-ui/app/templates/compose/no_message_selected.hbs b/web-ui/app/templates/compose/no_message_selected.hbs
new file mode 100644
index 00000000..0b9beaf8
--- /dev/null
+++ b/web-ui/app/templates/compose/no_message_selected.hbs
@@ -0,0 +1,3 @@
+<div class="no-message-selected-pane">
+ <div class="no-message-selected-pane__text">{{t 'nothing-selected'}}.</div>
+</div>
diff --git a/web-ui/app/templates/compose/recipient_input.hbs b/web-ui/app/templates/compose/recipient_input.hbs
new file mode 100644
index 00000000..9416f11f
--- /dev/null
+++ b/web-ui/app/templates/compose/recipient_input.hbs
@@ -0,0 +1 @@
+<input type="text" />
diff --git a/web-ui/app/templates/compose/recipients.hbs b/web-ui/app/templates/compose/recipients.hbs
new file mode 100644
index 00000000..43aced1c
--- /dev/null
+++ b/web-ui/app/templates/compose/recipients.hbs
@@ -0,0 +1,33 @@
+<div id="recipients-fields" style="display:none">
+ <div id='recipients-to-area' class="recipients-area input-container columns large-12 no-padding">
+ <input class="recipients-navigation-handler"/>
+ <div class='compose-column-label'>
+ <label for="recipients-to-box" class="recipients-label column large-1">{{t 'to'}}: </label>
+ </div>
+ <div class='recipients-list compose-column-recipients'>
+ <input id='recipients-to-box' class="recipients-input" type="text" tabindex="1"/></div>
+ </div>
+ <label id="cc-bcc-collapse" class="collapse fa-angle-down" for="hide-and-show"></label>
+ <input id="hide-and-show" type="checkbox">
+ <div id="cc-and-bcc">
+ <div id="recipients-cc-area" class="recipients-area input-container columns large-12 no-padding">
+ <input class="recipients-navigation-handler"/>
+ <div class='compose-column-label'>
+ <label for="recipients-cc-box" class="recipients-label column large-1">{{t 'cc'}}: </label>
+ </div>
+ <div class='recipients-list compose-column-recipients'>
+ <input id='recipients-cc-box' class="recipients-input" type="text" tabindex="2"/>
+ </div>
+ </div>
+
+ <div id="recipients-bcc-area" class="recipients-area input-container columns large-12 no-padding">
+ <input class="recipients-navigation-handler"/>
+ <div class='compose-column-label'>
+ <label for ="recipients-bcc-box" class="recipients-label column large-1">{{t 'bcc'}}: </label>
+ </div>
+ <div class='recipients-list compose-column-recipients'>
+ <input id='recipients-bcc-box' class="recipients-input" type="text" tabindex="3"/>
+ </div>
+ </div>
+ </div>
+</div>
diff --git a/web-ui/app/templates/compose/reply_section.hbs b/web-ui/app/templates/compose/reply_section.hbs
new file mode 100644
index 00000000..45203d87
--- /dev/null
+++ b/web-ui/app/templates/compose/reply_section.hbs
@@ -0,0 +1,6 @@
+<div class="reply-container columns small-12 large-12">
+ <button id="reply-button" class="column small-12 large-4">{{t 'reply'}} <i class="fa fa-reply"></i></button>
+ <button id="reply-all-button" class="column small-12 large-4">{{t 'reply-to-all'}} <i class="fa fa-reply-all"></i></button>
+ <button id="forward-button" class="column small-12 large-4">{{t 'forward'}} <i class="fa fa-mail-forward"></i></button>
+ <div id="reply-box" style="display:none"></div>
+</div>
diff --git a/web-ui/app/templates/compose/upload_attachment_failed.hbs b/web-ui/app/templates/compose/upload_attachment_failed.hbs
new file mode 100644
index 00000000..dbb1437b
--- /dev/null
+++ b/web-ui/app/templates/compose/upload_attachment_failed.hbs
@@ -0,0 +1,6 @@
+<div id="upload-error" class="compose-view__attachments-error">
+ <i id="upload-error-close" class="fa fa-close compose-view__attachments-error-close"></i>
+ <span id="upload-error-message" class="compose-view__attachments-error-message">Upload failed. This file exceeds the 1MB limit.</span>
+ <a href="#" id="upload-file-button">Choose another file</a>
+ <a href="#" id="dismiss-button">Dismiss</a>
+</div>
diff --git a/web-ui/app/templates/feedback/feedback_trigger.hbs b/web-ui/app/templates/feedback/feedback_trigger.hbs
new file mode 100644
index 00000000..7f3f8ef1
--- /dev/null
+++ b/web-ui/app/templates/feedback/feedback_trigger.hbs
@@ -0,0 +1,8 @@
+<ul id="feedback">
+ <a title="Feedback" href="#">
+ <li>
+ <div class="fa fa-exclamation-circle"></div>
+ <i class="shortcut-label"></i> Feedback
+ </li>
+ </a>
+</ul>
diff --git a/web-ui/app/templates/mail_actions/actions_box.hbs b/web-ui/app/templates/mail_actions/actions_box.hbs
new file mode 100644
index 00000000..68a8d0bf
--- /dev/null
+++ b/web-ui/app/templates/mail_actions/actions_box.hbs
@@ -0,0 +1,7 @@
+<li><input type="checkbox" id="toggle-check-all-emails"/></li>
+<li><input type="button" id="mark-selected-as-read" value="{{t 'mark-as-read'}}" disabled="disabled"/></li>
+<li><input type="button" id="mark-selected-as-unread" value="{{t 'mark-as-unread'}}" disabled="disabled"/></li>
+<li><input type="button" id="delete-selected" value="{{t 'delete'}}" disabled="disabled"/></li>
+<li><input type="button" id="archive-selected" value="{{t 'archive'}}" disabled="disabled"/></li>
+<li id="pagination-trigger" class="right"></li>
+<li id="refresh-trigger" class="right"></li>
diff --git a/web-ui/app/templates/mail_actions/compose_trigger.hbs b/web-ui/app/templates/mail_actions/compose_trigger.hbs
new file mode 100644
index 00000000..06f05fca
--- /dev/null
+++ b/web-ui/app/templates/mail_actions/compose_trigger.hbs
@@ -0,0 +1,3 @@
+<button id="compose-mails-trigger">
+ {{t 'compose' }}
+</button>
diff --git a/web-ui/app/templates/mail_actions/pagination_trigger.hbs b/web-ui/app/templates/mail_actions/pagination_trigger.hbs
new file mode 100644
index 00000000..cbd8a089
--- /dev/null
+++ b/web-ui/app/templates/mail_actions/pagination_trigger.hbs
@@ -0,0 +1,3 @@
+<span id="left-arrow"><i class="fa fa-angle-left"></i></span>
+<span id="current-page">{{ currentPage }}</span>
+<span id="right-arrow"><i class="fa fa-angle-right"></i></span>
diff --git a/web-ui/app/templates/mail_actions/refresh_trigger.hbs b/web-ui/app/templates/mail_actions/refresh_trigger.hbs
new file mode 100644
index 00000000..dffc7090
--- /dev/null
+++ b/web-ui/app/templates/mail_actions/refresh_trigger.hbs
@@ -0,0 +1,3 @@
+<div id="refresh-mails-trigger">
+ <i class="fa fa-refresh" data-label="{{t 'refresh'}}"></i>
+</div>
diff --git a/web-ui/app/templates/mail_actions/trash_actions_box.hbs b/web-ui/app/templates/mail_actions/trash_actions_box.hbs
new file mode 100644
index 00000000..4e0ec332
--- /dev/null
+++ b/web-ui/app/templates/mail_actions/trash_actions_box.hbs
@@ -0,0 +1,5 @@
+<li><input type="checkbox" id="toggle-check-all-emails"/></li>
+<li><input type="button" id="delete-selected" value="{{t 'delete-permanently'}}" disabled="disabled"/></li>
+<li><input type="button" id="recover-selected" value="{{t 'move-to-inbox'}}" disabled="disabled"/></li>
+<li id="pagination-trigger" class="right"></li>
+<li id="refresh-trigger" class="right"></li>
diff --git a/web-ui/app/templates/mails/draft.hbs b/web-ui/app/templates/mails/draft.hbs
new file mode 100644
index 00000000..808ce3ff
--- /dev/null
+++ b/web-ui/app/templates/mails/draft.hbs
@@ -0,0 +1,41 @@
+<div class="mail-list-entry__checkbox">
+ <input type="checkbox" {{#if isChecked }}checked="true"{{/if}} />
+</div>
+
+<a class="mail-list-entry__item" href="/#/{{ currentTag }}/mail/{{ ident }}">
+ <div>
+ <div class="mail-list-entry__item-from">
+ {{t 'to'}}:
+ {{#if header.to }}
+ {{ header.to }}
+ {{else}}
+ {{t 'no-recipient'}}
+ {{/if}}
+ </div> <!-- /.mail-list-entry__item-from -->
+
+ <span class="mail-list-entry__item-date">{{ formatDate header.date }}</span> <!-- /.mail-list-entry__item-date -->
+ </div>
+ <div>
+ <div class="mail-list-entry__item-subject">
+ <i class="mail-list-entry__item-subject-icon fa fa-pencil"></i>
+ {{#if header.subject }}
+ {{header.subject}}
+ {{else}}
+ {{t 'no-subject'}}
+ {{/if}}
+ </div>
+
+ {{#if attachments}}
+ <div class="mail-list-entry__item-attachment"><i class="fa fa-paperclip"></i></div>
+ {{/if}}
+ </div>
+ <ul class="mail-list-entry__item-tags">
+ {{#each tagsForListView }}
+ <li class="mail-list-entry__item-tags-tag" data-tag="{{this}}">{{ this }}</li>
+ {{/each }}
+ </ul> <!-- /.mail-list-entry__item-tags -->
+</a>
+
+
+
+
diff --git a/web-ui/app/templates/mails/full_view.hbs b/web-ui/app/templates/mails/full_view.hbs
new file mode 100644
index 00000000..40bfd4a2
--- /dev/null
+++ b/web-ui/app/templates/mails/full_view.hbs
@@ -0,0 +1,83 @@
+<button class="close-mail-button">
+ <i class="fa fa-times"></i>
+</button>
+
+<div id="fullView-{{ ident }}" class="mail-read-view {{statuses}}">
+ <header class="mail-read-view__header row">
+
+ <!-- TODO -->
+ <div class="column large-12 no-padding security-status">
+ {{#if signatureStatus}}
+ <span class="security-status__label {{ signatureStatus.cssClass }}">
+ {{t signatureStatus.label }}
+ </span>
+ {{/if}}
+ {{#if encryptionStatus}}
+ <span class="security-status__label {{ encryptionStatus.cssClass }}">
+ {{t encryptionStatus.label }}
+ </span>
+ {{/if}}
+ </div>
+
+ <div class="mail-read-view__header-recipients">
+ <span class="mail-read-view__header-recipients--highlight-sender">
+ {{#if header.from }}
+ {{ header.from }}
+ {{else}}
+ {{t 'you'}}
+ {{/if}}
+ </span>
+ <i class="fa fa-long-arrow-right"></i>
+ {{{formatRecipients header}}}
+ </div>
+
+ <div class="mail-read-view__header-date">
+ {{ formatDate header.date }}
+ </div>
+
+ <hr>
+
+ <div class="mail-read-view__header-subject">
+ <h3>{{ header.subject }}</h3>
+ </div>
+
+ <nav id="mail-actions" class="mail-read-view__header-actions"></nav>
+
+ <ul class="mail-read-view__header-tags">
+ <li class="mail-read-view__header-tags-label">
+ <i class="fa fa-tags"></i>
+ </li>
+
+ {{#each tags }}
+ <li class="mail-read-view__header-tags-tag" data-tag="{{this}}">{{ this }}</li>
+ {{/each }}
+
+ <li class="mail-read-view__header-tags-name-input">
+ <input type="text" id="new-tag-input" placeholder="{{t 'add-tag-placeholder'}}"
+ />
+ </li>
+
+ <li class="mail-read-view__header-tags-new-button">
+ <button id="new-tag-button" class="no-style"><i class="fa fa-plus"></i></button>
+ </li>
+ </ul>
+ </header>
+
+ <iframe class="mail-read-view__body" id="read-sandbox" sandbox="allow-popups allow-scripts" src="sandbox/sandbox.html" scrolling="no"></iframe>
+
+ {{#if attachments}}
+ <hr>
+
+ <div id="attachmentsArea" class="mail-read-view__attachments">
+ <p class="mail-read-view__attachments-header"><i class="fa fa-paperclip"></i> {{ attachments.length }} attachment(s):</p>
+ <ul>
+ {{#each attachments }}
+ <li class="mail-read-view__attachments-item">
+ <a class="mail-read-view__attachments-item-label" href="/attachment/{{ this.ident }}?content_type={{ this.content-type }}&encoding={{ this.encoding }}&filename={{ this.name }}">{{ this.name }} ({{ formatSize this.size}})
+ <i class="fa fa-arrow-down mail-read-view__attachments-item-download"></i></a>
+ </li>
+ {{/each }}
+ </ul>
+ </div>
+ {{/if}}
+</div>
diff --git a/web-ui/app/templates/mails/mail_actions.hbs b/web-ui/app/templates/mails/mail_actions.hbs
new file mode 100644
index 00000000..0adfe853
--- /dev/null
+++ b/web-ui/app/templates/mails/mail_actions.hbs
@@ -0,0 +1,6 @@
+<button id="reply-button-top" class="mail-read-view__header-actions-button mail-read-view__header-actions-button--reply"><i class="fa fa-reply"></i></button>
+<button id="view-more-actions" class="mail-read-view__header-actions-button mail-read-view__header-actions-button--more"><i class="fa fa-caret-down"></i></button>
+<ul id="more-actions" class="mail-read-view__header-actions-dropdown">
+ <li id="reply-all-button-top" class="mail-read-view__header-actions-dropdown-entry">{{t 'reply-to-all'}}</li>
+ <li id="delete-button-top" class="mail-read-view__header-actions-dropdown-entry">{{t 'delete-this-message'}}</li>
+</ul>
diff --git a/web-ui/app/templates/mails/sent.hbs b/web-ui/app/templates/mails/sent.hbs
new file mode 100644
index 00000000..158b20c8
--- /dev/null
+++ b/web-ui/app/templates/mails/sent.hbs
@@ -0,0 +1,36 @@
+<div class="mail-list-entry__checkbox">
+ <input type="checkbox" {{#if isChecked }}checked="true"{{/if}} />
+</div>
+<a class="mail-list-entry__item" href="/#/{{ currentTag }}/mail/{{ ident }}">
+ <div>
+ <div class="mail-list-entry__item-from">
+ {{t 'to'}}:
+ {{#if header.to }}
+ {{ header.to }}
+ {{else}}
+ {{t 'no-recipient'}}
+ {{/if}}
+ </div> <!-- /.mail-list-entry__item-from -->
+
+ <span class="mail-list-entry__item-date">{{ formatDate header.date }}</span> <!-- /.mail-list-entry__item-date -->
+ </div>
+ <div>
+ <div class="mail-list-entry__item-subject">
+ {{#if header.subject }}
+ {{header.subject}}
+ {{else}}
+ {{t 'no-subject'}}
+ {{/if}}
+ </div>
+
+ {{#if attachments}}
+ <div class="mail-list-entry__item-attachment"><i class="fa fa-paperclip"></i></div>
+ {{/if}}
+ </div>
+ <ul class="mail-list-entry__item-tags">
+ {{#each tagsForListView }}
+ <li class="mail-list-entry__item-tags-tag" data-tag="{{this}}">{{ this }}</li>
+ {{/each }}
+ </ul> <!-- /.mail-list-entry__item-tags -->
+</a>
+
diff --git a/web-ui/app/templates/mails/single.hbs b/web-ui/app/templates/mails/single.hbs
new file mode 100644
index 00000000..aaede844
--- /dev/null
+++ b/web-ui/app/templates/mails/single.hbs
@@ -0,0 +1,28 @@
+<div class="mail-list-entry__checkbox">
+ <input type="checkbox" {{#if isChecked }}checked="true"{{/if}} />
+</div>
+<a class="mail-list-entry__item" href="/#/{{ currentTag }}/mail/{{ ident }}">
+ <div>
+ <div class="mail-list-entry__item-from">
+ {{#if header.from }}
+ {{ header.from }}
+ {{else}}
+ {{t "you"}}
+ {{/if}}
+ </div> <!-- /.mail-list-entry__item-from -->
+
+ <span class="mail-list-entry__item-date">{{ formatDate header.date }}</span> <!-- /.mail-list-entry__item-date -->
+ </div>
+ <div>
+ <div class="mail-list-entry__item-subject">{{ header.subject }}</div>
+
+ {{#if attachments}}
+ <div class="mail-list-entry__item-attachment"><i class="fa fa-paperclip"></i></div>
+ {{/if}}
+ </div>
+ <ul class="mail-list-entry__item-tags">
+ {{#each tagsForListView }}
+ <li class="mail-list-entry__item-tags-tag" data-tag="{{this}}">{{ this }}</li>
+ {{/each }}
+ </ul> <!-- /.mail-list-entry__item-tags -->
+</a>
diff --git a/web-ui/app/templates/mails/trash.hbs b/web-ui/app/templates/mails/trash.hbs
new file mode 100644
index 00000000..f8947b15
--- /dev/null
+++ b/web-ui/app/templates/mails/trash.hbs
@@ -0,0 +1,32 @@
+<div class="mail-list-entry__checkbox">
+ <input type="checkbox" {{#if isChecked }}checked="true"{{/if}} />
+</div>
+<a class="mail-list-entry__item" href="/#/{{ currentTag }}/mail/{{ ident }}">
+ <div>
+ <div class="mail-list-entry__item-from">
+ {{#if header.from }}
+ {{ header.from }}
+ {{else}}
+ {{t "you"}}
+ {{/if}}
+ </div> <!-- /.mail-list-entry__item-from -->
+
+ <span class="mail-list-entry__item-date">{{ formatDate header.date }}</span> <!-- /.mail-list-entry__item-date -->
+ </div>
+ <div>
+ <div class="mail-list-entry__item-subject">
+ <i class="mail-list-entry__item-subject-icon fa fa-trash-o"></i>
+ {{ header.subject }}
+ </div>
+
+ {{#if attachments}}
+ <div class="mail-list-entry__item-attachment"><i class="fa fa-paperclip"></i></div>
+ {{/if}}
+ </div>
+ <ul class="mail-list-entry__item-tags">
+ {{#each tagsForListView }}
+ <li class="mail-list-entry__item-tags-tag" data-tag="{{this}}">{{ this }}</li>
+ {{/each }}
+ </ul> <!-- /.mail-list-entry__item-tags -->
+</a>
+
diff --git a/web-ui/app/templates/page/logout.hbs b/web-ui/app/templates/page/logout.hbs
new file mode 100644
index 00000000..0cc079bc
--- /dev/null
+++ b/web-ui/app/templates/page/logout.hbs
@@ -0,0 +1,9 @@
+<ul id="logout">
+ <form id="logout-form" method="POST" action="{{ logout_url }}">
+ <input type="hidden" name="csrftoken" value="{{ csrf_token }}" />
+ <li>
+ <div class="fa fa-sign-out"></div>
+ <i class="shortcut-label"></i> {{t 'logout'}}
+ </li>
+ </form>
+</ul>
diff --git a/web-ui/app/templates/page/logout_shortcut.hbs b/web-ui/app/templates/page/logout_shortcut.hbs
new file mode 100644
index 00000000..043ab0dc
--- /dev/null
+++ b/web-ui/app/templates/page/logout_shortcut.hbs
@@ -0,0 +1,6 @@
+<li>
+ <a class="left-off-canvas-toggle logout" >
+ <i class="fa fa-sign-out"></i>
+ <div class="shortcut-label">{{t 'logout'}}</div>
+ </a>
+</li>
diff --git a/web-ui/app/templates/page/user_settings_box.hbs b/web-ui/app/templates/page/user_settings_box.hbs
new file mode 100644
index 00000000..2152b779
--- /dev/null
+++ b/web-ui/app/templates/page/user_settings_box.hbs
@@ -0,0 +1,10 @@
+<header>
+ <span id="user-settings-close"><i class="fa fa-close"></i></span>
+ <i class="fa fa-user"></i>
+ <h1>{{t 'user-account'}}</h1>
+ <i class="shortcut-label"></i>
+</header>
+<i class="fa fa-envelope-o"></i><h2>{{t 'email-address'}}</h2>
+<p>{{ account_email }}</p>
+<i class="fa fa-key"></i><h2>{{t 'public-key-fingerprint'}}</h2>
+<p>{{ formatFingerPrint fingerprint }}</p>
diff --git a/web-ui/app/templates/page/user_settings_icon.hbs b/web-ui/app/templates/page/user_settings_icon.hbs
new file mode 100644
index 00000000..8f2f9215
--- /dev/null
+++ b/web-ui/app/templates/page/user_settings_icon.hbs
@@ -0,0 +1,8 @@
+<ul id="user-settings-icon">
+ <a title="my account" href='#'>
+ <li>
+ <div class="fa fa-user"></div>
+ <i class="shortcut-label"></i> {{t 'user-account'}}
+ </li>
+ </a>
+</ul>
diff --git a/web-ui/app/templates/page/version.hbs b/web-ui/app/templates/page/version.hbs
new file mode 100644
index 00000000..5f43f78a
--- /dev/null
+++ b/web-ui/app/templates/page/version.hbs
@@ -0,0 +1,2 @@
+{{t 'version'}}: UNKNOWN_VERSION <br/>
+<span id="version-date" data-since="COMMIT_DATE"></span>
diff --git a/web-ui/app/templates/search/search_trigger.hbs b/web-ui/app/templates/search/search_trigger.hbs
new file mode 100644
index 00000000..2261d154
--- /dev/null
+++ b/web-ui/app/templates/search/search_trigger.hbs
@@ -0,0 +1,3 @@
+<form>
+ <input type="search" placeholder="{{t 'search-placeholder'}}"></input>
+</form>
diff --git a/web-ui/app/templates/tags/shortcut.hbs b/web-ui/app/templates/tags/shortcut.hbs
new file mode 100644
index 00000000..1e82d6a9
--- /dev/null
+++ b/web-ui/app/templates/tags/shortcut.hbs
@@ -0,0 +1,9 @@
+<li class="{{ selected }}">
+ <a>
+ {{#if displayBadge }}
+ <span class="{{ badgeType }}-count">{{ count }}</span>
+ {{/if}}
+ <i class="fa fa-{{ icon }}"></i>
+ <div class="shortcut-label">{{ tagName }}</div>
+ </a>
+</li>
diff --git a/web-ui/app/templates/tags/tag.hbs b/web-ui/app/templates/tags/tag.hbs
new file mode 100644
index 00000000..ca397b9a
--- /dev/null
+++ b/web-ui/app/templates/tags/tag.hbs
@@ -0,0 +1,3 @@
+<li id="tag-{{ ident }}" class="custom-tag {{ selected }}">
+ <span class="tag-label">{{> tag_inner }}</span>
+</li>
diff --git a/web-ui/app/templates/tags/tag_inner.hbs b/web-ui/app/templates/tags/tag_inner.hbs
new file mode 100644
index 00000000..2e0958cb
--- /dev/null
+++ b/web-ui/app/templates/tags/tag_inner.hbs
@@ -0,0 +1,4 @@
+{{ tagName }}
+{{#if displayBadge }}
+<span class="{{ badgeType }}-count">{{ count }}</span>
+{{/if}}
diff --git a/web-ui/app/templates/tags/tag_list.hbs b/web-ui/app/templates/tags/tag_list.hbs
new file mode 100644
index 00000000..92a73283
--- /dev/null
+++ b/web-ui/app/templates/tags/tag_list.hbs
@@ -0,0 +1,6 @@
+<ul id="default-tag-list"></ul>
+<div class="tags-icon side-nav-toggle">
+ <i class="fa fa-tags"></i>
+ <span class="tag-label">{{t 'tags.tags'}}</span>
+</div>
+<ul id="custom-tag-list"></ul>
diff --git a/web-ui/app/templates/user_alerts/message.hbs b/web-ui/app/templates/user_alerts/message.hbs
new file mode 100644
index 00000000..abba1f91
--- /dev/null
+++ b/web-ui/app/templates/user_alerts/message.hbs
@@ -0,0 +1 @@
+<span class="message-panel__growl {{ message.class }}">{{ message.content }}</span>