# OnBoarding Controllers

Multi-step onboarding wizard that collects user profile, smoking behavior, quitting history, and processes program selection with payment.

## Base Controllers

| File | Description |
|------|-------------|
| `OnBoardingController` | Base controller; sets locale, view prefix, session tracking, auth checks, shared view data |
| `OnBoardingAuthController` | Displays localized authorization error messages for onboarding access |

## Language Controllers

Each language directory contains step-specific controllers. English/German/Hindi/Japanese/Portuguese use a 4-controller pattern; Spanish/French use a 6-controller pattern.

### Standard Languages (4 controllers each)

| Directory | Controllers |
|-----------|------------|
| `English/` | `BasicController`, `QuittingController`, `MySmokingController`, `FinalSetupController` |
| `German/` | `BasicController`, `QuittingController`, `MySmokingController`, `FinalSetupController` |
| `Hindi/` | `BasicController`, `QuittingController`, `MySmokingController`, `FinalSetupController` |
| `Japanese/` | `BasicController`, `QuittingController`, `MySmokingController`, `FinalSetupController` |
| `Portuguese/` | `BasicController`, `QuittingController`, `MySmokingController`, `FinalSetupController` |

### Extended Languages (6 controllers each)

| Directory | Controllers |
|-----------|------------|
| `Spanish/` | `BasicController`, `CurrentStatusController`, `SmokingBehaviourController`, `QuittingController`, `FinalSetupController`, `ThoughtPatternsController` |
| `French/` | `BasicController`, `CurrentStatusController`, `SmokingBehaviourController`, `QuittingController`, `FinalSetupController`, `ThoughtPatternsController` |

## Steps

| Step | Controller | Collects |
|------|-----------|----------|
| 1 | `BasicController` | Name, age, gender |
| 2 | `QuittingController` | Quit attempts, techniques, Gympass integration |
| 3 | `MySmokingController` | Smoking behavior (8 addiction variables), health issues |
| 4 | `FinalSetupController` | Program selection, voucher generation, checkout (Stripe/Razorpay) |
