diff --git a/Pruebas-Lauta.js b/Pruebas-Lauta.js new file mode 100644 index 00000000..e69de29b diff --git a/index.html b/index.html index 75772b2a..36893c23 100644 --- a/index.html +++ b/index.html @@ -105,7 +105,7 @@ - + diff --git a/js/main.js b/js/main.js index e69de29b..96660395 100644 --- a/js/main.js +++ b/js/main.js @@ -0,0 +1,47 @@ + + + +const $form = document.querySelector("#carta-a-santa"); + +const ciudad = $form.ciudad.value; +const nombre = document.querySelector("#nombre").value; +const comportamiento = $form.comportamiento.value; +const descripcionRegalo = $form["descripcion-regalo"].value + + + + +function validarNombre(nombre){ + if (nombre.length === 0) { + return "El nombre tiene que tener al menos 1 caracter" + } + + if (nombre.length >= 50) { + return "El nombre tiene que tener menos de 50 caracteres" + } + return " "; +} + + + +function validarCiudad(ciudad){ + + if(ciudad.length === 0){ + return "No seleccionaste ninguna provincia" + } + + return " "; +} + +function validarDescripcionRegalo(descripcion){ + if(descripcion.length === 0){ + return "Tienes que escribir la descripción del regalo." + } + + if(descripcion.length >= 100){ + return "Tiene que ser menor a 100 caracteres." + } + + return " "; +} + diff --git a/js/pruebas.js b/js/pruebas.js index 9cbb4229..0a3a8226 100644 --- a/js/pruebas.js +++ b/js/pruebas.js @@ -1,15 +1,50 @@ function probarValidarNombre() { console.assert( - validarNombre('') === 'Este campo debe tener al menos 1 caracter', + validarNombre("") === 'El nombre tiene que tener al menos 1 caracter', 'Validar nombre no validó que el nombre no sea vacío', ); console.assert( - validarNombre( + validarNombre( '111111111111111111111111111111111111111111111111111111111111111111111111111111111111111') === - 'Este campo debe tener menos de 50 caracteres', + 'El nombre tiene que tener menos de 50 caracteres', 'Validar nombre no validó que el nombre sea menor a 50 caracteres', ); + + console.assert( + validarNombre("fabricio") === " ", + " ", + ) +} + + + +function probarValidarCiudad(){ + console.assert( + validarCiudad("") === "No seleccionaste ninguna provincia", + 'Validar ciudad no validó que la ciudad sea igual a vacio', + ) +} + + + +function probarValidarDescripcionRegalo(){ + console.assert( + validarDescripcionRegalo("") === "Tienes que escribir la descripción del regalo.", + 'Validar descripcion no validó que la desceipcion sea igual a vacio', + + ); + + console.assert( + validarDescripcionRegalo("1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111") === + "Tiene que ser menor a 100 caracteres.", + 'Validar descripcion no validó que la descripcion sea igual a mayor a 100 caracteres', + + ); } probarValidarNombre(); +probarValidarCiudad(); +probarValidarDescripcionRegalo(); + + diff --git a/tarea/clase-10-SIMON/simon.css b/tarea/clase-10-SIMON/simon.css new file mode 100644 index 00000000..e69de29b diff --git a/tarea/clase-10-SIMON/simon.html b/tarea/clase-10-SIMON/simon.html new file mode 100644 index 00000000..f8394c28 --- /dev/null +++ b/tarea/clase-10-SIMON/simon.html @@ -0,0 +1,75 @@ + + + + + + + Simon dice + + + + + +
+
+
+ + +
+
+

Ronda # 0

+
+
+ +
+
+
+
+
+
+
A
+
+
+
B
+
+
+
+
+
C
+
+
+
D
+
+
+
+ + + + + + + diff --git a/tarea/clase-10-SIMON/simon.js b/tarea/clase-10-SIMON/simon.js new file mode 100644 index 00000000..c6e0d622 --- /dev/null +++ b/tarea/clase-10-SIMON/simon.js @@ -0,0 +1,123 @@ +console.log("PROBANDO PROBANDO") + +let secuenciaMaquina= []; +let secuenciaUsuario = []; +let ronda = 0 ; + +document.querySelector("button[type=button]").onclick = comenzarJuego; +actualizarEstado('Tocá "Empezar" para jugar!'); +actualizarNumeroRonda('-'); +bloquearInputUsuario(); + + + +function comenzarJuego(){ + reiniciarEstado(); + manejarRonda(); +} + +function reiniciarEstado(){ + secuenciaMaquina=[]; + secuenciaUsuario=[]; +} + +function manejarRonda (){ + actualizarEstado("Turno de la Maquina"); + bloquearInputUsuario(); + + const $nuevoCuadro = obtenerCuadroAleatorio(); + secuenciaMaquina.push($nuevoCuadro) + + const RETRASO_TURNO_JUGADOR =(secuenciaMaquina.length + 1) * 1000; + + secuenciaMaquina.forEach(function($cuadro, index) { + const RETRASO_MS = (index +1) *1000; + setTimeout(function(){ + resaltar($cuadro); + }, RETRASO_MS); + }) + + setTimeout(function() { + actualizarEstado('Turno del jugador'); + desbloquearInputUsuario(); + }, RETRASO_TURNO_JUGADOR); + + secuenciaUsuario = []; + ronda++; + actualizarNumeroRonda(ronda); + +} + +function manejarInputUsuario (e){ + const $cuadro = e.target; + resaltar($cuadro); + secuenciaUsuario.push($cuadro); + + const $cuadroMaquina = secuenciaMaquina[secuenciaUsuario.length - 1]; + if($cuadro.id !== $cuadroMaquina.id){ + perder(); + return; + } + + if (secuenciaUsuario.length === secuenciaMaquina.length) { + bloquearInputUsuario(); + setTimeout(manejarRonda, 1000); + } + +} + +function obtenerCuadroAleatorio() { + const $cuadros = document.querySelectorAll('.cuadro'); + const indice = Math.floor(Math.random() * $cuadros.length); + return $cuadros[indice]; + } + + function actualizarNumeroRonda(ronda) { + document.querySelector('#ronda').textContent = ronda; + } + + function actualizarEstado(estado, error = false) { + const $estado = document.querySelector('#estado'); + $estado.textContent = estado; + if (error) { + $estado.classList.remove('alert-primary'); + $estado.classList.add('alert-danger'); + } else { + $estado.classList.remove('alert-danger'); + $estado.classList.add('alert-primary'); + } + } + + function resaltar($cuadro) { + $cuadro.style.opacity = 1; + setTimeout(function() { + $cuadro.style.opacity = 0.5; + }, 500); + } + + function bloquearInputUsuario() { + document.querySelectorAll('.cuadro').forEach(function($cuadro) { + $cuadro.onclick = function() { + }; + }); + } + + function desbloquearInputUsuario() { + document.querySelectorAll('.cuadro').forEach(function($cuadro) { + $cuadro.onclick = manejarInputUsuario; + }); + } + + function reiniciarEstado(){ + let secuenciaMaquina= []; + let secuenciaUsuario = []; + let ronda = 0 ; + } + + + function perder() { + bloquearInputUsuario(); + actualizarEstado('Perdiste! Tocá "Empezar" para jugar de nuevo!', true); + +} +