# RiccardoLiquidCalc – Liquidrechner

Rechner für das Mischverhältnis von E-Liquids: Basis, Aroma und Nikotin-Shots.
Erreichbar unter `/liquidrechner` (im Footer unter *Service* verlinkt).

## Zwei Modi

| Modus | Bedeutung |
| --- | --- |
| **Selbst mischen** (`diy`) | Aroma wird als Prozentanteil der Zielmenge angegeben |
| **Longfill auffüllen** (`longfill`) | Aroma ist als feste Menge schon in der Flasche |

## Rechnung

Nikotin steckt ausschließlich in den Shots:

```
Shots = Zielmenge × Zielstärke ÷ Shotstärke
Aroma = Zielmenge × Aromaanteil    (bzw. feste Aromamenge)
Basis = Zielmenge − Shots − Aroma
```

Das PG/VG-Verhältnis wird aus den Anteilen der drei Bestandteile gemischt
(je Bestandteil ist der VG-Anteil einstellbar, Standard Basis 50 / Shots 50 / Aroma 0).

Fehler (Ergebnis nicht darstellbar): Zielmenge ≤ 0, Aroma größer als Zielmenge,
Nikotin ohne Shotstärke, Shots + Aroma größer als die Zielmenge.
Hinweise: über 20 mg/ml (EU-Grenze für fertige Liquids), über 30 % Aroma,
fast keine Basis mehr übrig, Umgang mit Nikotin-Shots.

## Aufbau

* `Core/Calculator/LiquidCalculator.php` – die Rechnung, ohne Abhängigkeiten
  (`MixRequest` rein, `MixResult` raus)
* `Storefront/Controller/LiquidCalcController.php` – Route `/liquidrechner`,
  GET **und** POST: das Formular schickt sich ohne JavaScript normal ab
* `Resources/app/storefront/src/plugin/rlc-calculator.plugin.js` – **spiegelt dieselbe
  Rechnung im Browser**, damit das Ergebnis beim Tippen steht. Wird die PHP-Rechnung
  geändert, muss diese Datei mitgeändert werden (und umgekehrt).

Nach Änderungen an SCSS/JS: `bin/build-storefront.sh` **und** `bin/console theme:compile`.
