knso and Claude Opus 5.5
0dc57fe5e8
News: Aufbewahrung, Datenschutz-Abschnitt und Leistungsbeschreibung (Entwurf)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 17:23:41 +00:00
knso and Claude Opus 5.5
035d1d5517
Einbau-Skript news.js für Kundenwebsites
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 17:16:37 +00:00
knso and Claude Opus 5.5
5a09d060a1
Portal: Fortschritt unter Projekte, neuer Tab Funktionen mit News-Editor
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 17:06:02 +00:00
knso and Claude Opus 5.5
6dac6aa073
Admin: News je Projekt aktivieren und abschalten
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:56:41 +00:00
knso and Claude Opus 5.5
a421308019
News: Cache-Buster für Bild-URLs, HEAD, Limiter-Feinschliff
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:52:47 +00:00
knso and Claude Opus 5.5
319f8937aa
News: Kunden-API und öffentliche Lese-API
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:49:39 +00:00
knso and Claude Opus 5.5
d320730251
News: Beiträge – Titel optional, Datumsprüfung, Bildregeln
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:45:42 +00:00
knso and Claude Opus 5.5
434bab0b7a
News: Beiträge, Anzeigedauer und öffentliche Seitenansicht
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:43:24 +00:00
knso and Claude Opus 5.5
ad0b08f32a
News: Fotos mit Pixelgrenze, sauberer Fehlerzuordnung und mehr Tests
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:40:24 +00:00
knso and Claude Opus 5.5
ac7375e889
News: Fotos verkleinern und Metadaten entfernen (sharp)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:38:33 +00:00
knso and Claude Opus 5.5
8374a570aa
Funktionen: Bestellung serialisiert, Sitzung nachtragen, Freischaltung einmalig
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:35:59 +00:00
knso and Claude Opus 5.5
0cc35bf1a5
Funktionen: Buchung per Stripe, Webhook, Mails und Freischalt-Job
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:33:48 +00:00
knso and Claude Opus 5.5
770cbe32b7
Funktionen: Bestellschutz, serialisiertes markPaid, idx_session
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:29:12 +00:00
knso and Claude Opus 5.5
4b1df8fbfa
Funktionen: Zustände, Ticket beim Kauf, Freischaltung bei geschlossenem Ticket
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:27:27 +00:00
knso and Claude Opus 5.5
16fbb03c13
Stripe: Einmalpreis News-Einrichtung 30 €
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:24:21 +00:00
knso and Claude Opus 5.5
85bee3190c
Schema: portalFeatures-Zustände und newsPosts
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 16:24:21 +00:00
Claude and Claude Opus 5.5
8acc743cf7
Abo-Bedingungen Fassung 5: Unterstützung in § 4, Fassung 4 archiviert
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 15:26:39 +00:00
Claude and Claude Opus 5.5
88854aa2b4
Push-Zeitmail: Zeit nur in 15-Minuten-Schritten
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 15:09:12 +00:00
Claude and Claude Opus 5.5
7da4452bbd
Unterstützung: eigene Zeilen und Gesamtzeit in den Projektdetails
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 15:08:16 +00:00
Claude and Claude Opus 5.5
7c6b0c906b
Unterstützung: Rechenregel und Abzug im Abo-Stundenkonto
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 15:01:57 +00:00
Claude and Claude Opus 5.5
c4fab31603
Push-Zeitmail: Zeit-Knöpfe gleich breit
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 13:47:11 +00:00
Claude and Claude Opus 5.5
6643283c6f
Push-Zeitmail: Review-Fixes (Rate-Limit begrenzt, kein NaN-Datum, Störung ≠ gelöscht)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 13:46:04 +00:00
Claude and Claude Opus 5.5
7d4767a137
Push-Zeitmail: Webhook schickt Mail nach neuem Git-Arbeitsblatt
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 13:43:00 +00:00
Claude and Claude Opus 5.5
a28ae21389
Push-Zeitmail: Bestätigungsseite /zeit
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 13:41:57 +00:00
Claude and Claude Opus 5.5
1a1005d099
Push-Zeitmail: Vorlage T15, Zuordnung Pusher → Mitarbeiter, Versand
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 13:39:12 +00:00
Claude and Claude Opus 5.5
ec3f22d98e
Push-Zeitmail: Zeit für Git-Arbeitsblatt eintragen
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 13:34:17 +00:00
Claude and Claude Opus 5.5
5b7365b99e
Push-Zeitmail: signierter Token für Zeit-Links
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 13:33:39 +00:00
Claude and Claude Opus 5.5
d7c2027d3f
2FA-Login: Prüfung schlägt nicht offen fehl, Fehlversuche vor dem Aufruf zählen
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:39:24 +00:00
Claude and Claude Opus 5.5
acc86c267b
Skript: 2FA für Mitarbeiter anzeigen, einschalten, abschalten
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:32:34 +00:00
Claude and Claude Opus 5.5
0555a2274d
Wechsel Ticketsystem → Projekt-Admin per Einmal-Link, Rückweg-Button
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:31:10 +00:00
Claude and Claude Opus 5.5
9b14a74fcc
Portal-Login: E-Mail-Code für Mitarbeiter mit 2FA
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:29:36 +00:00
Claude and Claude Opus 5.5
25f15c0ecb
Portal: offene Mitarbeiter-Code-Anmeldungen (staffMfa)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:27:38 +00:00
Claude and Claude Opus 5.5
23d78815f9
Portal-Login: Appwrite-Sitzung merken, MFA-Aufrufe im Namen der Sitzung
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:27:05 +00:00
Claude and Claude Opus 5.5
d5c70a5bd6
Gesamtprüfung: Zeitlimit für Gitea, Aufräumen ohne Weiterleitung
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
ed8c0f82d5
Webhook: nach Umzug Repo-Adresse aus dem aktuellen Namen
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
a5da4849e5
Schnittstellen für Import, Zuweisen, Nachtragen; Webhook wartet auf Umzug
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
5c39640224
Neue Repos importieren, Abgleich ohne Subdomains, Selbstheilung nur für gehostete Projekte
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
5ce8aa6fbb
Zuweisen: Warnungen statt Abbruch, Zuweisung unter der Projekt-Sperre
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
a960701d48
Zuweisen mit Umzug und Nachtragen der Pushes
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
405b2a0485
Umzug: Webhook-Adresse aus config.url, Aufräumen auch nach Selbstheilung
...
Fix round 1 (Review C1/I1/I2/I3, Controller-Ruling R11):
- C1 (kritisch): Hooks haben in echtem Gitea kein Top-Level-url, nur config.url -
isInternalRepo/deletePortalHooks lasen bisher ein Feld, das es in Produktion nicht gibt.
- I1: Schritt-2-Namensvergleich jetzt ohne Ruecksicht auf Gross-/Kleinschreibung.
- I2: fs.rm in Schritt 9 gegen EACCES/EBUSY/ENOTEMPTY & Co. abgesichert.
- I3: Aufraeumen (Cache, alter Einzel-Webhook, Preview-Verzeichnis) laeuft jetzt ueber den
neuen idempotenten finishMove()-Baustein in jedem Fall, in dem das Repo tatsaechlich in
WEBklar liegt - auch nach einem Appwrite-Fehler, bei Selbstheilung und bei einem schon
dort liegenden Repo (WARN.hookNotRemoved bei fehlgeschlagenem Loeschen).
- Fake Gitea: Hook-Form ohne Top-Level-url, 301 mit relativer Location (auch fuer
Unterpfade) wie im echten Gitea 1.25.2, failNext() fuer gezielte Fehler in Tests.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
6e6c9a4c24
Umzug zugewiesener Repos nach WEBklar
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
51c4852488
Push-Historie: Obergrenze beim Blättern, Test für HeadCommit
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
e409c11d5c
Push-Historie aus den Gitea-Aktivitäten lesen
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
8d5de87ead
Push-Arbeitsblätter: deutsche Zeit, keine System-Pushes, keine Doppelten
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
531ee2a02b
Gitea-Client herausgelöst, Konfiguration für Organisation und System-Konto, Test-Nachbauten
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
ea71b3f1c3
Sperren: Timeout eines Wartenden hebt die Sperre nicht auf
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
679f996597
Bausteine: slugify mit Umlauten, deutsche Zeit, Sperren
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-30 10:21:34 +00:00
Claude and Claude Opus 5.5
8c9d28c30f
Profilbild: zufälliger DiceBear-Avatar (Big Smile) pro Kunde
...
Der Server erzeugt das SVG lokal unter /api/avatar.svg (Seed = Kunden-ID),
es geht also keine Anfrage an dicebear.com. Die Initialen bleiben als
Fallback, bis das Bild geladen ist.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-29 16:36:49 +00:00
Claude and Claude Opus 5.5
e4efdac226
Hosting-Abo: Preis 15 € -> 20 € pro Monat (Vertragsbedingungen v4, Katalog, Leitfaden)
...
- server/config.js: amountCents 2000, lookup_key webklar_hosting_monatlich_2000
- ensurePrice haengt einen neuen Preis an das vorhandene Stripe-Produkt (metadata.webklar),
statt ein zweites "WEBklar Hosting-Abo" anzulegen
- abo-bedingungen.html (Uebersicht, Preise, Leistungsbeschreibung) + PDF, Leitfaden + PDF
- Tests auf 20 € umgestellt (399/399)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-29 16:29:01 +00:00
Claude and Claude Opus 5.5
78b4d7b7fe
Livegang: Vertragsbedingungen Version 4 und Datenschutzerklärung Stand 30.09.2026
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-09-29 16:03:39 +00:00