Compare commits

..

5 Commits

Author SHA1 Message Date
Starystars67 e5c15422c1 minor csp fix 2026-06-17 16:13:39 +01:00
Starystars67 e511b0a179 more policy corrections 2026-06-17 16:02:13 +01:00
Starystars67 847bcf9bac add redirects for keymaster for those coming from search engines with old data. 2026-06-17 12:33:50 +01:00
Starystars67 6b584bdfbf Add performance logging 2026-06-17 12:14:44 +01:00
Starystars67 be79e4303d Correct mistakes in policies 2026-06-16 17:48:52 +01:00
7 changed files with 51 additions and 19 deletions
+1 -1
View File
@@ -5,7 +5,7 @@
<link rel="icon" type="image/ico+xml" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>BeamMP Website</title>
<script defer src="https://analytics.beammp.com/script.js" data-website-id="9f9e912d-3470-4048-9f11-5dd360b701e7"></script>
<script defer src="https://analytics.beammp.com/script.js" data-website-id="9f9e912d-3470-4048-9f11-5dd360b701e7" data-performance="true"></script>
</head>
<body>
<div id="app"></div>
+7 -1
View File
@@ -16,7 +16,7 @@ server {
add_header X-Content-Type-Options "nosniff" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
add_header Content-Security-Policy "default-src 'self'; img-src 'self' data: https:; script-src 'self'; style-src 'self' 'unsafe-inline'; font-src 'self' data:; connect-src 'self' https://backend.beammp.com; object-src 'none'; base-uri 'self'; frame-ancestors 'none'" always;
add_header Content-Security-Policy "default-src 'self'; img-src 'self' data: https:; script-src 'self'; style-src 'self' 'unsafe-inline'; font-src 'self' data:; connect-src 'self' https://backend.beammp.com https://analytics.beammp.com; object-src 'none'; base-uri 'self'; frame-ancestors 'none'" always;
# Installer directory: serve files directly; return 404 for anything missing.
location ^~ /installer/ {
@@ -39,6 +39,12 @@ server {
access_log off;
}
# Legacy Keymaster paths moved permanently to the dedicated domain.
# Match both localized and non-localized URLs.
location ~* ^/(?:[a-z]{2}/)?(?:keymaster|k/dashboard)/?$ {
return 301 https://keymaster.beammp.com/;
}
# SPA fallback: all other paths go to index.html so Vue Router can render the
# correct view (including the NotFound page for unknown routes).
location / {
+2 -2
View File
@@ -1,12 +1,12 @@
{
"name": "beammp-website",
"version": "2.5.0",
"version": "2.5.2",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "beammp-website",
"version": "2.5.0",
"version": "2.5.2",
"dependencies": {
"@tailwindcss/typography": "^0.5.20",
"@tailwindcss/vite": "^4.1.17",
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "beammp-website",
"private": true,
"version": "2.5.0",
"version": "2.5.2",
"type": "module",
"scripts": {
"dev": "vite",
+12 -5
View File
@@ -1,6 +1,6 @@
# Privacy Policy
**Last updated: January 2026**
**Last updated:** 18th June 2026
This Privacy Policy describes how BeamMP Ltd. (“we”, “us”, or “our”) collects, uses, and protects information when you use the BeamMP website, accounts, forum, mod, server, launcher, and related online services (collectively, the “**Services**”).
@@ -52,9 +52,8 @@ We do **not** sell personal information.
Where applicable, we process personal data under the following legal bases:
- **Consent** (e.g., account registration, optional profile information)
- **Contractual necessity** (providing Services access and functionality)
- **Legitimate interests** (security, moderation, abuse prevention, site improvement & anonymised analytics)
- **Legitimate interests** (security, moderation, abuse prevention, site improvement & anonymised analytics, Preserving conversational data, FAQ or documentation through the means of data anonymisation)
- **Legal obligation** (compliance with applicable laws)
- **Data Continuity** (Preserving conversational data, FAQ or documentation though the means of data anonimisation)
---
@@ -77,7 +76,7 @@ Where required by law and appropriate, cookie consent mechanisms are employed.
We retain personal data only as long as necessary for the purposes described in this policy:
- **Server logs and IP addresses (non-account related):** typically retained up to 90 days and a maximum of 180 days
- **Server logs and IP addresses (non-account related):** typically retained for 90 days and a maximum of 180 days
- **Account-related IP addresses and logs relevant to moderation purposes:** retained up to 5 years
- **Account information, moderation actions and posted content:** retained until the account is deleted or content is removed, unless retention is required for moderation, security, continuity, or legal purposes
- **Right to Erasure & Data Deletion Requests:** You may request the deletion of your data through your profile within our Services. Accounts with posted content and/or moderator actions require a specific request to `dpo@beammp.com` for review on a case by case basis. Requests will be processed within 28 days in accordance with legal requirements.
@@ -143,6 +142,14 @@ Continued use of our Services after changes are posted constitutes acceptance of
---
## 13. Contact Us
## 13. Right to complain
If you have concerns about how we handle your personal data, please contact us first so we can try to resolve the issue. You also have the right to lodge a complaint with the Information Commissioner's Office (ICO), the UK supervisory authority for data protection matters.
You can contact the ICO via the ICO website or by calling their helpline.
---
## 14. Contact Us
If you have questions about this Privacy Policy or wish to exercise your privacy rights, please contact the BeamMP team via email at `dpo@beammp.com`.
+12 -9
View File
@@ -1,7 +1,7 @@
# Terms of Service (Websites, Forum, Services)
**Version 2026.1 United Kingdom**
**Version 2026.6 United Kingdom**
**Effective date:** 1 January 2026
**Effective date:** 18th June 2026
These Terms of Service (“**Terms**”) govern your access to and use of our websites, community forum, and related online services (collectively, the “**Services**”).
This includes our Discord Server and the provided "Official Servers".
@@ -14,9 +14,9 @@ By accessing or using the Services, you agree to these Terms.
“**We**”, “**us**”, or “**our**” refers to the operator of the Services.
**Contact:**
[Insert legal entity name]
[Insert contact email]
[Insert postal address]
Legal Name: `BeamMP Ltd.`
Email: `contact@beammp.com`
Address: `2 Queens Road, Boston, PE21 9AA, United Kingdom`
---
@@ -58,7 +58,7 @@ We grant you a limited, personal, non-exclusive, non-transferable, revocable lic
- Mods, scripts, maps, files, or data made available
- Compliance with applicable laws and regulations
- Moderation, security, and user safety
5. You agree to indemnify BeamMP and its owners of any responsibility or liability.
5. You agree to indemnify us against any liability arising from your use of user-hosted servers.
---
@@ -118,7 +118,7 @@ All intellectual property rights in the Services (including software, branding,
---
## 10. Copyright and Takedowns
If you believe content infringes your copyright, patent or intellectual rights, contact us with:
If you believe content infringes your copyright or other intellectual property rights, contact us with:
- Identification of the content or works
- Location of the infringing material
@@ -128,12 +128,15 @@ If you believe content infringes your copyright, patent or intellectual rights,
We may remove infringing material and take action at our discretion.
If your content is removed and you believe this was an error, you may submit a counter-notice to contact@beammp.com including the removed content's details, your contact information, and a good-faith explanation.
We will review and may reinstate where appropriate.
---
## 11. Enforcement and Moderation
1. We may remove content, restrict features, suspend, or terminate accounts for violation of our Terms, Rules or Policies.
2. We cooperate with law enforcement when legally required or where justifiable at our discretion in the interest of user and platform safety.
3. We make a reasonable effort to proactively monitor all content on our Services using a combination of community reports, automated tools and active moderation.
2. We cooperate with law enforcement where legally required, and may share information voluntarily where we reasonably consider it necessary to protect the safety of users or the public, or to prevent or detect crime, in line with our Privacy Policy and applicable data-protection law.
3. We make a reasonable effort to proactively monitor content on our Services using a combination of community reports, automated tools and active moderation.
---
+16
View File
@@ -86,6 +86,22 @@ const baseRoutes = [
requiresAuth: false,
},
},
// Redirect route for old keymaster
{
path: 'keymaster',
redirect: (to) => {
window.location.replace('https://keymaster.beammp.com/')
return `/${to.params.locale || 'en'}`
},
},
{
path: 'k/dashboard',
redirect: (to) => {
window.location.replace('https://keymaster.beammp.com/')
return `/${to.params.locale || 'en'}`
},
},
]
const routes = [