-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathworker.js
More file actions
610 lines (531 loc) · 99.7 KB
/
Copy pathworker.js
File metadata and controls
610 lines (531 loc) · 99.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
/**
* Cloudflare Worker 临时邮箱转发系统
* 功能:注册/登录、唯一别名、3-7-30天续期规则、邮件转发自动续期、修改密码、注销、管理后台、禁止注册关键字
*/
// === 默认配置 ===
// 部署后,首次运行会自动创建 SYS:CONFIG。你可以通过管理后台修改这些配置。
const DEFAULT_CONFIG = {
open_reg: true,
domains: ["xxxxxx.xxx"], // 请在后台改为你的真实域名
admin_email: "xxx@xxx.xxx",// 有后台管理权限的邮箱,请首先用此邮箱注册一下
blocked_keywords: ["admin", "root", "support", "system", "abuse", "webmaster", "postmaster", "vip"] // 禁止注册的关键字
};
// === HTML 模板 (前端代码) ===
const HTML_TEMPLATE = (body, title = "临时邮箱") => `
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>${title}</title>
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://unpkg.com/alpinejs@3.x.x/dist/cdn.min.js" defer></script>
<style>
#tmd {height:220px;width:300px;background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAEOer7jAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKIWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIiB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4wLyIgeG1wTU06RG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjI5MTgxYTgzLTA2ZGEtMjI0Ni1hNmZlLWEwMDllNWVlZjM0NSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo0NGM3ZjBhNy1mMGExLTJkNGMtYjdiZS1mMmEwMTViNTI0NjEiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo4M0E0NDBBQzNBRDgxMUU3QTkwMUY2NUYzNDUyNjg0NCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M2IFdpbmRvd3MiIHhtcDpDcmVhdGVEYXRlPSIyMDI1LTEyLTAyVDExOjA0OjM0KzA4OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyNS0xMi0wMlQxMTo0Mjo1MyswODowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyNS0xMi0wMlQxMTo0Mjo1MyswODowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSIiIHRpZmY6SW1hZ2VXaWR0aD0iMzAwIiB0aWZmOkltYWdlTGVuZ3RoPSIzMDAiIHRpZmY6UGhvdG9tZXRyaWNJbnRlcnByZXRhdGlvbj0iMiIgdGlmZjpTYW1wbGVzUGVyUGl4ZWw9IjMiIHRpZmY6WFJlc29sdXRpb249IjcyLzEiIHRpZmY6WVJlc29sdXRpb249IjcyLzEiIHRpZmY6UmVzb2x1dGlvblVuaXQ9IjIiIGV4aWY6RXhpZlZlcnNpb249IjAyMjEiIGV4aWY6Q29sb3JTcGFjZT0iNjU1MzUiIGV4aWY6UGl4ZWxYRGltZW5zaW9uPSIzMDAiIGV4aWY6UGl4ZWxZRGltZW5zaW9uPSIzMDAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0ZTczZGY5Yi02MDdjLTE5NDUtOTM3ZC02YTQ5Y2IxNzgyYmYiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6ODNBNDQwQUMzQUQ4MTFFN0E5MDFGNjVGMzQ1MjY4NDQiIHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo4M0E0NDBBQzNBRDgxMUU3QTkwMUY2NUYzNDUyNjg0NCIvPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJzYXZlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo0ZTczZGY5Yi02MDdjLTE5NDUtOTM3ZC02YTQ5Y2IxNzgyYmYiIHN0RXZ0OndoZW49IjIwMjUtMTItMDJUMTE6NDI6NTMrMDg6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE5IChXaW5kb3dzKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY29udmVydGVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJmcm9tIGltYWdlL2pwZWcgdG8gaW1hZ2UvcG5nIi8+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJkZXJpdmVkIiBzdEV2dDpwYXJhbWV0ZXJzPSJjb252ZXJ0ZWQgZnJvbSBpbWFnZS9qcGVnIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6NDRjN2YwYTctZjBhMS0yZDRjLWI3YmUtZjJhMDE1YjUyNDYxIiBzdEV2dDp3aGVuPSIyMDI1LTEyLTAyVDExOjQyOjUzKzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoV2luZG93cykiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDxwaG90b3Nob3A6RG9jdW1lbnRBbmNlc3RvcnM+IDxyZGY6QmFnPiA8cmRmOmxpPnhtcC5kaWQ6ODNBNDQwQUMzQUQ4MTFFN0E5MDFGNjVGMzQ1MjY4NDQ8L3JkZjpsaT4gPC9yZGY6QmFnPiA8L3Bob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4gPHRpZmY6Qml0c1BlclNhbXBsZT4gPHJkZjpTZXE+IDxyZGY6bGk+ODwvcmRmOmxpPiA8cmRmOmxpPjg8L3JkZjpsaT4gPHJkZjpsaT44PC9yZGY6bGk+IDwvcmRmOlNlcT4gPC90aWZmOkJpdHNQZXJTYW1wbGU+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+7eUN1wAAzt9JREFUeJzsXWd4FFUXfmdmaza72fReIJQEEhJ67006CiICVpp+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) no-repeat center;background-position: center 0px; background-repeat: no-repeat;}
[x-cloak] { display: none !important; }
.fade-in { animation: fadeIn 0.3s ease-in; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
</style>
</head>
<body class="bg-slate-50 text-slate-900 min-h-screen font-sans">
${body}
</body>
</html>
`;
// === WORKER 入口 ===
export default {
async fetch(request, env, ctx) {
const url = new URL(request.url);
// 路由分发
if (url.pathname === '/' || url.pathname === '/login') return renderLogin(env);
if (url.pathname === '/register') return renderRegister(env);
if (url.pathname === '/dashboard') return await renderDashboard(request, env);
if (url.pathname === '/admin') return await renderAdmin(request, env);
// API 路由
if (url.pathname.startsWith('/api/')) {
return handleApi(url.pathname, request, env);
}
return new Response("Not Found", { status: 404 });
},
// 邮件处理逻辑
async email(message, env, ctx) {
const recipient = message.to;
// 1. 查找别名 (KV key: ALIAS:user.name@domain.com)
// 强制转小写匹配
const targetKey = `ALIAS:${recipient.toLowerCase()}`;
const aliasData = await env.TM_KV.get(targetKey, 'json');
if (!aliasData) {
message.setReject("Address not found");
return;
}
// 2. 检查过期
if (Date.now() > aliasData.expiresAt) {
message.setReject("Address expired");
return;
}
// 3. 检查用户状态
const user = await env.TM_KV.get(`USER:${aliasData.ownerEmail}`, 'json');
if (!user || user.status === 'banned') {
message.setReject("User banned");
return;
}
// 4. 执行转发
try {
await message.forward(aliasData.ownerEmail);
// 5. 自动续期 (默认触发,忽略时间检查)
await renewLogic(aliasData, env, targetKey, true);
} catch (e) {
console.error(e);
message.setReject("Forwarding failed");
}
}
};
// === 业务逻辑 ===
async function handleApi(path, req, env) {
if (path === '/api/auth/register') return await handleRegister(req, env);
if (path === '/api/auth/login') return await handleLogin(req, env);
if (path === '/api/auth/password') return await handleChangePassword(req, env);
if (path === '/api/auth/delete') return await handleDeleteAccount(req, env);
if (path === '/api/alias/create') return await handleCreateAlias(req, env);
if (path === '/api/alias/renew') return await handleRenewAlias(req, env);
if (path === '/api/admin/action') return await handleAdminAction(req, env);
return jsonResp({ error: "Method not found" }, 404);
}
// 续期核心算法
// isAuto = true (邮件触发) -> 忽略时间限制,直接升级到下一阶段
// isAuto = false (手动触发) -> 严格检查剩余时间
async function renewLogic(data, env, key, isAuto) {
const now = Date.now();
const timeLeft = data.expiresAt - now;
const daysLeft = timeLeft / (1000 * 3600 * 24);
let newDurationDays = 30; // 默认
if (!isAuto) {
// 手动续期规则检查
if (data.renewalCount === 0) {
// 初始阶段(3天)。必须 < 2 天才能续
if (daysLeft > 2) throw new Error("有效期剩余超过2天,暂不可续期");
newDurationDays = 7;
} else if (data.renewalCount === 1) {
// 阶段1(7天)。必须 < 2 天才能续
if (daysLeft > 2) throw new Error("有效期剩余超过2天,暂不可续期");
newDurationDays = 30;
} else {
// 阶段2(30天)。必须 < 7 天才能续 ("提取7天续期")
if (daysLeft > 7) throw new Error("有效期剩余超过7天,暂不可续期");
newDurationDays = 30;
}
} else {
// 自动续期:直接根据当前阶段升级时长,不报错
if (data.renewalCount === 0) newDurationDays = 7;
else newDurationDays = 30;
}
// 更新过期时间 (从 Now 开始计算)
data.expiresAt = now + (newDurationDays * 86400 * 1000);
data.renewalCount += 1;
if (isAuto) {
data.forwardCount = (data.forwardCount || 0) + 1;
}
await env.TM_KV.put(key, JSON.stringify(data));
}
async function getConfig(env) {
const conf = await env.TM_KV.get('SYS:CONFIG', 'json');
if (!conf) return DEFAULT_CONFIG;
// 确保新字段存在
if (!conf.blocked_keywords) conf.blocked_keywords = DEFAULT_CONFIG.blocked_keywords;
return { ...DEFAULT_CONFIG, ...conf };
}
async function getSession(req, env) {
const cookie = req.headers.get('Cookie') || "";
const match = cookie.match(/token=([^;]+)/);
if (!match) return null;
return await env.TM_KV.get(`SESSION:${match[1]}`, 'json');
}
// 注册
async function handleRegister(req, env) {
const { email, password } = await req.json();
const config = await getConfig(env);
if (!config.open_reg) return jsonResp({ error: "系统已关闭注册" }, 403);
if (await env.TM_KV.get(`USER:${email}`)) return jsonResp({ error: "该邮箱已注册" }, 400);
const user = {
email,
password, // 生产环境请加盐Hash
role: email === config.admin_email ? 'ADMIN' : 'USER',
status: 'active',
createdAt: Date.now()
};
await env.TM_KV.put(`USER:${email}`, JSON.stringify(user));
return jsonResp({ success: true });
}
// 登录
async function handleLogin(req, env) {
const { email, password } = await req.json();
const user = await env.TM_KV.get(`USER:${email}`, 'json');
// 默认管理员初始化后门 (如果admin账号不存在)
if (email === "admin@system.com" && password === "admin" && !user) {
const adminUser = { email, password, role: 'ADMIN', status: 'active', createdAt: Date.now() };
await env.TM_KV.put(`USER:${email}`, JSON.stringify(adminUser));
const token = `TK-${crypto.randomUUID()}`;
await env.TM_KV.put(`SESSION:${token}`, JSON.stringify({ email, role: 'ADMIN' }), { expirationTtl: 86400 });
return jsonResp({ token, redirect: '/admin' });
}
if (!user || user.password !== password) return jsonResp({ error: "账号或密码错误" }, 401);
if (user.status === 'banned') return jsonResp({ error: "账号已被禁用" }, 403);
const token = `TK-${crypto.randomUUID()}`;
await env.TM_KV.put(`SESSION:${token}`, JSON.stringify({ email: user.email, role: user.role }), { expirationTtl: 86400 });
return jsonResp({ token, redirect: user.role === 'ADMIN' ? '/admin' : '/dashboard' });
}
// 修改密码
async function handleChangePassword(req, env) {
const session = await getSession(req, env);
if (!session) return jsonResp({ error: "未登录" }, 401);
const { oldPassword, newPassword } = await req.json();
const user = await env.TM_KV.get(`USER:${session.email}`, 'json');
if (user.password !== oldPassword) return jsonResp({ error: "旧密码错误" }, 400);
user.password = newPassword;
await env.TM_KV.put(`USER:${session.email}`, JSON.stringify(user));
return jsonResp({ success: true });
}
// 注销账号
async function handleDeleteAccount(req, env) {
const session = await getSession(req, env);
if (!session) return jsonResp({ error: "未登录" }, 401);
const user = await env.TM_KV.get(`USER:${session.email}`, 'json');
if (user.role === 'ADMIN') return jsonResp({ error: "管理员不能注销" }, 400);
// 1. 删除别名
const userAliasKey = `UALIAS:${session.email}`;
const aliasAddr = await env.TM_KV.get(userAliasKey);
if (aliasAddr) {
await env.TM_KV.delete(`ALIAS:${aliasAddr}`);
await env.TM_KV.delete(userAliasKey);
}
// 2. 删除用户
await env.TM_KV.delete(`USER:${session.email}`);
// 3. 删除 Session (前端也需清除Cookie)
return jsonResp({ success: true });
}
// 创建别名
async function handleCreateAlias(req, env) {
const session = await getSession(req, env);
if (!session) return jsonResp({ error: "未登录" }, 401);
const { prefix, domain } = await req.json();
const lowerPrefix = prefix.toLowerCase();
// 1. 检查配置中的禁止关键字
const config = await getConfig(env);
const blockedList = config.blocked_keywords || [];
// 检查前缀是否包含任何禁止关键字
for (const keyword of blockedList) {
if (lowerPrefix.includes(keyword.toLowerCase())) {
return jsonResp({ error: `前缀包含禁止使用的关键字: "${keyword}"` }, 400);
}
}
const fullAlias = `${lowerPrefix}@${domain}`;
// 检查占用 (排除自己拥有的)
const exist = await env.TM_KV.get(`ALIAS:${fullAlias}`, 'json');
if (exist && exist.ownerEmail !== session.email) return jsonResp({ error: "该别名已被占用" }, 400);
// 删除旧别名 (单别名限制)
const userAliasKey = `UALIAS:${session.email}`;
const oldAliasAddr = await env.TM_KV.get(userAliasKey);
if (oldAliasAddr) {
await env.TM_KV.delete(`ALIAS:${oldAliasAddr}`);
}
// 创建 - 初始 3 天
const aliasData = {
ownerEmail: session.email,
fullAddress: fullAlias,
createdAt: Date.now(),
expiresAt: Date.now() + (3 * 86400 * 1000),
renewalCount: 0,
forwardCount: 0
};
await env.TM_KV.put(`ALIAS:${fullAlias}`, JSON.stringify(aliasData));
await env.TM_KV.put(userAliasKey, fullAlias);
return jsonResp({ success: true });
}
// 续期
async function handleRenewAlias(req, env) {
const session = await getSession(req, env);
if (!session) return jsonResp({ error: "未登录" }, 401);
const userAliasKey = `UALIAS:${session.email}`;
const aliasAddr = await env.TM_KV.get(userAliasKey);
if (!aliasAddr) return jsonResp({ error: "未找到别名" }, 404);
const key = `ALIAS:${aliasAddr}`;
const data = await env.TM_KV.get(key, 'json');
try {
await renewLogic(data, env, key, false); // Manual renew
return jsonResp({ success: true });
} catch(e) {
return jsonResp({ error: e.message }, 400);
}
}
// 管理员操作
async function handleAdminAction(req, env) {
const session = await getSession(req, env);
if (!session || session.role !== 'ADMIN') return jsonResp({ error: "权限不足" }, 403);
const { action, payload } = await req.json();
if (action === 'list_users') {
const list = await env.TM_KV.list({ prefix: "USER:" });
const users = [];
for (const k of list.keys) {
const u = await env.TM_KV.get(k.name, 'json');
const ua = await env.TM_KV.get(`UALIAS:${u.email}`);
u.currentAlias = ua || "无";
users.push(u);
}
return jsonResp(users);
}
if (action === 'toggle_status') {
const key = `USER:${payload.email}`;
const u = await env.TM_KV.get(key, 'json');
if (u) {
u.status = u.status === 'active' ? 'banned' : 'active';
await env.TM_KV.put(key, JSON.stringify(u));
}
return jsonResp({success: true});
}
if (action === 'delete_user') {
await env.TM_KV.delete(`USER:${payload.email}`);
const ua = await env.TM_KV.get(`UALIAS:${payload.email}`);
if (ua) await env.TM_KV.delete(`ALIAS:${ua}`);
await env.TM_KV.delete(`UALIAS:${payload.email}`);
return jsonResp({success: true});
}
if (action === 'get_config') return jsonResp(await getConfig(env));
if (action === 'update_config') {
await env.TM_KV.put('SYS:CONFIG', JSON.stringify(payload));
return jsonResp({success: true});
}
return jsonResp({ error: "Unknown action" });
}
function jsonResp(data, status = 200) {
return new Response(JSON.stringify(data), { status, headers: { 'Content-Type': 'application/json' } });
}
// === 页面渲染 ===
function renderLogin(env) {
return new Response(HTML_TEMPLATE(`
<div class="flex flex-col items-center justify-center min-h-screen p-4" x-data="{ email: '', password: '', isLogin: true }">
<h1 id="tmd"> </h1>
<div class="bg-white p-8 rounded-xl shadow-lg w-full max-w-md fade-in">
<h1 class="text-2xl font-bold text-center mb-6 text-brand-600">邮箱转发系统</h1>
<div class="flex gap-4 mb-6 bg-slate-100 p-1 rounded-lg">
<button @click="isLogin = true" :class="isLogin ? 'bg-white shadow text-blue-600' : 'text-slate-500'" class="flex-1 py-2 rounded-md transition font-medium">登录</button>
<button @click="isLogin = false" :class="!isLogin ? 'bg-white shadow text-blue-600' : 'text-slate-500'" class="flex-1 py-2 rounded-md transition font-medium">注册</button>
</div>
<form @submit.prevent="submit">
<div class="space-y-4">
<input type="email" x-model="email" placeholder="真实邮箱" required class="w-full px-3 py-2 border rounded-lg focus:ring-2 outline-none">
<input type="password" x-model="password" placeholder="密码" required class="w-full px-3 py-2 border rounded-lg focus:ring-2 outline-none">
<button type="submit" class="w-full bg-blue-600 text-white py-2 rounded-lg hover:bg-blue-700 transition font-bold" x-text="isLogin ? '登录' : '注册'"></button>
</div>
</form>
<div id="msg" class="mt-4 text-center text-sm text-red-500 font-medium"></div>
<div class="mt-4 text-center text-sm text-500 font-medium">Powered by <a aria-label="GitHub Homepage" class="footer-octicon mr-2" href="https://github.com/Y560H/ForwardMail">Y560H</a></div>
</div>
</div>
<script>
function submit() {
const data = this.$data;
const url = data.isLogin ? '/api/auth/login' : '/api/auth/register';
document.getElementById('msg').innerText = '处理中...';
fetch(url, { method: 'POST', body: JSON.stringify(data) }).then(r => r.json()).then(res => {
if (res.error) document.getElementById('msg').innerText = res.error;
else if (data.isLogin) {
document.cookie = "token="+res.token+"; path=/; max-age=86400";
window.location.href = res.redirect;
} else { alert('注册成功,请登录'); location.reload(); }
});
}
</script>
`), { headers: { "Content-Type": "text/html" } });
}
async function renderDashboard(req, env) {
const session = await getSession(req, env);
if (!session) return new Response(null, { status: 302, headers: { Location: '/' } });
const config = await getConfig(env);
const userAliasAddr = await env.TM_KV.get(`UALIAS:${session.email}`);
const aliasData = userAliasAddr ? await env.TM_KV.get(`ALIAS:${userAliasAddr}`, 'json') : null;
// 计算时间
let timeLeftStr = "无";
let isExpired = false;
let stageLabel = "";
if (aliasData) {
const diff = aliasData.expiresAt - Date.now();
if (diff <= 0) { isExpired = true; timeLeftStr = "已过期"; }
else {
const d = Math.floor(diff / 86400000);
const h = Math.floor((diff % 86400000) / 3600000);
timeLeftStr = `${d}天 ${h}小时`;
}
if(aliasData.renewalCount === 0) stageLabel = "初始阶段 (3天)";
else if(aliasData.renewalCount === 1) stageLabel = "第一次续期 (7天)";
else stageLabel = "稳定阶段 (30天)";
}
return new Response(HTML_TEMPLATE(`
<div class="max-w-4xl mx-auto p-4" x-data="{ tab: 'home', prefix: '${aliasData ? aliasData.fullAddress.split('@')[0] : ''}', domain: '${aliasData ? aliasData.fullAddress.split('@')[1] : config.domains[0]}', oldPwd: '', newPwd: '' }">
<nav class="flex justify-between items-center py-4 mb-8 border-b">
<div class="font-bold text-xl text-blue-600">邮箱转发系统</div>
<div class="flex items-center gap-4">
<button @click="tab='home'" :class="tab=='home'?'text-blue-600 font-bold':''">首页</button>
<button @click="tab='settings'" :class="tab=='settings'?'text-blue-600 font-bold':''">设置</button>
<button onclick="document.cookie='token=; max-age=0';location.href='/'" class="text-red-500">退出</button>
</div>
</nav>
<div x-show="tab === 'home'" class="space-y-6 fade-in">
<!-- 别名卡片 -->
<div class="bg-white rounded-xl shadow p-6 border-l-4 ${aliasData && !isExpired ? 'border-green-500' : 'border-slate-300'}">
<div class="flex justify-between mb-2">
<h2 class="text-lg font-bold text-slate-800">当前临时邮箱</h2>
${aliasData ? `<span class='text-xs bg-gray-100 px-2 py-1 rounded text-gray-600'>${stageLabel}</span>` : ''}
</div>
${aliasData ? `
<div class="flex flex-col md:flex-row justify-between items-center gap-4">
<div>
<div class="text-3xl font-mono font-bold text-blue-600 select-all">${aliasData.fullAddress}</div>
<div class="text-sm text-slate-500 mt-1">转发至: ${session.email} | 转发次数: ${aliasData.forwardCount||0}</div>
</div>
<div class="text-right">
<div class="text-2xl font-bold ${isExpired ? 'text-red-500' : 'text-green-600'}">${timeLeftStr}</div>
<div class="text-xs text-slate-400">有效期至: ${new Date(aliasData.expiresAt).toLocaleString()}</div>
</div>
</div>
<div class="mt-6 flex gap-4">
<button onclick="renew()" class="px-4 py-2 bg-green-600 text-white rounded hover:bg-green-700 font-medium">立即续期</button>
<button onclick="simulateEmail()" class="px-4 py-2 border border-gray-300 text-gray-600 rounded hover:bg-gray-50 text-sm">模拟收信 (测试续期)</button>
</div>
<p class="text-xs text-slate-400 mt-2">* 只有在剩余时间 < 2天 (或稳定期 < 7天) 时才可手动续期。收到邮件自动续期。</p>
` : `<div class="text-slate-500 py-4">您还没有创建临时邮箱。</div>`}
</div>
<!-- 创建/修改 -->
<div class="bg-white rounded-xl shadow p-6">
<h3 class="font-bold text-slate-800 mb-4">${aliasData ? '更换邮箱 (注意:有效期将重置为3天)' : '创建新邮箱'}</h3>
<div class="flex gap-2">
<input type="text" x-model="prefix" placeholder="前缀" class="flex-1 px-3 py-2 border rounded">
<span class="self-center">@</span>
<select x-model="domain" class="px-3 py-2 border rounded bg-white">
${config.domains.map(d => `<option value="${d}">${d}</option>`).join('')}
</select>
<button onclick="createAlias()" class="bg-blue-600 text-white px-6 py-2 rounded">提交</button>
</div>
</div>
</div>
<div x-show="tab === 'settings'" class="space-y-6 fade-in" x-cloak>
<div class="bg-white rounded-xl shadow p-6">
<h3 class="font-bold mb-4">修改密码</h3>
<input type="password" x-model="oldPwd" placeholder="旧密码" class="w-full px-3 py-2 border rounded mb-3">
<input type="password" x-model="newPwd" placeholder="新密码" class="w-full px-3 py-2 border rounded mb-3">
<button onclick="changePwd()" class="bg-blue-600 text-white px-4 py-2 rounded">保存</button>
</div>
<div class="bg-red-50 rounded-xl shadow p-6 border border-red-100">
<h3 class="font-bold text-red-800 mb-2">注销账号</h3>
<p class="text-sm text-red-600 mb-4">删除账号是不可逆的操作,您的邮箱别名将立即失效。</p>
<button onclick="deleteAccount()" class="bg-red-600 text-white px-4 py-2 rounded">确认注销</button>
</div>
</div>
</div>
<script>
function createAlias() {
const data = document.querySelector('[x-data]')._x_dataStack[0];
if(!confirm('确定提交吗?')) return;
fetch('/api/alias/create', { method: 'POST', body: JSON.stringify({ prefix: data.prefix, domain: data.domain }) })
.then(r=>r.json()).then(res=>{ if(res.error) alert(res.error); else location.reload(); });
}
function renew() {
fetch('/api/alias/renew', { method: 'POST' }).then(r=>r.json()).then(res=>{ if(res.error) alert(res.error); else { alert('续期成功'); location.reload(); } });
}
function simulateEmail() {
// This is a dummy function just to show user can test renewal. In reality, email comes from Worker.email()
// But we can call renew with force? No, user API is protected.
alert("请向该邮箱发送真实邮件来测试自动续期,或者等待时间满足条件后手动续期。");
}
function changePwd() {
const data = document.querySelector('[x-data]')._x_dataStack[0];
fetch('/api/auth/password', { method: 'POST', body: JSON.stringify({ oldPassword: data.oldPwd, newPassword: data.newPwd }) })
.then(r=>r.json()).then(res=>{ if(res.error) alert(res.error); else { alert('修改成功'); data.oldPwd=''; data.newPwd=''; } });
}
function deleteAccount() {
if(!confirm('真的要注销吗?')) return;
fetch('/api/auth/delete', { method: 'POST' }).then(r=>r.json()).then(res=>{
if(res.error) alert(res.error);
else { alert('注销成功'); document.cookie='token=; max-age=0'; location.href='/'; }
});
}
</script>
`, "Dashboard"), { headers: { "Content-Type": "text/html" } });
}
async function renderAdmin(req, env) {
const session = await getSession(req, env);
if (!session || session.role !== 'ADMIN') return new Response("Access Denied", { status: 403 });
return new Response(HTML_TEMPLATE(`
<div class="max-w-5xl mx-auto p-4" x-data="adminApp()">
<nav class="flex justify-between items-center py-4 mb-8 border-b">
<div class="font-bold text-xl text-purple-700">管理后台</div>
<a href="/dashboard" class="text-sm text-blue-600 hover:underline">返回用户中心</a>
</nav>
<div class="bg-white p-6 rounded-xl shadow mb-6">
<h3 class="font-bold mb-4">系统设置</h3>
<div class="flex items-center gap-4 mb-4">
<span>开放注册:</span>
<button @click="toggleReg" x-text="config.open_reg ? '开启' : '关闭'" :class="config.open_reg?'bg-green-500':'bg-red-500'" class="text-white px-3 py-1 rounded text-sm"></button>
</div>
<div class="mb-4">
<div class="text-sm mb-1">域名后缀 (逗号分隔):</div>
<input type="text" x-model="domainStr" class="w-full border px-2 py-1 rounded mb-2">
</div>
<div class="mb-4">
<div class="text-sm mb-1">禁止注册关键字 (逗号分隔, 包含即禁止):</div>
<textarea x-model="blockedStr" class="w-full border px-2 py-1 rounded h-20" placeholder="admin, root..."></textarea>
</div>
<button @click="saveSettings" class="bg-purple-600 text-white px-4 py-2 rounded text-sm">保存系统设置</button>
</div>
<div class="bg-white rounded-xl shadow overflow-hidden">
<div class="p-4 border-b flex justify-between">
<h3 class="font-bold">用户列表</h3>
<button @click="loadUsers" class="text-sm text-blue-600">刷新</button>
</div>
<table class="w-full text-sm text-left">
<thead class="bg-slate-50 text-slate-500"><tr><th class="p-3">用户</th><th class="p-3">别名</th><th class="p-3">状态</th><th class="p-3 text-right">操作</th></tr></thead>
<tbody>
<template x-for="u in users">
<tr class="border-t hover:bg-slate-50">
<td class="p-3" x-text="u.email"></td>
<td class="p-3 text-blue-600" x-text="u.currentAlias"></td>
<td class="p-3" x-text="u.status"></td>
<td class="p-3 text-right space-x-2">
<button @click="toggleStatus(u)" class="text-orange-600 hover:underline">切换状态</button>
<button @click="delUser(u)" class="text-red-600 hover:underline">删除</button>
</td>
</tr>
</template>
</tbody>
</table>
</div>
</div>
<script>
function adminApp() {
return {
config: { open_reg: true, domains: [], blocked_keywords: [] },
domainStr: '',
blockedStr: '',
users: [],
init() { this.loadConfig(); this.loadUsers(); },
api(action, payload) { return fetch('/api/admin/action', { method: 'POST', body: JSON.stringify({ action, payload }) }).then(r=>r.json()); },
loadConfig() {
this.api('get_config').then(res => {
this.config = res;
this.domainStr = (res.domains || []).join(',');
this.blockedStr = (res.blocked_keywords || []).join(',');
});
},
saveSettings() {
this.config.domains = this.domainStr.split(',').map(s=>s.trim()).filter(s=>s);
this.config.blocked_keywords = this.blockedStr.split(',').map(s=>s.trim()).filter(s=>s);
this.api('update_config', this.config).then(()=>alert('保存成功'));
},
toggleReg() { this.config.open_reg = !this.config.open_reg; },
loadUsers() { this.api('list_users').then(res => this.users = res); },
toggleStatus(u) { this.api('toggle_status', { email: u.email }).then(() => this.loadUsers()); },
delUser(u) { if(confirm('确定删除?')) this.api('delete_user', { email: u.email }).then(() => this.loadUsers()); }
}
}
</script>
`, "管理后台"), { headers: { "Content-Type": "text/html" } });
}