# Seva Setu - Public + Activity Flow Test

## What changed

- `/` is now a public home page. It shows published Seva Bhaav activities and Seva Daan causes without login.
- `/seva-bhaav/` and published activity detail pages are public.
- `/seva-daan/` and published cause detail pages are public.
- Employee nomination remains login-protected.
- Public activity detail intentionally hides employee-only participation instructions until login.
- Admin can create/edit/workflow/publish activities and causes.
- Employee can nominate for an activity.
- Working-hours/approval-required nominations create a Manager Approval request.
- Manager can approve/decline.
- Admin can record attendance and volunteer hours.
- Present/completed attendance credits Hearts using the seeded Heart rules.
- Employee dashboard, My Seva and My Impact now show live database data.

## No migration required

This release uses the existing schema; no columns/tables were added.

## Test flow

1. Start the app: `flask run`.
2. Open `http://127.0.0.1:5000/` in a private/incognito window. The page should load without login.
3. Login as Admin from `/auth/login` using the development button.
4. Open Admin -> Manage Activities -> Create Activity.
5. Save the activity. It starts as Draft.
6. Move Draft -> Under Review -> Approved -> Published.
7. Logout and return to `/`. The activity should now be visible publicly.
8. Open the activity publicly. Basic information is visible; employee-only logistics are hidden.
9. Login as Employee and open the activity again. Nominate yourself.
10. If the activity requires manager approval, logout and login as Manager. Open Approvals and approve the request.
11. Login as Admin. Open Manage Activities -> Attendance and mark the employee Present with volunteer hours.
12. Login as Employee. Check My Seva and My Impact; completed activity, volunteer hours and Hearts should now be visible.

## Seva Daan public test

1. Login as Admin -> Manage Causes -> Create Cause.
2. Save and move Draft -> Under Review -> Approved -> Published.
3. Logout and open `/` or `/seva-daan/`.
4. The published cause should appear publicly.
5. Payment is intentionally left disabled in this build until the approved payment gateway is selected/integrated.
