edit.tpl 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296
  1. {include file='admin/header.tpl'}
  2. <div class="page-wrapper">
  3. <div class="container-xl">
  4. <div class="page-header d-print-none text-white">
  5. <div class="row align-items-center">
  6. <div class="col">
  7. <h2 class="page-title">
  8. <span class="home-title">用户 #{$edit_user->id}</span>
  9. </h2>
  10. <div class="page-pretitle my-3">
  11. <span class="home-subtitle">用户编辑</span>
  12. </div>
  13. </div>
  14. <div class="col-auto">
  15. <div class="btn-list">
  16. <a id="save_changes" href="#" class="btn btn-primary">
  17. <i class="icon ti ti-device-floppy"></i>
  18. 保存
  19. </a>
  20. </div>
  21. </div>
  22. </div>
  23. </div>
  24. </div>
  25. <div class="page-body">
  26. <div class="container-xl">
  27. <div class="row row-deck row-cards">
  28. <div class="col-md-4 col-sm-12">
  29. <div class="card">
  30. <div class="card-header card-header-light">
  31. <h3 class="card-title">基础信息</h3>
  32. </div>
  33. <div class="card-body">
  34. <div class="form-group mb-3 row">
  35. <label class="form-label col-3 col-form-label">注册邮箱</label>
  36. <div class="col">
  37. <input id="email" type="email" class="form-control" value="{$edit_user->email}">
  38. </div>
  39. </div>
  40. <div class="form-group mb-3 row">
  41. <label class="form-label col-3 col-form-label">用户名</label>
  42. <div class="col">
  43. <input id="user_name" type="text" class="form-control"
  44. value="{$edit_user->user_name}">
  45. </div>
  46. </div>
  47. <div class="form-group mb-3 row">
  48. <label class="form-label col-3 col-form-label">备注</label>
  49. <div class="col">
  50. <input id="remark" type="text" class="form-control" value="{$edit_user->remark}"
  51. placeholder="仅管理员可见">
  52. </div>
  53. </div>
  54. <div class="form-group mb-3 row">
  55. <label class="form-label col-3 col-form-label">账户密码</label>
  56. <div class="col">
  57. <input id="pass" type="text" class="form-control"
  58. placeholder="若需为此用户重置密码, 填写此栏">
  59. </div>
  60. </div>
  61. <div class="form-group mb-3 row">
  62. <label class="form-label col-3 col-form-label">账户余额</label>
  63. <div class="col">
  64. <input id="money" type="number" step="0.1" class="form-control"
  65. value="{$edit_user->money}">
  66. </div>
  67. </div>
  68. <div class="hr-text">
  69. <span>时间设置</span>
  70. </div>
  71. <div class="form-group mb-3 row">
  72. <label class="form-label col-4 col-form-label">等级过期时间</label>
  73. <div class="col">
  74. <input id="class_expire" type="text" class="form-control"
  75. value="{$edit_user->class_expire}">
  76. </div>
  77. </div>
  78. <div class="form-group mb-3 row">
  79. <label class="form-label col-4 col-form-label">免费用户流量重置日</label>
  80. <div class="col">
  81. <input id="auto_reset_day" type="text" class="form-control"
  82. value="{$edit_user->auto_reset_day}">
  83. </div>
  84. </div>
  85. <div class="form-group mb-3 row">
  86. <label class="form-label col-4 col-form-label">
  87. 重置的免费流量(GB)
  88. </label>
  89. <div class="col">
  90. <input id="auto_reset_bandwidth" type="text" class="form-control"
  91. value="{$edit_user->auto_reset_bandwidth}">
  92. </div>
  93. </div>
  94. <div class="hr-text">
  95. <span>高级选项</span>
  96. </div>
  97. <div class="form-group mb-3 row">
  98. <span class="col">管理员</span>
  99. <span class="col-auto">
  100. <label class="form-check form-check-single form-switch">
  101. <input id="is_admin" class="form-check-input" type="checkbox"
  102. {if $edit_user->is_admin}checked="" {/if}>
  103. </label>
  104. </span>
  105. </div>
  106. <div class="form-group mb-3 row">
  107. <span class="col">两步认证</span>
  108. <span class="col-auto">
  109. <label class="form-check form-check-single form-switch">
  110. <input id="ga_enable" class="form-check-input" type="checkbox"
  111. {if $edit_user->ga_enable}checked="" {/if}>
  112. </label>
  113. </span>
  114. </div>
  115. <div class="form-group mb-3 row">
  116. <span class="col">账户异常状态</span>
  117. <span class="col-auto form-check-single form-switch">
  118. <input id="is_shadow_banned" class="form-check-input" type="checkbox"
  119. {if $edit_user->is_shadow_banned}checked=""{/if}>
  120. </span>
  121. </div>
  122. <div class="form-group mb-3 row">
  123. <span class="col">封禁用户</span>
  124. <span class="col-auto">
  125. <label class="form-check form-check-single form-switch">
  126. <input id="is_banned" class="form-check-input" type="checkbox"
  127. {if $edit_user->is_banned}checked=""{/if}>
  128. </label>
  129. </span>
  130. </div>
  131. <div class="form-group mb-3 row">
  132. <span class="col">手动封禁理由</span>
  133. <span class="col-auto">
  134. <input id="banned_reason" type="text" class="form-control"
  135. value="{$edit_user->banned_reason}">
  136. </span>
  137. </div>
  138. </div>
  139. </div>
  140. </div>
  141. <div class="col-md-4 col-sm-12">
  142. <div class="card">
  143. <div class="card-header card-header-light">
  144. <h3 class="card-title">其他信息</h3>
  145. </div>
  146. <div class="card-body">
  147. <div class="form-group mb-3 row">
  148. <label class="form-label col-4 col-form-label">流量限制</label>
  149. <div class="col">
  150. <input id="transfer_enable" type="text" class="form-control"
  151. value="{$edit_user->enableTraffic()}">
  152. </div>
  153. </div>
  154. <div class="form-group mb-3 row">
  155. <label class="form-label col-4 col-form-label">当期用量</label>
  156. <div class="col">
  157. <input id="usedTraffic" type="text" class="form-control"
  158. value="{$edit_user->usedTraffic()}" disabled/>
  159. </div>
  160. </div>
  161. <div class="form-group mb-3 row">
  162. <label class="form-label col-4 col-form-label">累计用量</label>
  163. <div class="col">
  164. <input id="usedTraffic" type="text" class="form-control"
  165. value="{$edit_user->totalTraffic()}" disabled/>
  166. </div>
  167. </div>
  168. <div class="hr-text">
  169. <span>邀请注册</span>
  170. </div>
  171. <div class="form-group mb-3 row">
  172. <label class="form-label col-4 col-form-label">可用邀请数量</label>
  173. <div class="col">
  174. <input id="invite_num" type="text" class="form-control"
  175. value="{$edit_user->invite_num}">
  176. </div>
  177. </div>
  178. <div class="form-group mb-3 row">
  179. <label class="form-label col-4 col-form-label">邀请人</label>
  180. <div class="col">
  181. <input id="ref_by" type="text" class="form-control" value="{$edit_user->ref_by}">
  182. </div>
  183. </div>
  184. <div class="hr-text">
  185. <span>划分与使用限制</span>
  186. </div>
  187. <div class="form-group mb-3 col-12">
  188. <label class="form-label col-12 col-form-label">节点群组</label>
  189. <div class="col">
  190. <input id="node_group" type="text" class="form-control"
  191. value="{$edit_user->node_group}">
  192. </div>
  193. </div>
  194. <div class="form-group mb-3 col-12">
  195. <label class="form-label col-12 col-form-label">账户等级</label>
  196. <div class="col">
  197. <input id="class" type="text" class="form-control" value="{$edit_user->class}">
  198. </div>
  199. </div>
  200. <div class="form-group mb-3 col-12">
  201. <label class="form-label col-12 col-form-label">速度限制 (Mbps)</label>
  202. <div class="col">
  203. <input id="node_speedlimit" type="text" class="form-control"
  204. value="{$edit_user->node_speedlimit}">
  205. </div>
  206. </div>
  207. <div class="form-group mb-3 col-12">
  208. <label class="form-label col-12 col-form-label">同時连接 IP 限制</label>
  209. <div class="col">
  210. <input id="node_iplimit" type="text" class="form-control"
  211. value="{$edit_user->node_iplimit}">
  212. </div>
  213. </div>
  214. </div>
  215. </div>
  216. </div>
  217. <div class="col-md-4 col-sm-12">
  218. <div class="card">
  219. <div class="card-header card-header-light">
  220. <h3 class="card-title">连接设置</h3>
  221. </div>
  222. <div class="card-body">
  223. <div class="form-group mb-3 row">
  224. <label class="form-label col-3 col-form-label">端口</label>
  225. <div class="col">
  226. <input id="port" type="text" class="form-control" value="{$edit_user->port}">
  227. </div>
  228. </div>
  229. <div class="form-group mb-3 row">
  230. <label class="form-label col-3 col-form-label">密码</label>
  231. <div class="col">
  232. <input id="passwd" type="text" class="form-control" value="{$edit_user->passwd}">
  233. </div>
  234. </div>
  235. <div class="form-group mb-3 row">
  236. <label class="form-label col-3 col-form-label">加密</label>
  237. <div class="col">
  238. <input id="method" type="text" class="form-control" value="{$edit_user->method}">
  239. </div>
  240. </div>
  241. <div class="hr-text">
  242. <span>访问限制</span>
  243. </div>
  244. <div class="form-group mb-3 row">
  245. <label class="form-label col-3 col-form-label">IP / CIDR</label>
  246. <div class="col">
  247. <textarea id="forbidden_ip" class="col form-control"
  248. rows="2">{$edit_user->forbidden_ip}</textarea>
  249. </div>
  250. </div>
  251. <div class="form-group mb-3 row">
  252. <label class="form-label col-3 col-form-label">PORT</label>
  253. <div class="col">
  254. <textarea id="forbidden_port" class="col form-control"
  255. rows="2">{$edit_user->forbidden_port}</textarea>
  256. </div>
  257. </div>
  258. </div>
  259. </div>
  260. </div>
  261. </div>
  262. </div>
  263. </div>
  264. </div>
  265. <script>
  266. $("#save_changes").click(function () {
  267. $.ajax({
  268. url: '/admin/user/{$edit_user->id}',
  269. type: 'PUT',
  270. dataType: "json",
  271. data: {
  272. {foreach $update_field as $key}
  273. {$key}: $('#{$key}').val(),
  274. {/foreach}
  275. is_admin: $("#is_admin").is(":checked"),
  276. is_banned: $("#is_banned").is(":checked"),
  277. ga_enable: $("#ga_enable").is(":checked"),
  278. is_shadow_banned: $("#is_shadow_banned").is(":checked"),
  279. },
  280. success: function (data) {
  281. if (data.ret === 1) {
  282. $('#success-message').text(data.msg);
  283. $('#success-dialog').modal('show');
  284. window.setTimeout("location.href=top.document.referrer", {$config['jump_delay']});
  285. } else {
  286. $('#fail-message').text(data.msg);
  287. $('#fail-dialog').modal('show');
  288. }
  289. }
  290. })
  291. });
  292. </script>
  293. {include file='admin/footer.tpl'}