# KontaktWerk CRM

Installations- und Bedienungsanleitung

## 1. Installation

### 1.1 Windows (EXE – Portable)

1. KontaktWerk-Windows.zip herunterladen und entpacken
2. `KontaktWerk.exe` starten
3. Browser öffnet sich automatisch auf `http://localhost:8000`
4. Login: ADMIN / admin

### 1.2 Windows (Setup mit Konsole)

1. KontaktWerk-Windows-Setup.zip herunterladen und entpacken
2. `setup.bat` als Administrator ausführen
3. Setup fragt: Installationsverzeichnis, Port, Admin-Passwort
4. Desktop-Verknüpfungen werden automatisch erstellt

Voraussetzung: Python 3.10+ muss installiert sein (python.org). Bei der Installation "Add Python to PATH" anhaken!

### 1.3 Linux (Konsolen-Setup)

    tar xzf kontaktwerk-linux.tar.gz
    cd kontaktwerk
    sudo ./setup.sh

Das Setup fragt interaktiv nach Installationsverzeichnis, Port, Domain (optional für Nginx+SSL) und Admin-Passwort. Richtet automatisch einen Systemd-Service ein.

### 1.4 Linux (Manuell)

    tar xzf kontaktwerk-linux.tar.gz
    cd kontaktwerk
    ./install.sh        # Venv + Dependencies
    ./start.sh          # Starten auf Port 8000
    sudo ./install-service.sh   # Optional: Systemd-Service

## 2. Erster Start

1. Browser öffnen: `http://localhost:8000` (oder konfigurierte Domain)
2. Einloggen mit ADMIN und dem gewählten Passwort
3. Unter Einstellungen den App-Namen anpassen
4. Unter Einstellungen → Gruppen die Organisationsgruppen anlegen
5. Optional: Unter Einstellungen → Kategorien & Status die Dropdowns anpassen

## 3. Bedienung

### 3.1 Kontakte

Über Kontakte in der Sidebar Personen verwalten. Über Organisationen Firmen/Vereine.

- + Kontakt – Neue Person anlegen (Anrede, Name, Adresse, Kommunikation)
- Beziehungen – Personen miteinander verknüpfen (Mitarbeiter von, Kennt, etc.)
- Gruppen – Kontakte Organisationsgruppen zuweisen
- Tags – Freie Schlagwörter vergeben
- Branchen – Branchenzuordnung
- Dokumente – Dateien an Kontakte anhängen

### 3.2 Kampagnen

Unter Kampagnen Mailings, Telefonaktionen oder Einladungen organisieren.

- Kampagne anlegen mit Titel, Typ, Status, Projekt
- Kontakte zuweisen – einzeln oder über die Recherche
- Status pro Kontakt verfolgen (Neu → Kontaktiert → Reagiert → ...)
- Bulk-Aktionen: Status/Notiz für alle Kontakte gleichzeitig setzen
- + Als Aktivität: Aktion in der Kontakthistorie dokumentieren
- CSV-Export und E-Mail-Liste exportieren

### 3.3 Veranstaltungen

- Veranstaltung anlegen (Titel, Datum, Ort, Typ, Kampagne)
- Teilnehmer hinzufügen mit Rolle (Teilnehmer, Referent, Organisator)
- Teilnehmer-Status verfolgen (Eingeladen → Zugesagt → Teilgenommen)

### 3.4 Aktivitäten

Jede Interaktion dokumentieren – E-Mails, Telefonate, Gespräche, Aufgaben.

- Art wählen (E-Mail, Telefonat, Persönlich, Aufgabe, etc.)
- Status: Information, Offen, Erledigt
- Fälligkeitsdatum und Zuweisung an Mitarbeiter
- Filterbar nach Art, Status, Zeitraum, Benutzer

### 3.5 Spenden

- Einzel- und Dauerspenden erfassen
- Zahlungsart und Quittungsstatus verwalten
- Kampagnen-Zuordnung
- Spendenbericht nach Jahr

### 3.6 Recherche

Kontakte nach beliebigen Kriterien filtern:

- Gruppen, Tags, Branchen, PLZ-Bereich
- Aktivitäten (hat/hat nicht, Zeitraum, Art)
- Kampagnen-Zugehörigkeit und -Status
- Recherchen speichern und wiederverwenden
- Direkt Kampagne oder Serienbrief aus Ergebnis erstellen

### 3.7 Auswertungen

Dashboard mit KPIs über Kampagnen, Veranstaltungen, Spenden. Druckbar.

## 4. Einstellungen

Bereich | Beschreibung
--- | ---
App-Name | Name der Anwendung (Sidebar + Titel)
Gruppen | Organisationsgruppen anlegen/bearbeiten/löschen
Kategorien & Status | Alle Dropdowns editieren (Aktivitätsarten, Status-Werte, Typen, Rollen, Anreden, Titel etc.)
Branchen | Branchenliste verwalten
Benutzer | Benutzerkonten anlegen (nur Admins)
Daten-Import | Kontakte/Aktivitäten aus Excel importieren
Export | Kontakte als Excel exportieren
Backup | Komplettes Backup als ZIP herunterladen (DB + Uploads + Config)
Backup wiederherstellen | Backup-ZIP hochladen und Daten wiederherstellen
Blacklist | DSGVO-gesperrte Kontakte verwalten
Suchindex | Volltextindex neu aufbauen

## 5. Tastenkürzel

Kürzel | Funktion
--- | ---
`Ctrl+K` | Globale Suche öffnen

## 6. Backup & Sicherheit

- Backup erstellen: Einstellungen → "Backup herunterladen" – enthält Datenbank, Uploads und Konfiguration als ZIP
- Wiederherstellen: ZIP-Datei hochladen – aktuelle DB wird vorher automatisch gesichert
- Passwort ändern: Aktuell nur über die Benutzerverwaltung (Admin)

Empfehlung: Regelmäßig Backups erstellen und extern sichern!

## 7. Server-Verwaltung (Linux)

    systemctl status kontaktwerk      # Status prüfen
    systemctl restart kontaktwerk     # Neustart
    systemctl stop kontaktwerk        # Stoppen
    journalctl -u kontaktwerk -f      # Live-Logs

## 8. Systemvoraussetzungen

| Windows | Linux
--- | --- | ---
OS | Windows 10/11 | Ubuntu 20.04+, Debian 11+
Python | 3.10+ (für Setup) | 3.10+
RAM | 512 MB | 512 MB
Speicher | 100 MB + Daten | 100 MB + Daten
Browser | Chrome, Firefox, Edge (aktuell)

KontaktWerk CRM – Version 1.0.0