sms.ejs 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <% include ./sub_menu.ejs %>
  2. <div class="panel-content" id="app">
  3. <div class="panel-title">
  4. <div class="title-main">
  5. <h2>短信通知</h2>
  6. </div>
  7. </div>
  8. <div class="content-wrap">
  9. <div class="c-body">
  10. <div class="sjs-height-0">
  11. <div class="row m-0">
  12. <div class="col-5 my-3">
  13. <% if (accountData.auth_mobile !== '') { %>
  14. <!--已绑定手机-->
  15. <div class="form-group">
  16. <label>已认证手机(用于 找回密码、接收通知)</label>
  17. <div class="input-group mb-3">
  18. <input class="form-control form-control-sm" readonly="" value="<%= accountData.auth_mobile %>">
  19. <div class="input-group-append">
  20. <button class="btn btn-outline-secondary btn-sm" id="change-mobile">修改手机</button>
  21. </div>
  22. </div>
  23. </div>
  24. <% } %>
  25. <!--绑定手机-->
  26. <form id="mobile-form" <% if (accountData.auth_mobile !== '') { %>style="display: none" <% } %>>
  27. <div class="form-group">
  28. <label>认证手机(用于 找回密码、接收通知)</label>
  29. <div class="input-group mb-3">
  30. <input class="form-control form-control-sm" placeholder="输入11位手机号码" value="" name="auth_mobile" maxlength="11"/>
  31. <div class="input-group-append">
  32. <button class="btn btn-outline-secondary btn-sm" type="button" id="get-code">获取验证码</button>
  33. </div>
  34. </div>
  35. </div>
  36. <div class="form-group">
  37. <div class="input-group mb-3">
  38. <input class="form-control form-control-sm" type="text" readonly="readonly" name="code" placeholder="输入短信中的6位验证码" />
  39. <input type="hidden" name="_csrf" value="<%= ctx.csrf %>">
  40. </div>
  41. </div>
  42. <button type="button" class="btn btn-secondary btn-sm disabled" id="bind-btn">确认绑定</button>
  43. </form>
  44. <% if (accountData.auth_mobile !== '') { %>
  45. <!--短信通知开关(已有认证手机后显示)-->
  46. <div class="mt-5">
  47. <h4>通知类型</h4>
  48. <p class="text-muted">勾选您需要接收的短信类型。</p>
  49. <form id="sms-form" method="post" action="/profile/sms/type">
  50. <input type="hidden" name="_csrf" value="<%= ctx.csrf %>">
  51. <% const user_smsType = accountData.sms_type !== '' ? JSON.parse(accountData.sms_type) : null; %>
  52. <% for (const s in smsType) { %>
  53. <div class="form-group row">
  54. <label class="col-auto col-form-label"><%= smsType[s].name %><a href="#sms-view" data-toggle="modal" data-target="#sms-view" class="ml-2"><i class="fa fa-info-circle"></i></a></label>
  55. <div class="col-5">
  56. <% for (const c of smsType[s].children) { %>
  57. <div class="form-check ">
  58. <input class="form-check-input" type="checkbox" name="<%= s %>[]" value="<%= c.value %>" <% if (user_smsType !== null && user_smsType[s] !== undefined && user_smsType[s].indexOf(c.value.toString()) !== -1) { %>checked<% } %>>
  59. <label class="form-check-label" for="<%= s %>"><%= c.title %></label>
  60. </div>
  61. <% } %>
  62. </div>
  63. </div>
  64. <% } %>
  65. <button type="submit" class="btn btn-primary btn-sm">确认修改</button>
  66. </form>
  67. </div>
  68. <% } %>
  69. </div>
  70. </div>
  71. </div>
  72. </div>
  73. </div>
  74. </div>
  75. <script type="text/javascript">
  76. const csrf = '<%= ctx.csrf %>';
  77. </script>
  78. <script type="text/javascript" src="/public/js/profile.js"></script>