sms.ejs 4.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  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 %>
  55. <!--<a href="#sms-view" data-toggle="modal" data-target="#sms-view" class="ml-2"><i class="fa fa-info-circle"></i></a>-->
  56. </label>
  57. <div class="col-5">
  58. <% for (const c of smsType[s].children) { %>
  59. <div class="form-check ">
  60. <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<% } %>>
  61. <label class="form-check-label" for="<%= s %>"><%= c.title %></label>
  62. </div>
  63. <% } %>
  64. </div>
  65. </div>
  66. <% } %>
  67. <button type="submit" class="btn btn-primary btn-sm">确认修改</button>
  68. </form>
  69. </div>
  70. <% } %>
  71. </div>
  72. </div>
  73. </div>
  74. </div>
  75. </div>
  76. </div>
  77. <script type="text/javascript">
  78. const csrf = '<%= ctx.csrf %>';
  79. </script>
  80. <script type="text/javascript" src="/public/js/profile.js"></script>