mirror of
https://github.com/the-djmaze/snappymail.git
synced 2026-09-05 23:47:03 +03:00
OpenPGP (#53) Beta
Archive (Closes #110) Delete, Spam and Archive button in mail view when preview pane is off (Closes #72) Small fixes (Closes #101)
This commit is contained in:
parent
ab817e1396
commit
cae0cc2f77
45 changed files with 1390 additions and 172 deletions
|
|
@ -21,14 +21,17 @@
|
|||
</ul>
|
||||
</div>
|
||||
<div class="btn-group"> </div>
|
||||
<div class="btn-group btn-group-custom-margin">
|
||||
<a class="btn buttonDelete" data-placement="bottom" data-bind="command: deleteCommand, tooltip: 'MESSAGE_LIST/BUTTON_DELETE'">
|
||||
<i class="icon-trash"></i>
|
||||
<span data-bind="text: 1 < messageListCheckedOrSelectedUidsWithSubMails().length ? ' (' + messageListCheckedOrSelectedUidsWithSubMails().length + ')' : ''"></span>
|
||||
<div class="btn-group">
|
||||
<a class="btn btn-dark-disabled-border button-archive" data-placement="bottom" data-bind="visible: !isArchiveFolder() && !isArchiveDisabled(), command: archiveCommand, tooltip: 'MESSAGE_LIST/BUTTON_ARCHIVE'">
|
||||
<i class="icon-archive"></i>
|
||||
</a>
|
||||
<a class="btn buttonSpam" data-placement="bottom" data-bind="visible: !isSpamFolder() && !isSpamDisabled(), command: spamCommand, tooltip: 'MESSAGE_LIST/BUTTON_SPAM'">
|
||||
<a class="btn btn-dark-disabled-border button-spam" data-placement="bottom" data-bind="visible: !isSpamFolder() && !isSpamDisabled(), command: spamCommand, tooltip: 'MESSAGE_LIST/BUTTON_SPAM'">
|
||||
<i class="icon-bug"></i>
|
||||
</a>
|
||||
<a class="btn btn-dark-disabled-border button-delete" data-placement="bottom" data-bind="command: deleteCommand, tooltip: 'MESSAGE_LIST/BUTTON_DELETE'">
|
||||
<i class="icon-trash"></i>
|
||||
<span data-bind="text: printableMessageCountForDeletion()"></span>
|
||||
</a>
|
||||
</div>
|
||||
<div class="btn-group"> </div>
|
||||
<div class="btn-group">
|
||||
|
|
|
|||
|
|
@ -14,24 +14,27 @@
|
|||
</a>
|
||||
</div>
|
||||
<div class="btn-group" data-bind="visible: !isDraftFolder()">
|
||||
<a class="btn buttonReply" data-placement="bottom" data-bind="command: replyCommand, tooltip: 'MESSAGE/BUTTON_REPLY'">
|
||||
<a class="btn btn-dark-disabled-border buttonReply" data-placement="bottom" data-bind="command: replyCommand, tooltip: 'MESSAGE/BUTTON_REPLY'">
|
||||
<i class="icon-reply"></i>
|
||||
</a>
|
||||
<a class="btn buttonReplyAll" data-placement="bottom" data-bind="command: replyAllCommand, tooltip: 'MESSAGE/BUTTON_REPLY_ALL'">
|
||||
<a class="btn btn-dark-disabled-border buttonReplyAll" data-placement="bottom" data-bind="command: replyAllCommand, tooltip: 'MESSAGE/BUTTON_REPLY_ALL'">
|
||||
<i class="icon-reply-all"></i>
|
||||
</a>
|
||||
<a class="btn buttonForward" data-placement="bottom" data-bind=" command: forwardCommand, tooltip: 'MESSAGE/BUTTON_FORWARD'">
|
||||
<a class="btn btn-dark-disabled-border buttonForward" data-placement="bottom" data-bind=" command: forwardCommand, tooltip: 'MESSAGE/BUTTON_FORWARD'">
|
||||
<i class="icon-forward"></i>
|
||||
</a>
|
||||
</div>
|
||||
<div class="btn-group"> </div>
|
||||
<div class="btn-group btn-group-custom-margin">
|
||||
<a class="btn btn-danger buttonDelete" data-placement="bottom" data-bind="command: deleteCommand, tooltip: 'MESSAGE/BUTTON_DELETE'">
|
||||
<i class="icon-trash icon-white"></i>
|
||||
<div class="btn-group">
|
||||
<a class="btn btn-dark-disabled-border button-archive" data-placement="bottom" data-bind="visible: !isArchiveFolder() && !isArchiveDisabled(), command: archiveCommand, tooltip: 'MESSAGE/BUTTON_ARCHIVE'">
|
||||
<i class="icon-archive"></i>
|
||||
</a>
|
||||
<a class="btn buttonSpam" data-placement="bottom" data-bind="visible: !isDraftFolder(), command: spamCommand, tooltip: 'MESSAGE/BUTTON_SPAM'">
|
||||
<a class="btn btn-dark-disabled-border button-spam" data-placement="bottom" data-bind="visible: !isDraftFolder() && !isSpamFolder() && !isSpamDisabled(), command: spamCommand, tooltip: 'MESSAGE/BUTTON_SPAM'">
|
||||
<i class="icon-bug"></i>
|
||||
</a>
|
||||
<a class="btn btn-dark-disabled-border button-delete" data-placement="bottom" data-bind="command: deleteCommand, tooltip: 'MESSAGE/BUTTON_DELETE'">
|
||||
<i class="icon-trash"></i>
|
||||
</a>
|
||||
</div>
|
||||
<div class="btn-group"> </div>
|
||||
<div class="btn-group">
|
||||
|
|
@ -201,15 +204,14 @@
|
|||
<div class="pgpSigned" data-bind="visible: message() && message().isPgpSigned() && isPgpActionVisible(), click: function() { verifyPgpSignedClearMessage(message()); }">
|
||||
<i class="icon-lock"></i>
|
||||
|
||||
OpenPGP signed message (click to verify)
|
||||
<span class="i18n" data-i18n-text="MESSAGE/PGP_SIGNED_MESSAGE_DESC"></span>
|
||||
</div>
|
||||
<div class="pgpEncrypted" data-bind="visible: message() && message().isPgpEncrypted()">
|
||||
<div class="pgpEncrypted" data-bind="visible: message() && message().isPgpEncrypted() && isPgpActionVisible()">
|
||||
<i class="icon-lock"></i>
|
||||
|
||||
<span data-bind="click: function() { decryptPgpEncryptedMessage(message()); }">
|
||||
OpenPGP encrypted message (click to decrypt)
|
||||
</span>
|
||||
<input type="password" />
|
||||
<span class="i18n" data-i18n-text="MESSAGE/PGP_ENCRYPTED_MESSAGE_DESC" data-bind="click: function() { decryptPgpEncryptedMessage(message()); }"></span>
|
||||
|
||||
<input type="password" class="i18n span3 inputPgpPassword" style="margin-bottom: 0" data-i18n-placeholder="MESSAGE/PGP_PASSWORD_INPUT_PLACEHOLDER" data-bind="value: viewPgpPassword" />
|
||||
</div>
|
||||
<div class="attachmentsPlace" data-bind="visible: message() && message().hasVisibleAttachments()">
|
||||
<ul class="attachmentList" data-bind="foreach: message() ? message().attachments() : []">
|
||||
|
|
|
|||
|
|
@ -14,16 +14,18 @@
|
|||
</div>
|
||||
<br />
|
||||
<div class="control-group">
|
||||
<label data-bind="click: function () { sign(!sign()); }">
|
||||
<i data-bind="css: sign() ? 'icon-checkbox-checked' : 'icon-checkbox-unchecked'"></i>
|
||||
|
||||
<span class="i18n" data-i18n-text="POPUPS_COMPOSE_OPEN_PGP/LABEL_SIGN"></span>
|
||||
</label>
|
||||
<label data-bind="click: function () { encrypt(!encrypt()); }">
|
||||
<i data-bind="css: encrypt() ? 'icon-checkbox-checked' : 'icon-checkbox-unchecked'"></i>
|
||||
|
||||
<span class="i18n" data-i18n-text="POPUPS_COMPOSE_OPEN_PGP/LABEL_ENCRYPT"></span>
|
||||
</label>
|
||||
<div class="controls">
|
||||
<label data-bind="click: function () { sign(!sign()); }">
|
||||
<i data-bind="css: sign() ? 'icon-checkbox-checked' : 'icon-checkbox-unchecked'"></i>
|
||||
|
||||
<span class="i18n" data-i18n-text="POPUPS_COMPOSE_OPEN_PGP/LABEL_SIGN"></span>
|
||||
</label>
|
||||
<label data-bind="click: function () { encrypt(!encrypt()); }">
|
||||
<i data-bind="css: encrypt() ? 'icon-checkbox-checked' : 'icon-checkbox-unchecked'"></i>
|
||||
|
||||
<span class="i18n" data-i18n-text="POPUPS_COMPOSE_OPEN_PGP/LABEL_ENCRYPT"></span>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group">
|
||||
<label class="i18n control-label" data-i18n-text="POPUPS_COMPOSE_OPEN_PGP/LABEL_PASSWORD"></label>
|
||||
|
|
@ -38,7 +40,9 @@
|
|||
<a class="btn buttonDo" data-bind="command: doCommand">
|
||||
<i data-bind="css: {'icon-key': !submitRequest(), 'icon-spinner animated': submitRequest()}"></i>
|
||||
|
||||
<span class="i18n" data-i18n-text="POPUPS_COMPOSE_OPEN_PGP/BUTTON_DO"></span>
|
||||
<span class="i18n" data-bind="visible: sign() && !encrypt()" data-i18n-text="POPUPS_COMPOSE_OPEN_PGP/BUTTON_SIGN"></span>
|
||||
<span class="i18n" data-bind="visible: !sign() && encrypt()" data-i18n-text="POPUPS_COMPOSE_OPEN_PGP/BUTTON_ENCRYPT"></span>
|
||||
<span class="i18n" data-bind="visible: (sign() && encrypt()) || (!sign() && !encrypt())" data-i18n-text="POPUPS_COMPOSE_OPEN_PGP/BUTTON_SIGN_AND_ENCRYPT"></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -34,8 +34,8 @@
|
|||
</div>
|
||||
|
||||
<div class="btn-group">
|
||||
<a class="btn btn-danger button-delete" data-bind="command: deleteCommand">
|
||||
<i class="icon-trash icon-white"></i>
|
||||
<a class="btn button-delete" data-bind="command: deleteCommand">
|
||||
<i class="icon-trash"></i>
|
||||
<span data-bind="text: 1 < contactsCheckedOrSelected().length ? ' (' + contactsCheckedOrSelected().length + ')' : ''"></span>
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -48,6 +48,15 @@
|
|||
optionsText: 'name', optionsValue: 'id', optionsAfterRender: $root.defautOptionsAfterRender"></select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="control-group">
|
||||
<label class="control-label">
|
||||
<span class="i18n" data-i18n-text="POPUPS_SYSTEM_FOLDERS/LABEL_ARCHIVE"></span>
|
||||
</label>
|
||||
<div class="controls">
|
||||
<select data-bind="options: folderSelectList, value: archiveFolder,
|
||||
optionsText: 'name', optionsValue: 'id', optionsAfterRender: $root.defautOptionsAfterRender"></select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue