Files
standardnotes-app-web/app/assets/templates/directives/password-wizard.html.haml
2018-05-27 11:04:14 -05:00

100 lines
5.1 KiB
Plaintext

#password-wizard.modal.small.auto-height
.content
.sn-component
.panel
.header
%h1.title {{title}}
%a.close-button{"ng-click" => "dismiss()"} Close
.content
%div{"ng-if" => "step == 0"}
%div{"ng-if" => "changePassword"}
%h2.title.panel-row Change your password
%p Because your encryption key is based on your password, changing your password requires your data to be re-encrypted using your new key.
%p This process will guide you through changing your password.
%p If you have many items, re-uploading your data can take several minutes. You must keep the application window open during this process.
%div{"ng-if" => "securityUpdate"}
%h2.title.panel-row Perform security update
%p
A new update is available for your account. Updates address improvements and enhancements to our security specification.
This process will guide you through the update, and perform the steps necessary with your supervision.
%p
For more information about security updates, please visit
%a{"href" => "https://standardnotes.org/help/security", "target" => "_blank"} standardnotes.org/help/security.
%p.panel-row
.info Press Continue to proceed.
.panel-row
.panel-row
.panel-section{"ng-if" => "step > 0"}
%h3.title.panel-row Step {{step}} — {{titleForStep(step)}}
%div{"ng-if" => "step == 1"}
%p.panel-row
As a result of this process, the entirety of your data will be re-encrypted and re-uploaded to your account. This is a generally safe process,
but unforeseen factors like poor network connectivity or a sudden shutdown of your computer may cause this process to fail.
It's best to be on the safe side before large operations like this.
.panel-row
.panel-row
.button-group
.button.info{"ng-click" => "downloadBackup(true)"}
.label Download Encrypted Backup
.button.info{"ng-click" => "downloadBackup(false)"}
.label Download Decrypted Backup
%div{"ng-if" => "step == 2"}
%p.panel-row
As a result of this process, your encryption keys will change.
Any devices on which you use Standard Notes will need to end their session. After this process completes, you will be asked to sign back in.
%p.bold.panel-row.info-i Please sign out of all applications (excluding this one), including:
%ul
%li Desktop
%li Web (Chrome, Firefox, Safari)
%li Mobile (iOS and Android)
%p.panel-row Press Continue only when you have completed signing out of all your devices.
%div{"ng-if" => "step == 3"}
%div{"ng-if" => "changePassword"}
%div{"ng-if" => "securityUpdate"}
%p.panel-row Enter your current password. We'll run this through our encryption scheme to generate strong new encryption keys.
.panel-row
.panel-row
.panel-column.stretch
%form
%input.form-control{:type => 'password', "ng-model" => "formData.currentPassword", "placeholder" => "Current Password", "sn-autofocus" => "true", "should-focus" => "true"}
%input.form-control{"ng-if" => "changePassword", :type => 'password', "ng-model" => "formData.newPassword", "placeholder" => "New Password"}
%input.form-control{"ng-if" => "changePassword", :type => 'password', "ng-model" => "formData.newPasswordConfirmation", "placeholder" => "Confirm New Password"}
%div{"ng-if" => "step == 4"}
%p.panel-row
Your data is being re-encrypted with your new keys and synced to your account.
%p.panel-row.danger
Do not close this window until this process completes.
%p.panel-row
.spinner.small.inline.info.mr-5{"ng-if" => "formData.processing"}
.inline.bold{"ng-class" => "{'info' : !formData.statusError, 'error' : formData.statusError}"}
{{formData.status}}
%div{"ng-if" => "step == 5"}
%div{"ng-if" => "changePassword"}
%p.panel-row Your password has been successfully changed.
%div{"ng-if" => "securityUpdate"}
%p.panel-row
The security update has been successfully applied to your account.
Please ensure you are running the latest version of Standard Notes on all platforms to ensure maximum compatibility.
%p.panel-row You may now sign back in on all your devices and close this window.
.footer
.empty
%a.right{"ng-click" => "continue()", "ng-class" => "{'disabled' : lockContinue}"}
.spinner.small.inline.info.mr-5{"ng-if" => "showSpinner"}
{{continueTitle}}