tfa_modals.php 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. <div class="modal fade" id="YubiOTPModal" tabindex="-1" role="dialog" aria-labelledby="YubiOTPModalLabel">
  2. <div class="modal-dialog" role="document">
  3. <div class="modal-content">
  4. <div class="modal-header"><b><?=$lang['tfa']['yubi_otp'];?></b></div>
  5. <div class="modal-body">
  6. <form role="form" method="post">
  7. <div class="form-group">
  8. <input type="password" class="form-control" name="confirm_password" id="confirm_password" placeholder="<?=$lang['user']['password_now'];?>" autocomplete="off" required>
  9. </div>
  10. <div class="form-group">
  11. <div class="input-group">
  12. <span class="input-group-addon" id="yubi-addon"><img alt="Yubicon Icon" src="/img/yubi.ico"></span>
  13. <input type="text" name="otp_token" class="form-control" placeholder="Touch Yubikey" aria-describedby="yubi-addon">
  14. <input type="hidden" name="tfa_method" value="yubi_otp">
  15. </div>
  16. </div>
  17. <button class="btn btn-sm btn-default" type="submit" name="set_tfa"><?=$lang['user']['save_changes'];?></button>
  18. </form>
  19. </div>
  20. </div>
  21. </div>
  22. </div>
  23. <div class="modal fade" id="U2FModal" tabindex="-1" role="dialog" aria-labelledby="U2FModalLabel">
  24. <div class="modal-dialog" role="document">
  25. <div class="modal-content">
  26. <div class="modal-header"><b><?=$lang['tfa']['u2f'];?></b></div>
  27. <div class="modal-body">
  28. <form role="form" method="post" id="u2f_reg_form">
  29. <div class="form-group">
  30. <input type="password" class="form-control" name="confirm_password" id="confirm_password" placeholder="<?=$lang['user']['password_now'];?>" autocomplete="off" required>
  31. </div>
  32. <p>Please enter your current password and use your U2F USB stick to confirm your identity.</p>
  33. <div class="alert alert-danger" style="display:none" id="u2f_return_code"></div>
  34. <input type="hidden" name="token" id="u2f_register_data"/>
  35. <input type="hidden" name="tfa_method" value="u2f">
  36. <input type="hidden" name="set_tfa"/><br/>
  37. </form>
  38. </div>
  39. </div>
  40. </div>
  41. </div>
  42. <div class="modal fade" id="DisableTFAModal" tabindex="-1" role="dialog" aria-labelledby="DisableTFAModalLabel">
  43. <div class="modal-dialog" role="document">
  44. <div class="modal-content">
  45. <div class="modal-header"><b><?=$lang['tfa']['delete_tfa'];?></b></div>
  46. <div class="modal-body">
  47. <form role="form" method="post">
  48. <div class="input-group">
  49. <input type="password" class="form-control" name="confirm_password" id="confirm_password" placeholder="<?=$lang['user']['password_now'];?>" autocomplete="off" required>
  50. <span class="input-group-btn">
  51. <input type="hidden" name="tfa_method" value="none">
  52. <button class="btn btn-danger" type="submit" name="set_tfa"><?=$lang['tfa']['delete_tfa'];?></button>
  53. </span>
  54. </div>
  55. </form>
  56. </div>
  57. </div>
  58. </div>
  59. </div>
  60. <?php
  61. if (isset($_SESSION['pending_tfa_method'])):
  62. $tfa_method = $_SESSION['pending_tfa_method'];
  63. ?>
  64. <div class="modal fade" id="ConfirmTFAModal" tabindex="-1" role="dialog" aria-labelledby="ConfirmTFAModalLabel">
  65. <div class="modal-dialog" role="document">
  66. <div class="modal-content">
  67. <div class="modal-header"><button type="button" class="close" data-dismiss="modal">&times;</button><b><?=$lang['tfa'][$tfa_method];?></b></div>
  68. <div class="modal-body">
  69. <?php
  70. switch ($tfa_method) {
  71. case "yubi_otp":
  72. ?>
  73. <form role="form" method="post">
  74. <div class="form-group">
  75. <div class="input-group">
  76. <span class="input-group-addon" id="yubi-addon"><img alt="Yubicon Icon" src="/img/yubi.ico"></span>
  77. <input type="text" name="token" id="token" class="form-control" placeholder="Touch Yubikey" aria-describedby="yubi-addon">
  78. <input type="hidden" name="tfa_method" value="yubi_otp">
  79. </div>
  80. </div>
  81. <button class="btn btn-sm btn-default" type="submit" name="verify_tfa_login"><?=$lang['login']['login'];?></button>
  82. </form>
  83. <?php
  84. break;
  85. case "u2f":
  86. ?>
  87. <form role="form" method="post" id="u2f_auth_form">
  88. <p>Please use your U2F USB stick to confirm your identity now.</p>
  89. <div class="alert alert-danger" style="display:none" id="u2f_return_code"></div>
  90. <input type="hidden" name="token" id="u2f_auth_data"/>
  91. <input type="hidden" name="tfa_method" value="u2f">
  92. <input type="hidden" name="verify_tfa_login"/><br/>
  93. </form>
  94. <?php
  95. break;
  96. case "totp":
  97. ?>
  98. <div class="empty"></div>
  99. <?php
  100. break;
  101. case "hotp":
  102. ?>
  103. <div class="empty"></div>
  104. <?php
  105. break;
  106. }
  107. ?>
  108. </div>
  109. </div>
  110. </div>
  111. </div>
  112. <?php
  113. endif;
  114. ?>