Skip to content

Commit 8b69eae

Browse files
Add referral activity pages
1 parent b297efb commit 8b69eae

5 files changed

Lines changed: 1243 additions & 0 deletions

File tree

docs/404.html

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
<!doctype html>
2+
<html lang="zh-CN">
3+
<head>
4+
<meta charset="utf-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
6+
<meta name="robots" content="noindex">
7+
<title>PythonIDE</title>
8+
<script>
9+
(function () {
10+
var parts = location.pathname.split("/").filter(Boolean);
11+
if (parts[0] === "i" && parts[1]) {
12+
var code = encodeURIComponent(parts[1]);
13+
var params = new URLSearchParams(location.search);
14+
if (params.get("lang")) code += "&lang=" + encodeURIComponent(params.get("lang"));
15+
location.replace("/i/?code=" + code);
16+
return;
17+
}
18+
if (parts[0] === "activity" && !parts[1]) {
19+
location.replace("/activity/" + location.search);
20+
return;
21+
}
22+
location.replace("/");
23+
}());
24+
</script>
25+
</head>
26+
<body>
27+
<p>Redirecting...</p>
28+
</body>
29+
</html>

docs/activity/index.html

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
<!doctype html>
2+
<html lang="zh-CN">
3+
<head>
4+
<meta charset="utf-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
6+
<meta name="theme-color" content="#ffffff">
7+
<meta name="apple-itunes-app" content="app-id=6753987304">
8+
<meta name="description" content="PythonIDE 邀请活动规则:有效邀请、奖励档位、其他活动与兑换说明。">
9+
<meta property="og:type" content="website">
10+
<meta property="og:title" content="PythonIDE 邀请活动规则">
11+
<meta property="og:description" content="查看 PythonIDE 邀请活动的有效邀请条件、奖励档位与兑换说明。">
12+
<meta property="og:image" content="https://pythonide.xin/assets/brand-mark.svg">
13+
<link rel="icon" href="/assets/brand-mark.svg" type="image/svg+xml">
14+
<link rel="stylesheet" href="/referral/referral.css">
15+
<script defer src="/referral/referral.js"></script>
16+
<title>PythonIDE 邀请活动规则</title>
17+
</head>
18+
<body>
19+
<div class="page">
20+
<header class="site-header">
21+
<nav class="nav" aria-label="PythonIDE">
22+
<a class="brand" href="/" aria-label="PythonIDE">
23+
<img class="brand-mark" src="/assets/brand-mark.svg" alt="">
24+
<span>PythonIDE</span>
25+
</a>
26+
<div class="nav-links" aria-label="Primary">
27+
<a class="nav-link" href="/i/" data-t="navInvite">邀请</a>
28+
<a class="nav-link" href="/activity/" aria-current="page" data-t="navRules">规则</a>
29+
<a class="nav-download" href="#" data-download data-t="download">下载 App</a>
30+
</div>
31+
<div class="language-toggle" aria-label="Language">
32+
<button type="button" data-lang="zh" aria-pressed="true"></button>
33+
<button type="button" data-lang="en" aria-pressed="false">EN</button>
34+
</div>
35+
</nav>
36+
</header>
37+
38+
<main class="main">
39+
<div class="activity-layout">
40+
<section aria-labelledby="activity-title">
41+
<h1 class="activity-title reveal" id="activity-title" data-t="ruleTitle">邀请活动规则</h1>
42+
<section class="activity-block" aria-labelledby="reward-title">
43+
<h2 class="section-title" id="reward-title" data-t="rewardTitle">奖励档位</h2>
44+
<div class="surface reward-list" data-array="rewards"></div>
45+
</section>
46+
<p class="note reveal" data-t="note">奖励达到后请按 App 内邀请明细与后台记录联系兑换。为防止刷量,截图不能作为有效邀请依据。</p>
47+
</section>
48+
49+
<section class="activity-summary" aria-label="邀请规则明细">
50+
<section class="activity-block" aria-labelledby="valid-title">
51+
<h2 class="section-title" id="valid-title" data-t="validTitle">什么是有效邀请</h2>
52+
<div class="rule-list" data-array="valid"></div>
53+
</section>
54+
55+
<section class="activity-block" aria-labelledby="other-title">
56+
<h2 class="section-title" id="other-title" data-t="otherTitle">其他活动</h2>
57+
<div class="surface other-list" data-array="other"></div>
58+
</section>
59+
</section>
60+
</div>
61+
</main>
62+
63+
<footer class="footer" data-t="footer">活动解释权与兑换记录以后台数据为准</footer>
64+
</div>
65+
</body>
66+
</html>

