<div class="modal-header"> <button type="button" class="close" ng-click="close()" aria-label="Close"><span aria-hidden="true">×</span></button> <h4 class="modal-title"> <i class="fa fa-key"></i> Two-step Login <small>authenticator app</small> </h4> </div> <form name="authTwoStepForm" ng-submit="authTwoStepForm.$valid && auth(authModel)" api-form="authPromise" ng-if="!model"> <div class="modal-body"> <p>Enter your master password to modify two-step login settings.</p> <div class="callout callout-danger validation-errors" ng-show="authTwoStepForm.$errors"> <h4>Errors have occurred</h4> <ul> <li ng-repeat="e in authTwoStepForm.$errors">{{e}}</li> </ul> </div> <div class="form-group" show-errors> <label for="masterPassword">Master Password</label> <input type="password" id="masterPassword" name="MasterPasswordHash" ng-model="authModel.masterPassword" class="form-control" required api-field /> </div> </div> <div class="modal-footer"> <button type="submit" class="btn btn-primary btn-flat" ng-disabled="authTwoStepForm.$loading"> <i class="fa fa-refresh fa-spin loading-icon" ng-show="authTwoStepForm.$loading"></i>Continue </button> <button type="button" class="btn btn-default btn-flat" ng-click="close()">Close</button> </div> </form> <form name="submitTwoStepForm" ng-submit="submitTwoStepForm.$valid && submit(updateModel)" api-form="submitPromise" ng-if="model" autocomplete="off"> <div class="modal-body"> <div ng-if="enabled"> <div class="callout callout-success"> <h4><i class="fa fa-check-circle"></i> Enabled</h4> <p> Two-step login via authenticator app is enabled on your account. </p> <p> In case you need to add it to another device, below is the QR code (or key) required by your authenticator app. </p> </div> <p>Need a two-step authenticator app? Download one of the following:</p> </div> <div ng-if="!enabled"> <p>Setting up two-step login with an authenticator app is easy, just follow these steps:</p> <h4>1. Download a two-step authenticator app</h4> </div> <ul class="fa-ul"> <li> <i class="fa-li fa fa-apple fa-lg"></i> iOS devices: <a href="https://itunes.apple.com/us/app/authy/id494168017?mt=8" target="_blank"> Authy for iOS </a> </li> <li> <i class="fa-li fa fa-android fa-lg"></i> Android devices: <a href="https://play.google.com/store/apps/details?id=com.authy.authy" target="_blank"> Authy for Android </a> </li> <li> <i class="fa-li fa fa-windows fa-lg"></i> Windows devices: <a href="https://www.microsoft.com/en-us/store/apps/authenticator/9wzdncrfj3rj" target="_blank"> Microsoft Authenticator </a> </li> </ul> <p>These apps are recommended, however, other authenticator apps will also work.</p> <hr ng-if="enabled" /> <h4 ng-if="!enabled" style="margin-top: 30px;">2. Scan this QR code with your authenticator app</h4> <div class="row"> <div class="col-sm-4 text-center"> <p><img ng-src="{{model.qr}}" alt="QR" /></p> </div> <div class="col-sm-8"> <p> <strong>Can't scan the code?</strong> You can add the code to your application manually using the following details: </p> <ul class="list-unstyled"> <li><strong>Key:</strong> <code>{{model.key}}</code></li> <li><strong>Account:</strong> {{account}}</li> <li><strong>Time based:</strong> Yes</li> </ul> </div> </div> <div ng-if="!enabled"> <h4 style="margin-top: 30px;"> 3. Enter the resulting 6 digit verification code from the app </h4> <div class="callout callout-danger validation-errors" ng-show="submitTwoStepForm.$errors"> <h4>Errors have occurred</h4> <ul> <li ng-repeat="e in submitTwoStepForm.$errors">{{e}}</li> </ul> </div> <div class="form-group" show-errors> <label for="token" class="sr-only">Verification Code</label> <input type="text" id="token" name="Token" placeholder="Verification Code" ng-model="updateModel.token" class="form-control" required api-field /> </div> </div> </div> <div class="modal-footer"> <button type="submit" class="btn btn-primary btn-flat" ng-disabled="submitTwoStepForm.$loading"> <i class="fa fa-refresh fa-spin loading-icon" ng-show="submitTwoStepForm.$loading"></i> {{enabled ? 'Disable' : 'Enable'}} </button> <button type="button" class="btn btn-default btn-flat" ng-click="close()">Close</button> </div> </form>