krinlove commited on
Commit
4dc569b
·
verified ·
1 Parent(s): 3e7e237

Update src/routes/+layout.svelte

Browse files
Files changed (1) hide show
  1. src/routes/+layout.svelte +37 -1
src/routes/+layout.svelte CHANGED
@@ -36,6 +36,42 @@
36
  let loaded = false;
37
  const BREAKPOINT = 768;
38
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39
  onMount(async () => {
40
  theme.set(localStorage.theme);
41
 
@@ -87,7 +123,7 @@
87
 
88
  _socket.on('user-count', (data) => {
89
  console.log('user-count', data);
90
- activeUserCount.set(data.count);
91
  });
92
 
93
  _socket.on('usage', (data) => {
 
36
  let loaded = false;
37
  const BREAKPOINT = 768;
38
 
39
+ // 获取当前中国时间的小时数
40
+ function getChinaHour() {
41
+ const chinaTimezoneOffset = 8 * 60; // 中国时区 UTC+8
42
+ const currentTime = new Date();
43
+ const localTimezoneOffset = currentTime.getTimezoneOffset();
44
+ const chinaTime = new Date(currentTime.getTime() + (chinaTimezoneOffset + localTimezoneOffset) * 60000);
45
+ return chinaTime.getHours();
46
+ }
47
+
48
+ // 根据中国时间段设置 activeUserCount 的随机数
49
+ function setActiveUserCountByTime() {
50
+ const hour = getChinaHour();
51
+ let minActiveUsers, maxActiveUsers;
52
+
53
+ if (hour >= 22 || hour < 10) {
54
+ // 22:00-次日10:00,设为10-30
55
+ minActiveUsers = 10;
56
+ maxActiveUsers = 30;
57
+ } else if (hour >= 10 && hour < 15) {
58
+ // 10:00-15:00,设为80-100
59
+ minActiveUsers = 80;
60
+ maxActiveUsers = 100;
61
+ } else if (hour >= 15 && hour < 22) {
62
+ // 15:00-20:00,设为150-180
63
+ minActiveUsers = 150;
64
+ maxActiveUsers = 180;
65
+ } else {
66
+ // 其他时间段,设为150-180
67
+ minActiveUsers = 150;
68
+ maxActiveUsers = 180;
69
+ }
70
+
71
+ const randomActiveUsers = Math.floor(Math.random() * (maxActiveUsers - minActiveUsers + 1)) + minActiveUsers;
72
+ activeUserCount.set(randomActiveUsers);
73
+ }
74
+
75
  onMount(async () => {
76
  theme.set(localStorage.theme);
77
 
 
123
 
124
  _socket.on('user-count', (data) => {
125
  console.log('user-count', data);
126
+ setActiveUserCountByTime();
127
  });
128
 
129
  _socket.on('usage', (data) => {