docs/i/index.html

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
<!doctype html>
2+
<html lang="zh-CN">
3+
<head>
4+
<meta charset="utf-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
6+
<meta name="theme-color" content="#ffffff">
7+
<meta name="apple-itunes-app" content="app-id=6753987304">
8+
<meta name="description" content="好友邀请你使用 PythonIDE。复制邀请码,下载 App 后输入即可建立邀请关系。">
9+
<meta property="og:type" content="website">
10+
<meta property="og:title" content="PythonIDE 邀请">
11+
<meta property="og:description" content="下载 App 后输入邀请码,即可建立邀请关系。">
12+
<meta property="og:image" content="https://pythonide.xin/assets/brand-mark.svg">
13+
<link rel="icon" href="/assets/brand-mark.svg" type="image/svg+xml">
14+
<link rel="stylesheet" href="/referral/referral.css">
15+
<script defer src="/referral/referral.js"></script>
16+
<title>PythonIDE 邀请</title>
17+
</head>
18+
<body>
19+
<div class="page">
20+
<header class="site-header">
21+
<nav class="nav" aria-label="PythonIDE">
22+
<a class="brand" href="/" aria-label="PythonIDE">
23+
<img class="brand-mark" src="/assets/brand-mark.svg" alt="">
24+
<span>PythonIDE</span>
25+
</a>
26+
<div class="nav-links" aria-label="Primary">
27+
<a class="nav-link" href="/i/" aria-current="page" data-t="navInvite">邀请</a>
28+
<a class="nav-link" href="/activity/" data-t="navRules">规则</a>
29+
<a class="nav-download" href="#" data-download data-t="download">下载 App</a>
30+
</div>
31+
<div class="language-toggle" aria-label="Language">
32+
<button type="button" data-lang="zh" aria-pressed="true"></button>
33+
<button type="button" data-lang="en" aria-pressed="false">EN</button>
34+
</div>
35+
</nav>
36+
</header>
37+
38+
<main class="main">
39+
<div class="invite-layout">
40+
<section class="invite-hero" aria-labelledby="invite-title">
41+
<p class="eyebrow reveal" id="invite-title" data-t="invitedTitle">好友邀请你使用 PythonIDE</p>
42+
<div class="invite-code" data-invite-code aria-label="邀请码">PY8K29</div>
43+
<p class="summary reveal" data-t="invitedSummary">下载 App 后输入邀请码,即可建立邀请关系。</p>
44+
45+
<div class="actions reveal">
46+
<a class="button primary" href="#" data-download>
47+
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
48+
<path d="M12 3v12m0 0 4-4m-4 4-4-4M5 21h14"></path>
49+
</svg>
50+
<span data-t="download">下载 App</span>
51+
</a>
52+
<button class="button secondary" type="button" data-copy-code data-copy-feedback="已复制">
53+
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
54+
<path d="M8 8h10v12H8zM6 16H5a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h10a1 1 0 0 1 1 1v1"></path>
55+
</svg>
56+
<span data-t="copyCode">复制邀请码</span>
57+
</button>
58+
</div>
59+
60+
<div class="divider" aria-hidden="true"></div>
61+
62+
<section aria-labelledby="how-title">
63+
<h1 class="section-title" id="how-title" data-t="howWorks">如何生效</h1>
64+
<div class="steps" data-array="steps"></div>
65+
</section>
66+
67+
<a class="inline-link reveal" href="/activity/">
68+
<span data-t="viewRules">查看活动规则</span>
69+
<span aria-hidden="true"></span>
70+
</a>
71+
</section>
72+
73+
<div class="vertical-divider desktop-only" aria-hidden="true"></div>
74+
75+
<aside class="rules-hero desktop-only" aria-label="邀请活动规则">
76+
<h2 class="activity-title reveal" data-t="ruleTitle">邀请活动规则</h2>
77+
<div class="activity-summary">
78+
<section class="activity-block" aria-labelledby="reward-title">
79+
<h3 class="section-title" id="reward-title" data-t="rewardTitle">奖励档位</h3>
80+
<div class="surface reward-list" data-array="rewards"></div>
81+
</section>
82+
83+
<section class="activity-block" aria-labelledby="valid-title">
84+
<h3 class="section-title" id="valid-title" data-t="validTitle">什么是有效邀请</h3>
85+
<div class="rule-list" data-array="valid"></div>
86+
</section>
87+
88+
<section class="activity-block" aria-labelledby="other-title">
89+
<h3 class="section-title" id="other-title" data-t="otherTitle">其他活动</h3>
90+
<div class="surface other-list" data-array="other"></div>
91+
</section>
92+
</div>
93+
<p class="note reveal" data-t="note">奖励达到后请按 App 内邀请明细与后台记录联系兑换。为防止刷量,截图不能作为有效邀请依据。</p>
94+
</aside>
95+
</div>
96+
</main>
97+
98+
<footer class="footer" data-t="footer">活动解释权与兑换记录以后台数据为准</footer>
99+
</div>
100+
</body>
101+
</html>

0 commit comments

Comments
 (0)