Verbrauchsausweis Wohnen if Domain hat bereits eine vorhandene ID? if LocalStorage hat Daten? Wir vergleichen ob der LocalStorage neuer ist als die Datenbank if LocalStorage is neuer? Wir benutzen LocalStorage else Wir benutzen Daten aus der Datenbank. else Daten werden aus der Datenbank geladen. else if LocalStorage hat Daten? Daten werden aus dem LocalStorage geladen. else Formular wird leer geliefert Benutzer gibt Daten ein. Wir speichern alles im LocalStorage mit dem aktuallen Timestamp *User lädt ein Bild hoch* if Ausweis hat bereits eine id Wir verknüpfen das Bild sofort mit dem Ausweis else Wir laden das Bild hoch ohne es mit dem Ausweis zu verknüpfen if *Klick auf Weiter || Klick auf Hilfe* Wir leiten weiter auf Kundendaten mit dem entsprechenden Produkt *User gibt Kundendaten ein* if *Klick auf Speichern* if Ausweis hat bereits eine id? Wir updaten den bereits gespeicherten Ausweis mit den neuen Daten else if URL hat ein Objekt gegeben? Wir updaten das Objekt else Wir erstellen ein neues Objekt if URL hat eine Aufnahme gegeben? Wir updaten die bestehende Aufnahme else Wir erstellen eine neue Aufnahme Wir erstellen einen neuen Ausweis else *User klickt auf Bestellen* if Ausweis hat bereits eine id? Wir updaten den bereits gespeicherten Ausweis mit den neuen Daten else if URL hat ein Objekt gegeben? Wir updaten das Objekt else Wir erstellen ein neues Objekt if URL hat eine Aufnahme gegeben? Wir updaten die bestehende Aufnahme else Wir erstellen eine neue Aufnahme Wir erstellen einen neuen Ausweis if Bezahlart === "Rechnung" Wir erstellen eine Rechnung für den Ausweis und leiten auf die Payment Success Seite weiter. else Wir erstellen eine Rechnung für den Ausweis und holen uns die Checkout URL while Bezahlung ist nicht erfolgreich Wir leiten zurück auf die Kundendaten Seite zurück und fordern eine andere Bezahlart an. Wir leiten auf die Payment Success Seite weiter und senden eine Email elif *Klick auf Speichern* if Ausweis hat bereits eine id? Wir updaten den bereits gespeicherten Ausweis mit den neuen Daten else if URL hat ein Objekt gegeben? Wir updaten das Objekt else Wir erstellen ein neues Objekt if URL hat eine Aufnahme gegeben? Wir updaten die bestehende Aufnahme else Wir erstellen eine neue Aufnahme Wir erstellen einen neuen Ausweis