diff --git a/package.json b/package.json index 20abc7c..1244834 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "lageplan", - "version": "1.0.7", + "version": "1.0.8", "description": "Feuerwehr Lageplan - Krokier-App für Einsatzdokumentation", "private": true, "scripts": { diff --git a/src/app/api/donate/checkout/route.ts b/src/app/api/donate/checkout/route.ts index 93d4b07..0e6a4ea 100644 --- a/src/app/api/donate/checkout/route.ts +++ b/src/app/api/donate/checkout/route.ts @@ -21,7 +21,7 @@ export async function POST(req: NextRequest) { const origin = req.headers.get('origin') || req.nextUrl.origin const session = await stripe.checkout.sessions.create({ - payment_method_types: ['card', 'twint'], + payment_method_types: ['card', 'twint', 'link'], mode: 'payment', line_items: [ { diff --git a/src/app/page.tsx b/src/app/page.tsx index 8908b7a..3d22dcf 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -526,10 +526,10 @@ function SupportSection() { {/* Tier preview */}
- Wähle einen Betrag auf unserer Spendenseite — Zahlung sicher via Stripe (Kreditkarte, Twint). + Wähle einen Betrag auf unserer Spendenseite — Zahlung sicher via Stripe (Kreditkarte, Twint, Apple Pay, Google Pay).
diff --git a/src/app/rapport/[token]/page.tsx b/src/app/rapport/[token]/page.tsx index fe4bb1c..ae5c351 100644 --- a/src/app/rapport/[token]/page.tsx +++ b/src/app/rapport/[token]/page.tsx @@ -72,7 +72,7 @@ export default function RapportViewerPage({ params }: { params: Promise<{ token: {/* Action bar */}{d.organisation} · {d.abteilung}
diff --git a/src/app/spenden/page.tsx b/src/app/spenden/page.tsx index d1155af..51b400a 100644 --- a/src/app/spenden/page.tsx +++ b/src/app/spenden/page.tsx @@ -10,14 +10,15 @@ import { import { Logo } from '@/components/ui/logo' const tiers = [ - { value: 5, label: 'Kaffee', emoji: '\u2615', desc: 'Ein Kaffee für die nächste Coding-Session' }, - { value: 10, label: 'Pizza', emoji: '\uD83C\uDF55', desc: 'Pizza-Abend nach einem langen Entwicklungstag' }, - { value: 25, label: 'Server', emoji: '\uD83D\uDDA5\uFE0F', desc: 'Hilft die monatlichen Serverkosten zu decken' }, + { value: 10, label: 'Kaffee', emoji: '\u2615', desc: 'Ein Kaffee für die nächste Coding-Session' }, + { value: 20, label: 'Server', emoji: '\uD83D\uDDA5\uFE0F', desc: 'Hilft die monatlichen Serverkosten zu decken' }, { value: 50, label: 'Feature', emoji: '\uD83D\uDE80', desc: 'Finanziert die Entwicklung eines neuen Features' }, ] export default function SpendenPage() { - const [amount, setAmount] = useState(10) + const [amount, setAmount] = useState(20) + const [customAmount, setCustomAmount] = useState('') + const [isCustom, setIsCustom] = useState(false) const [name, setName] = useState('') const [message, setMessage] = useState('') const [isLoading, setIsLoading] = useState(false) @@ -112,9 +113,9 @@ export default function SpendenPage() { {tiers.map(tier => ( ))} +{activeTier.desc}
-{activeTier.desc}
++ Lageplan wird seit über 2 Jahren von einem aktiven Feuerwehrmann in seiner Freizeit entwickelt. + Die App ist und bleibt kostenlos — weil jede Feuerwehr Zugang zu guten Werkzeugen haben soll, + unabhängig vom Budget. Es gibt zwar kommerzielle Alternativen, aber die Idee war immer: + Ein Werkzeug von der Feuerwehr, für die Feuerwehr. +
++ Mit deiner Spende hilfst du, dass das so bleibt. Jeder Franken fliesst direkt in + Serverkosten und Weiterentwicklung. Danke für deine Unterstützung! +
+
100% deiner Spende fliesst direkt in Serverkosten und Weiterentwicklung.
Kein Unternehmen, keine Investoren — nur ein Feuerwehrmann mit einer Idee.
diff --git a/src/components/journal/journal-view.tsx b/src/components/journal/journal-view.tsx
index 4eee8e5..4fbd189 100644
--- a/src/components/journal/journal-view.tsx
+++ b/src/components/journal/journal-view.tsx
@@ -1053,20 +1053,22 @@ export function JournalView({ projectId, projectTitle, projectLocation, einsatzl
} else {
mapScreenshot = rawScreenshot
}
- // Convert Lageplan app logo to base64 for PDF rendering
+ // Convert logo URL to base64 for PDF rendering
let logoDataUri = ''
- try {
- const logoRes = await fetch('/logo-icon.png')
- if (logoRes.ok) {
- const blob = await logoRes.blob()
- logoDataUri = await new Promise