From 36f27301ea4c42b35b1bb8362affcce00a4016a6 Mon Sep 17 00:00:00 2001 From: Mo Bitar Date: Sun, 29 Apr 2018 12:43:29 -0500 Subject: [PATCH] Forgot passcode lock option --- .../javascripts/app/controllers/lockScreen.js | 17 ++++++++++++++++- app/assets/stylesheets/app/_lock-screen.scss | 7 +++++++ app/assets/templates/lock-screen.html.haml | 9 +++++++++ 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/app/assets/javascripts/app/controllers/lockScreen.js b/app/assets/javascripts/app/controllers/lockScreen.js index b04c77c21..d3e8ad1e7 100644 --- a/app/assets/javascripts/app/controllers/lockScreen.js +++ b/app/assets/javascripts/app/controllers/lockScreen.js @@ -8,7 +8,7 @@ class LockScreen { }; } - controller($scope, passcodeManager) { + controller($scope, passcodeManager, authManager, syncManager) { 'ngInject'; $scope.formData = {}; @@ -23,6 +23,21 @@ class LockScreen { $scope.onSuccess()(); }) } + + $scope.forgotPasscode = function() { + $scope.formData.showRecovery = true; + } + + $scope.beginDeleteData = function() { + if(!confirm("Are you sure you want to clear all local data?")) { + return; + } + + authManager.signOut(); + syncManager.destroyLocalData(function(){ + window.location.reload(); + }) + } } } diff --git a/app/assets/stylesheets/app/_lock-screen.scss b/app/assets/stylesheets/app/_lock-screen.scss index 5b0fe4ba9..e12f4239b 100644 --- a/app/assets/stylesheets/app/_lock-screen.scss +++ b/app/assets/stylesheets/app/_lock-screen.scss @@ -31,4 +31,11 @@ justify-content: center; } } + + #passcode-reset { + margin-top: 18px; + text-align: center; + width: 100%; + font-size: 13px; + } } diff --git a/app/assets/templates/lock-screen.html.haml b/app/assets/templates/lock-screen.html.haml index 08c2b4472..e79559517 100644 --- a/app/assets/templates/lock-screen.html.haml +++ b/app/assets/templates/lock-screen.html.haml @@ -12,3 +12,12 @@ .button-group.stretch.panel-row.form-submit %button.button.info{"type" => "submit"} .label Unlock + + #passcode-reset + %a.default{"ng-if" => "!formData.showRecovery", "ng-click" => "forgotPasscode()"} Forgot Passcode? + + %div{"ng-if" => "formData.showRecovery"} + %p + If you forgot your local passcode, your only option is to clear all your local data from this device + and sign back in to your account. + %a.danger{"ng-click" => "beginDeleteData()"} Delete Local Data