feat: switch domain from votc.jeffemmett.com to valleyofthecommons.com

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Jeff Emmett 2026-02-23 20:43:28 -08:00
parent 685bb535f8
commit 8b1d45485c
5 changed files with 13 additions and 9 deletions

View File

@ -49,7 +49,7 @@ GOOGLE_SHEET_NAME=Waitlist
MOLLIE_API_KEY=test_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Public base URL for redirects and webhooks
BASE_URL=https://votc.jeffemmett.com
BASE_URL=https://valleyofthecommons.com
# ============================================
# AI Gateway Configuration for Game Chat

View File

@ -47,7 +47,7 @@ const confirmationEmail = (application) => ({
<p>In the meantime, feel free to explore more about the Commons Hub and our community:</p>
<ul>
<li><a href="https://www.commons-hub.at/">Commons Hub Website</a></li>
<li><a href="https://votc.jeffemmett.com/">Valley of the Commons</a></li>
<li><a href="https://valleyofthecommons.com/">Valley of the Commons</a></li>
</ul>
<p>If you have any questions, reply to this email and we'll get back to you.</p>
@ -101,7 +101,7 @@ const adminNotificationEmail = (application) => ({
</div>
<p>
<a href="https://votc.jeffemmett.com/admin.html" style="display: inline-block; background: #2d5016; color: white; padding: 12px 24px; text-decoration: none; border-radius: 6px;">
<a href="https://valleyofthecommons.com/admin.html" style="display: inline-block; background: #2d5016; color: white; padding: 12px 24px; text-decoration: none; border-radius: 6px;">
Review Application
</a>
</p>

View File

@ -68,7 +68,7 @@ async function createPayment(applicationId, ticketType, weeksCount, email, first
throw new Error(`Invalid ticket type: ${ticketType}`);
}
const baseUrl = process.env.BASE_URL || 'https://votc.jeffemmett.com';
const baseUrl = process.env.BASE_URL || 'https://valleyofthecommons.com';
const description = `Valley of the Commons - ${TICKET_LABELS[ticketType] || ticketType}`;
const payment = await mollieClient.payments.create({

View File

@ -3,6 +3,7 @@
const { Pool } = require('pg');
const nodemailer = require('nodemailer');
const { syncWaitlistSignup } = require('./google-sheets');
// Initialize PostgreSQL connection pool
const pool = new Pool({
@ -47,7 +48,7 @@ const welcomeEmail = (signup) => ({
` : ''}
<p>
<a href="https://votc.jeffemmett.com/apply.html" style="display: inline-block; background: #2d5016; color: white; padding: 12px 24px; text-decoration: none; border-radius: 6px;">
<a href="https://valleyofthecommons.com/apply.html" style="display: inline-block; background: #2d5016; color: white; padding: 12px 24px; text-decoration: none; border-radius: 6px;">
Apply Now
</a>
</p>
@ -59,8 +60,8 @@ const welcomeEmail = (signup) => ({
<hr style="border: none; border-top: 1px solid #ddd; margin: 32px 0;">
<p style="font-size: 12px; color: #666;">
You received this email because you signed up at votc.jeffemmett.com.<br>
<a href="https://votc.jeffemmett.com/unsubscribe?email=${encodeURIComponent(signup.email)}">Unsubscribe</a>
You received this email because you signed up at valleyofthecommons.com.<br>
<a href="https://valleyofthecommons.com/unsubscribe?email=${encodeURIComponent(signup.email)}">Unsubscribe</a>
</p>
</div>
`
@ -145,6 +146,9 @@ module.exports = async function handler(req, res) {
involvement: involvementTrimmed
};
// Sync to Google Sheets (fire-and-forget backup)
syncWaitlistSignup(signup);
// Send welcome email
if (process.env.SMTP_PASS) {
try {

View File

@ -16,7 +16,7 @@ services:
- GOOGLE_SHEET_ID=1uZy21IjIwAES92ki6K33CtiTfEzGoUlxQ8jk3IzA0qI
- GOOGLE_SERVICE_ACCOUNT_FILE=/run/secrets/google-service-account.json
- MOLLIE_API_KEY=${MOLLIE_API_KEY}
- BASE_URL=https://votc.jeffemmett.com
- BASE_URL=https://valleyofthecommons.com
volumes:
- ./google-service-account.json:/run/secrets/google-service-account.json:ro
depends_on:
@ -24,7 +24,7 @@ services:
condition: service_healthy
labels:
- "traefik.enable=true"
- "traefik.http.routers.votc.rule=Host(`votc.jeffemmett.com`)"
- "traefik.http.routers.votc.rule=Host(`valleyofthecommons.com`) || Host(`www.valleyofthecommons.com`) || Host(`votc.jeffemmett.com`)"
- "traefik.http.services.votc.loadbalancer.server.port=3000"
networks:
- traefik-public