sync-run.html 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>云阅卷本地代理工具</title>
  6. <meta name="viewport"
  7. content="width=device-width,initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no" />
  8. <link rel="stylesheet" href="css/style.css">
  9. </head>
  10. <body>
  11. <div class="wp">
  12. <div class="hd">
  13. <div class="logo"><img src="img/logo.png" /></div>
  14. <span class="y"> 欢迎您,<span id="user-name"></span>
  15. <span class="pipe">|</span><a href="##">退出</a>
  16. </span>
  17. </div>
  18. <div class="cont">
  19. <div class="title title_grey cl">
  20. <h2>数据同步中 …</h2>
  21. </div>
  22. <div class="progress-box">
  23. <h3 id="message">正在下载考生...</h3>
  24. <div class="progress">
  25. <div class="progress-outer">
  26. <div id="progress" class="progress-inner" style="width: 0%;"><span class="progress-text"></span>
  27. </div>
  28. </div>
  29. </div>
  30. <p>已数据同步考生:<b id="finish-count"></b> / 全部考生:<b id="total-count"></b></p>
  31. </div>
  32. </div>
  33. <div class="ft">Copyright © 2011-2020 www.qmth.com.cn, All Rights Reserved</div>
  34. </div>
  35. <div class="xcConfirm" id="popup" style="display: none">
  36. <div class="xc_layer"></div>
  37. <div class="popbox">
  38. <a href="##" id="popup-close"><span class="close"></span></a>
  39. <div class="txtbox">
  40. <div id="popup-error" class="icon error" style="display: none"></div>
  41. <div id="popup-success" class="icon success" style="display: none"></div>
  42. <div id="popup-text" class="text"></div>
  43. </div>
  44. </div>
  45. </div>
  46. <script>
  47. const $ = require('jquery')
  48. const env = require('../lib/env.js')
  49. const config = require('../lib/config.js')
  50. const sync = require('../lib/sync.js')()
  51. $(document).ready(() => {
  52. env.merge(JSON.parse(window.localStorage.getItem('env')))
  53. $('#user-name').html(env.user.userName)
  54. var totalCount = 0;
  55. sync.on('total', (count) => {
  56. totalCount = count
  57. $('#total-count').html(count)
  58. })
  59. sync.on('student', (count) => {
  60. $('#finish-count').html(count)
  61. let rate = parseInt(count * 100 / totalCount)
  62. $('#progress').css('width', rate + '%')
  63. $('.progress-text').html(rate + '%')
  64. })
  65. sync.on('campus', (count) => {
  66. $('#message').html('正在下载学习中心,已完成' + count)
  67. })
  68. sync.on('package', (count) => {
  69. $('#message').html('正在下载签到表,已完成' + count)
  70. })
  71. sync.on('finish', () => {
  72. $('#popup-success').show()
  73. $('#popup-text').html('数据同步完成')
  74. config.updateSyncTime()
  75. $('#popup-close').click(() => {
  76. $('#popup').hide()
  77. window.location.href = 'sync.html'
  78. })
  79. $('#popup').show()
  80. })
  81. sync.on('error', (err) => {
  82. $('#popup-error').show()
  83. $('#popup-text').html('数据同步出错\n' + (err || ''))
  84. $('#popup-close').click(() => {
  85. $('#popup').hide()
  86. window.location.href = 'sync.html'
  87. })
  88. $('#popup').show()
  89. })
  90. sync.start()
  91. })
  92. </script>
  93. </body>
  94. </html>