2.7 KiB
2.7 KiB
Krok 11 - Wizard - Moduly a Formulár (Krok 5)
Kontext projektu
V poslednom kroku zberu dát si používateľ vyberá sekcie webu a konfiguruje kontaktný formulár (SMTP alebo lokálny mód).
Pred implementáciou si preštuduj
docs/wizard.md- Sekcia 6 (Krok 5 - Moduly webu a kontaktny formular).docs/mvp.md- Sekcia 9 (Kontaktny formular).
Cieľ
Implementovať výber sekcií webu a konfiguráciu kontaktného formulára vrátane zabezpečeného uloženia hesla pre lokálny mód.
Požadované zmeny
- Na frontende (
index.html+wizard.js):- Checkboxy pre výber sekcií (Hero, O nás, Služby, Cenník, Galéria, FAQ, Kontakt).
- Prepínač pre kontaktný formulár (Zapnutý/Vypnutý).
- Výber módu formulára: SMTP alebo Lokálny.
- Polia pre SMTP (Host, Port, User, Pass, atď.).
- Pole pre heslo k lokálnemu módu.
- Na backende (
ajax.php):- Implementácia validácie pre krok 5.
- Pri lokálnom móde: Heshovanie hesla pomocou
password_hash()pred uložením dowizard_data. - Uloženie do
wizard_data.modules.
Implementačné pravidlá
- Heslo pre lokálny mód sa nikdy neukladá v plain-texte.
- Sekcia "Hero" a "Kontakt" by mali byť predvolene vybrané.
Súbory ktoré je potrebné vytvoriť
Žiadne.
Súbory ktoré je potrebné upraviť
public/index.html(DOM pre Krok 5)public/js/wizard.js(logika pre Krok 5)public/ajax.php(validácia a heshovanie hesla)
API a dátové štruktúry
Payload pre saveStep:
{
"step": 5,
"data": {
"modules": {
"pages": ["home"],
"sections": ["hero", "about", "services", "contact"],
"contact_form": {
"enabled": true,
"mode": "local",
"smtp": null,
"local_viewer": {
"password_hash": "..."
}
}
}
}
}
Frontend požiadavky
- Podmienené zobrazenie polí pre SMTP vs Lokálny mód.
- Validácia sily hesla (voliteľne).
Backend požiadavky
- Použitie
PASSWORD_DEFAULTprepassword_hash.
Testovací scenár
- Vyber sekcie "Hero", "O nás" a "Kontakt".
- Zvoľ Lokálny mód formulára a zadaj heslo "mojeheslo123".
- Klikni na "Pokračovať".
- Over v JSONe projektu, či je v
contact_form.local_viewer.password_hashuložený hash, nie plain-text.
Definition of Done
- Konfigurácia modulov a formulára je uložená.
- Heslo pre lokálny prehliadač správ je bezpečne zaheshované.
- UI správne prepína medzi módmi formulára.
Obmedzenia
- Žiadne odosielanie testovacích mailov v tomto kroku.
Výstup
- zoznam vytvorených súborov
- zoznam upravených súborov
- stručné zhrnutie vykonaných zmien
- prípadné otvorené problémy