Skip to content

Commit 4e04a0c

Browse files
committed
feat: add trust safety defaults
1 parent 366ea33 commit 4e04a0c

21 files changed

Lines changed: 286 additions & 33 deletions

defaults/functions/pages/[[path]].js

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ export async function onRequest(context) {
3232
}
3333

3434
if (hasStaticPageAlias(slug)) {
35-
return renderAsset(request, env, `/${slug}.html`);
35+
return renderAsset(request, env, staticPageAliasPath(slug));
3636
}
3737

3838
if (slug === "deactivated") {
@@ -247,7 +247,13 @@ const statePages = {
247247
}
248248
};
249249

250-
const staticPageAliases = new Set(["abuse", "privacy", "security", "terms"]);
250+
const staticPageAliases = new Map([
251+
["abuse", "/abuse.html"],
252+
["privacy", "/privacy.html"],
253+
["security", "/security.html"],
254+
["terms", "/terms.html"],
255+
["trust-safety", "/abuse.html"]
256+
]);
251257

252258
function hasStatePage(state) {
253259
return Object.hasOwn(statePages, state);
@@ -257,6 +263,10 @@ function hasStaticPageAlias(slug) {
257263
return staticPageAliases.has(slug);
258264
}
259265

266+
function staticPageAliasPath(slug) {
267+
return staticPageAliases.get(slug);
268+
}
269+
260270
async function renderStatePage(request, env, state) {
261271
const page = statePages[state];
262272

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
Contact: https://www.vanityURLs.link/en/docs/
2+
Policy: https://www.vanityURLs.link/en/docs/
3+
Canonical: https://www.vanityURLs.link/.well-known/security.txt
4+
Preferred-Languages: en
5+
Expires: 2027-01-01T00:00:00Z

defaults/public/_tests/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ <h3>Pages</h3>
2525
<li><a href="/_stats/">Stats</a></li>
2626
<li><a href="/privacy">Privacy</a></li>
2727
<li><a href="/terms">Terms</a></li>
28-
<li><a href="/abuse">Trust &amp; Safety</a></li>
28+
<li><a href="/trust-safety">Trust &amp; Safety</a></li>
2929
<li><a href="/security">Security</a></li>
3030
</ul>
3131
</section>

defaults/public/abuse-report.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Abuse report template
2+
3+
Short URL:
4+
5+
Destination reached:
6+
7+
Reason for report:
8+
9+
Observed date and time:
10+
11+
Reporter contact:
12+
13+
Additional context:
14+
15+
Do not include sensitive personal information unless it is necessary for the report.

defaults/public/de/abuse.html

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
<!doctype html>
2+
<html lang="de">
3+
<head>
4+
<meta charset="utf-8">
5+
<meta name="viewport" content="width=device-width,initial-scale=1">
6+
<title>Vertrauen und Sicherheit | vanityURLs</title>
7+
<meta name="description" content="Informationen zu Vertrauen und Sicherheit für diese vanityURLs-Instanz">
8+
<meta name="robots" content="noindex,nofollow">
9+
<link rel="icon" type="image/svg+xml" href="/favicon.svg">
10+
<link rel="stylesheet" href="/style.css?v=20260504">
11+
</head>
12+
<body>
13+
<main class="legal-page">
14+
<article class="legal-content">
15+
<header class="instance-brand" aria-label="VanityURLs">
16+
<h1 class="instance-brand-title"><a href="/de/" aria-label="VanityURLs"><span>Vanity</span><span>URLs</span></a></h1>
17+
<p class="instance-brand-subtitle">Ein Kurzlink-Dienst, betrieben mit vanityURLs</p>
18+
</header>
19+
<h2 class="legal-title">Vertrauen und Sicherheit</h2>
20+
<p class="legal-note" data-v8s-default-template="true">Standardvorlage, die vom Instanzbetreiber angepasst werden muss.</p>
21+
22+
<h3>Schädliche oder unsichere Nutzung melden</h3>
23+
<p>Melde Kurzlinks, die für Phishing, Malware, Spam, Identitätsmissbrauch, Belästigung, Sicherheitsprobleme oder einen anderen schädlichen Zweck genutzt zu werden scheinen.</p>
24+
25+
<nav class="page-links" aria-label="Instanzseiten">
26+
<a href="/de/terms.html">Bedingungen</a>
27+
<a href="/de/abuse.html">Vertrauen und Sicherheit</a>
28+
</nav>
29+
30+
<a class="redirected-badge" href="https://vanityURLs.link" target="_blank" rel="noreferrer" aria-label="VanityURLs">
31+
<picture>
32+
<source srcset="/de/v8s-redirected-dark.svg" media="(prefers-color-scheme: dark)">
33+
<img src="/de/v8s-redirected.svg" alt="V8S weitergeleitet von VanityURLs">
34+
</picture>
35+
</a>
36+
</article>
37+
</main>
38+
</body>
39+
</html>

defaults/public/en/404.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ <h2 id="status-title">This short link does not exist</h2>
3939
<nav class="page-links" aria-label="Instance pages">
4040
<a href="/privacy">Privacy</a>
4141
<a href="/terms">Terms</a>
42-
<a href="/abuse">Trust &amp; Safety</a>
42+
<a href="/trust-safety">Trust &amp; Safety</a>
4343
<a href="/security">Security</a>
4444
</nav>
4545

defaults/public/en/abuse.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ <h3>Other concerns</h3>
3434
<nav class="page-links" aria-label="Instance pages">
3535
<a href="/privacy">Privacy</a>
3636
<a href="/terms">Terms</a>
37-
<a href="/abuse">Trust &amp; Safety</a>
37+
<a href="/trust-safety">Trust &amp; Safety</a>
3838
<a href="/security">Security</a>
3939
</nav>
4040

defaults/public/en/disabled.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ <h2 id="status-title">This short link has been disabled</h2>
4040
<nav class="page-links" aria-label="Instance pages">
4141
<a href="/privacy">Privacy</a>
4242
<a href="/terms">Terms</a>
43-
<a href="/abuse">Trust &amp; Safety</a>
43+
<a href="/trust-safety">Trust &amp; Safety</a>
4444
<a href="/security">Security</a>
4545
</nav>
4646

defaults/public/en/expand/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ <h1 id="brand-title"><span>Dicai.</span><span>re</span></h1>
9393
<nav class="page-links" aria-label="Instance pages">
9494
<a href="/privacy">Privacy</a>
9595
<a href="/terms">Terms</a>
96-
<a href="/abuse">Trust &amp; Safety</a>
96+
<a href="/trust-safety">Trust &amp; Safety</a>
9797
<a href="/security">Security</a>
9898
</nav>
9999

defaults/public/en/expired.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ <h2 id="status-title">This short link is expired</h2>
4141
<nav class="page-links" aria-label="Instance pages">
4242
<a href="/privacy">Privacy</a>
4343
<a href="/terms">Terms</a>
44-
<a href="/abuse">Trust &amp; Safety</a>
44+
<a href="/trust-safety">Trust &amp; Safety</a>
4545
<a href="/security">Security</a>
4646
</nav>
4747

0 commit comments

Comments
 (0)