flowchart TD
A[Visitor / Customer] --> B[Front forms - JetFormBuilder]
B --> C{Intent?}
C -->|Quote| D[fr_booking: create/update]
C -->|Pay| E[Woo checkout]
E --> F[Woo order created]
F --> D
subgraph Content[Content layer]
P[fr_place]:::cpt
R[fr_partner]:::cpt
T[fr_tour]:::cpt
PR[fr_pricing_rule]:::cpt
end
subgraph Ops[Operations layer]
BK[fr_booking]:::cpt
end
subgraph Sales[Sales layer]
WC[Woo product - Tour]:::woo
WO[Woo order]:::woo
end
T -->|steps - repeater| P
P -->|optional owner| R
T -->|linked 1:1| WC
BK -->|for| T
BK -->|optional| WO
subgraph Routing[Distance engine]
GH[GraphHopper - Docker]:::svc
CACHE[flavoroad_distances cache]:::db
end
T -->|needs segments| GH
GH --> CACHE
CACHE --> T
classDef cpt fill:#fff,stroke:#333,stroke-width:1px;
classDef woo fill:#f7f7ff,stroke:#333,stroke-width:1px;
classDef svc fill:#fff7e6,stroke:#333,stroke-width:1px;
classDef db fill:#eef,stroke:#333,stroke-width:1px;
