Úloha

Zadání (kontext úlohy)

Spravuješ skript, který rozhoduje, zda odeslat newsletter uživateli. V kódu jsou chyby v negacích, závorkách a ve způsobu volání funkce se side-effectem (zápis do logu). Tvým úkolem je podmínky opravit a zpřehlednit.


Cíl úlohy

Procvičíš si správné použití logických operátorů &&, ||, !, závorek a pochopíš, kdy se druhá část výrazu nemusí vyhodnotit (short-circuit).


Vstupní podmínky
  • Pracuješ s přiloženým souborem script.js.


Požadovaný výstup
  • Oprav logiku tak, aby se newsletter odeslal pouze tehdy, když platí všechno z následujícího:

    • uživatel je potvrzen (potvrzen === true),

    • má ověřený e-mail (overenEmail === true),

    • není odhlášen (odhlasen === false),

    • má souhlas se zasíláním (maSouhlas === true).

  • Zajisti, aby se funkce zapisAktivitu() vždy zavolala před rozhodnutím (mimo podmínku), aby ji nepřeskočilo zkrácené vyhodnocování.

  • Použij závorky pro jasnou a čitelnou logiku.

  • Přidej proměnnou maSouhlas (boolean) a zahrň ji do rozhodování – bez souhlasu se nikdy neodesílá.


Doplňující pokyny
  • Dávej pozor, co neguješ – operátor ! aplikuj na přesně tu část, kterou chceš popřít (např. !odhlasen).

  • Pokud je podmínka delší, rozděl ji na více řádků nebo si připrav mezivýsledky.

  • Nepoužívej ==, preferuj === / !==.

  • Nespoléhej na vyhodnocení uvnitř if s voláním funkce; side-effecty dělej mimo podmínku.


Soubor

Odkaz na js soubor