Files
MaszToZadanieDomowe.com/assets/js/js-warunkowe.js
2025-09-22 13:16:18 +02:00

88 lines
3.3 KiB
JavaScript

document.addEventListener("DOMContentLoaded", () => {
zad4SprawdzParzystosc();
zad7Przesun();
zad8Przelicz();
})
function zad4SprawdzParzystosc() {
document.getElementById("zad4-wynik").innerText = document.getElementById("zad4-liczba").valueAsNumber % 2 == 1 ? "Nieparzysta" : "Parzysta";
}
function zad7Przesun() {
const wiek = Number(document.getElementById("zad7-slider").value);
document.getElementById("zad7-wiek").innerHTML = "Wiek: " + (wiek >= 18 ? "18+" : wiek);
}
function zad7Koniec() {
const wiek = Number(document.getElementById("zad7-slider").value);
if (wiek > 18) {
alert("Jesteś dorosły, ile wspólnych lat masz już na karku?");
} else if (wiek >= 11 && wiek < 17) {
alert("Jesteś nastolatkiem, dopiero zaczynasz czy już kolejny raz?");
} else if (wiek < 11) {
alert("Jesteś dzieckiem! Akysz, nie niszcz sobie życia");
}
document.getElementById('aktywne').id = 'nieaktywne';
}
function regexDlugosc(str, patern) {
const wynik = str.match(patern);
if (wynik == null) {
return 0;
}
return wynik.length;
}
function zad8Przelicz() {
/**
* @type {string}
*/
const haslo = document.getElementById("zad8-haslo").value ?? "";
const lista = document.getElementById("zad8-lista");
const sila = document.getElementById("zad8-sila");
lista.innerHTML = "";
let maleLitery = regexDlugosc(haslo, /[a-z]/g);
let duzeLitery = regexDlugosc(haslo, /[A-Z]/g);
let cyfry = regexDlugosc(haslo, /[0-9]/g);
let znakiSpecialne = regexDlugosc(haslo, /[!-/]|[;-@]|[\[-`]|[{-~]|ą|ę|ś|ż|ź|ó/g);
if (maleLitery + duzeLitery + cyfry + znakiSpecialne < 8) {
const element = document.createElement("li");
element.appendChild(document.createTextNode("Twoje hasło musi zawierać minimum 8 znaków"));
lista.appendChild(element);
} else if (maleLitery >= 1 && duzeLitery >= 1 && cyfry >= 1 && znakiSpecialne >= 1) {
lista.append(document.createTextNode("Twoje hasło jest wystarczająco silne 💪"));
}
if (maleLitery < 1) {
const element = document.createElement("li");
element.appendChild(document.createTextNode("Twoje hasło musi zawierać minimum jedną małą litere"));
lista.appendChild(element);
}
if (duzeLitery < 1) {
const element = document.createElement("li");
element.appendChild(document.createTextNode("Twoje hasło musi zawierać minimum jedną dużą litere"));
lista.appendChild(element);
}
if (cyfry < 1) {
const element = document.createElement("li");
element.appendChild(document.createTextNode("Twoje hasło musi zawierać minimum jedną cyfre"));
lista.appendChild(element);
}
if (znakiSpecialne < 1) {
const element = document.createElement("li");
element.appendChild(document.createTextNode("Twoje hasło musi zawierać minimum jeden znak specjalny"));
lista.appendChild(element);
}
let algorytm = Math.floor(Math.ceil(maleLitery / 3.5) + Math.ceil(duzeLitery / 2.5) + Math.ceil(cyfry / 0.75) + znakiSpecialne * 2);
if (algorytm > 10) {
algorytm = 10;
}
sila.innerText = "";
for (let i = 0; i < algorytm; i++) {
sila.innerText += "🏋️";
}
}