# ---------------------------------------------------------------------
# ImmoImport
# ---------------------------------------------------------------------

### Einrichtung, Upgrade, Deinstallation

#######################################################################

# Einrichtung, Schritt für Schritt erklärt

Ein Backup aller Daten mit Datenbank wird vor der Einrichtung empfohlen.

1. Modul ZIP entpacken und hier auf dem Server ablegen: /site/modules/ImmoImport/
2. Installierbare Module finden über Modules > Site > „Refresh“
3. Modul ImmoImport installieren über Modules > Site > ImmoImport „Install“
4. Die vordefinierte Modul Konfiguration im Detail überprüfen und anpassen

Das Modul ist jetzt einsatzbereit und wartet auf Daten und Befehle.
Der erste Import muss immer ein Vollabgleich sein (alle Objekte enthalten).
Alle nachfolgenden Aktualisierungen können Voll- oder Teilabgleiche sein.
Das Modul überwacht den Ordner „Upload Verzeichnis“ (Modul Konfiguration).
Nun wird eine Verbindung zwischen dem eigenen Server und der Immobilien
Software der Wahl hergestellt.

1. Neuen FTP Nutzer anlegen mit dem Server Zielpfad „Upload Verzeichnis“
2. FTP Daten in der Immobilien Software als OpenImmo Schnittstelle eintragen
3. Einen OpenImmo Vollabgleich anstoßen (Transfer aller Objekte zum Server)
4. Prüfen ob die Verbindung funktioniert und Daten im Upload eintreffen

Ein Vollabgleich liegt nun im korrekten Ordner. Folgende Transfers werden
oftmals automatisch durchgeführt (abhängig von der Immobilien Software).
Abschließend wird nun der eigentliche lokale Importprozess eingerichtet.

1. Die Datei /site/modules/ImmoImport/templates/immoimport_import.php
   in den Ordner /site/templates/ kopieren
2. In ProcessWire ein neues Template anlegen und mit dieser Datei verbinden
3. In ProcessWire eine neue Seite erstellen und dieser das Template zuweisen
4. In der Modul Konfiguration zur Sicherheit die „Exposé Eltern ID“ prüfen

Fertig. Der Aufruf der Import Seite im Frontend startet den Erstimport.
Alle weiteren logischen Templates und Felder werden automatisch erzeugt.
Der erste Import dauert darum länger als nachfolgende Aktionen. Alles da
und am richtigen Platz? Jeder neue Importprozess aktualisiert ab jetzt
automatisch den Objektbestand (neu, aktualisieren, löschen).

# ---------------------------------------------------------------------

Tipps. Seiten welche den Importprozess anstoßen sollten versteckt sein.
Der Importprozess sollte per Cronjob vollautomatisiert werden (empfohlen
Seitenaufruf alle 15-30 Minuten). Der Import kann manuell und oder per
Cronjob automatisch gestartet werden.

Templates. ImmoImport kümmert sich um den automatischen „Immo Import“.
Die Gestaltung der Frontend Templates (Immobilien Listung & Exposé)
kann simpel bis hochkomplex ausfallen. Die Ausgabe der Daten liegt in
den Händen der Betreiberin bzw. des Entwicklers. Kommentierte Beispiel
Templates mit Lösungsansätzen und diversen Hilfsfunktionen werden mit-
geliefert und sind hier zu finden: /site/modules/ImmoImport/templates/

1. immoimport_properties.php = Beispiel Objektliste aller Objekte
2. immoimport_expose.php = Beispiel Detailseite/Exposé eines Objekts
3. immoimport_functions.inc.php = Hilfsfunktionen

#######################################################################

# Upgrade, auf eine neuere Version aktualisieren

Ein Backup aller Daten mit Datenbank wird vor jedem Upgrade empfohlen.

1. In der Modul Konfiguration global den Import für die Zeit des
   Upgrades deaktivieren („Import ist aktiv?“ deaktivieren)
2. Bestehenden Ordner /site/modules/ImmoImport/ temporär sichern
3. Alles im Ordner /site/modules/ImmoImport/ mit neuer Version ersetzen
4. Etwaige bestehende manuell definierte Anpassungen im Ordner
   „/correction/“ aus der temporären Sicherung wiederherstellen
5. Alle Module aktualisieren unter Modules > Site > „Refresh“
6. Die Modul Konfiguration überprüfen (evtl. erscheinen neue Felder)
7. In der Modul Konfiguration den Import jetzt wieder aktivieren

Damit ist das Modul auf dem aktuellen Stand und wurde konfiguriert.
Es empfiehlt sich nun, zeitnah einen Importprozess anzustoßen und alle
Funktionen zu überprüfen (Importprozess und Frontend Ausgabe).

#######################################################################

# Deinstallation, Modul deinstallieren und Daten löschen

Eine simple Deinstallation des Moduls löscht keine Daten. Vom Modul
erstellte Seiten, Felder und Templates verbleiben standardmäßig im
System und können manuell nach Bedarf entfernt werden.

Alle vom Modul erzeugten Seiten, Felder und Templates können vor der
eigentlichen Deinstallation des Moduls optional mit Hilfsfunktionen
(„Löschhilfen“) entfernt werden. Dafür wird der Importprozess mit
zusätzlichen Löschbefehlen aufgerufen. Hilfe und mehr Details dazu
sind im Quelltext des mitgelieferten Import Templates zu finden:
/site/modules/ImmoImport/templates/immoimport_import.php

Ein Backup aller Daten mit Datenbank wird vor jeder Löschung empfohlen.

# ---------------------------------------------------------------------
