tfa_modals.php 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  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. <hr>
  33. <p><?=$lang['tfa']['waiting_usb_register'];?></p>
  34. <div class="alert alert-danger" style="display:none" id="u2f_return_code"></div>
  35. <input type="hidden" name="token" id="u2f_register_data"/>
  36. <input type="hidden" name="tfa_method" value="u2f">
  37. <input type="hidden" name="set_tfa"/><br/>
  38. </form>
  39. </div>
  40. </div>
  41. </div>
  42. </div>
  43. <div class="modal fade" id="DisableTFAModal" tabindex="-1" role="dialog" aria-labelledby="DisableTFAModalLabel">
  44. <div class="modal-dialog" role="document">
  45. <div class="modal-content">
  46. <div class="modal-header"><b><?=$lang['tfa']['delete_tfa'];?></b></div>
  47. <div class="modal-body">
  48. <form role="form" method="post">
  49. <div class="input-group">
  50. <input type="password" class="form-control" name="confirm_password" id="confirm_password" placeholder="<?=$lang['user']['password_now'];?>" autocomplete="off" required>
  51. <span class="input-group-btn">
  52. <input type="hidden" name="tfa_method" value="none">
  53. <button class="btn btn-danger" type="submit" name="set_tfa"><?=$lang['tfa']['delete_tfa'];?></button>
  54. </span>
  55. </div>
  56. </form>
  57. </div>
  58. </div>
  59. </div>
  60. </div>
  61. <?php
  62. if (isset($_SESSION['pending_tfa_method'])):
  63. $tfa_method = $_SESSION['pending_tfa_method'];
  64. ?>
  65. <div class="modal fade" id="ConfirmTFAModal" tabindex="-1" role="dialog" aria-labelledby="ConfirmTFAModalLabel">
  66. <div class="modal-dialog" role="document">
  67. <div class="modal-content">
  68. <div class="modal-header"><button type="button" class="close" data-dismiss="modal">&times;</button><b><?=$lang['tfa'][$tfa_method];?></b></div>
  69. <div class="modal-body">
  70. <?php
  71. switch ($tfa_method) {
  72. case "yubi_otp":
  73. ?>
  74. <form role="form" method="post">
  75. <div class="form-group">
  76. <div class="input-group">
  77. <span class="input-group-addon" id="yubi-addon"><img alt="Yubicon Icon" src="/img/yubi.ico"></span>
  78. <input type="text" name="token" id="token" class="form-control" placeholder="Touch Yubikey" aria-describedby="yubi-addon">
  79. <input type="hidden" name="tfa_method" value="yubi_otp">
  80. </div>
  81. </div>
  82. <button class="btn btn-sm btn-default" type="submit" name="verify_tfa_login"><?=$lang['login']['login'];?></button>
  83. </form>
  84. <?php
  85. break;
  86. case "u2f":
  87. ?>
  88. <form role="form" method="post" id="u2f_auth_form">
  89. <p><?=$lang['tfa']['waiting_usb_auth'];?></p>
  90. <div class="alert alert-danger" style="display:none" id="u2f_return_code"></div>
  91. <input type="hidden" name="token" id="u2f_auth_data"/>
  92. <input type="hidden" name="tfa_method" value="u2f">
  93. <input type="hidden" name="verify_tfa_login"/><br/>
  94. </form>
  95. <?php
  96. break;
  97. case "totp":
  98. ?>
  99. <div class="empty"></div>
  100. <?php
  101. break;
  102. case "hotp":
  103. ?>
  104. <div class="empty"></div>
  105. <?php
  106. break;
  107. }
  108. ?>
  109. </div>
  110. </div>
  111. </div>
  112. </div>
  113. <?php
  114. endif;
  115. ?>