@@ -214,8 +214,9 @@ inputbutton1.addEventListener("click", function () {
214214} )
215215var inputBuscar = document . querySelector ( "#input-buscar" )
216216var inputButton2 = document . querySelector ( "#input-name-finder" )
217+ //Validación del input nombre para buscar alumno
217218inputBuscar . addEventListener ( "input" , function validarInputBuscar ( ) {
218- if ( inputBuscar . value && ! ( noNumberOnName ( inputBuscar . value , numeros ) ) && inputBuscar . value . length >= 4 ) {
219+ if ( inputBuscar . value && ! ( noNumberOnName ( inputBuscar . value , numeros ) ) ) {
219220 inputBuscar . classList . add ( "is-valid" )
220221 inputButton2 . disabled = false
221222 if ( inputBuscar . classList . contains ( "is-invalid" ) ) {
@@ -236,13 +237,15 @@ inputBuscar.addEventListener("blur", function(){
236237 inputBuscar . classList . remove ( "is-invalid" )
237238 }
238239} )
240+ //Funciones para cambiar primeras letras a mayúsculas en string sin " " y con " " (espacios vacíos)
239241function primeraLetraMayus ( string ) {
240242 return string . charAt ( 0 ) . toUpperCase ( ) + string . slice ( 1 )
241243}
242244function noSpaceLetter ( string ) {
243245 var noSpaceLetter = string . indexOf ( " " )
244246 return string . charAt ( 0 ) . toUpperCase ( ) + string . slice ( 1 , noSpaceLetter ) + " " + string . charAt ( noSpaceLetter + 1 ) . toUpperCase ( ) + string . slice ( noSpaceLetter + 2 )
245247}
248+ //Función para buscar alumno por nombre parcial o completo
246249inputButton2 . addEventListener ( "click" , function ( ) {
247250 inputBuscar = inputBuscar . value . toLowerCase ( ) ;
248251 inputBuscar = ( inputBuscar . indexOf ( " " ) == - 1 ) ? primeraLetraMayus ( inputBuscar ) : noSpaceLetter ( inputBuscar ) ;
@@ -300,3 +303,57 @@ inputButton2.addEventListener("click", function () {
300303 }
301304 console . log ( buscarAlumno ( ) )
302305} )
306+ //Función para validar la eliminación del alumno por dni
307+ var deleteStudent = document . querySelector ( "#input-delete-dni" )
308+ var inputButton3 = document . querySelector ( "#input-delete-student" )
309+ function dniExistente ( ) {
310+ for ( var i = 0 ; i <= document . querySelectorAll ( "li" ) . length - 1 ; i ++ ) {
311+ if ( deleteStudent . value == document . querySelectorAll ( "li" ) [ i ] . id ) {
312+ return true
313+ }
314+ }
315+ return false
316+ }
317+ deleteStudent . addEventListener ( "input" , function ( ) {
318+ if ( dniExistente ( ) ) {
319+ deleteStudent . classList . add ( "is-valid" )
320+ inputButton3 . disabled = false
321+ if ( deleteStudent . classList . contains ( "is-invalid" ) ) {
322+ deleteStudent . classList . replace ( "is-invalid" , "is-valid" )
323+ }
324+ } else {
325+ deleteStudent . classList . add ( "is-invalid" )
326+ inputButton3 . disabled = true
327+ if ( deleteStudent . classList . contains ( "is-valid" ) ) {
328+ deleteStudent . classList . replace ( "is-valid" , "is-invalid" )
329+ }
330+ }
331+ } )
332+ deleteStudent . addEventListener ( "blur" , function ( ) {
333+ if ( deleteStudent . classList . contains ( "is-valid" ) ) {
334+ deleteStudent . classList . remove ( "is-valid" )
335+ } else if ( deleteStudent . classList . contains ( "is-invalid" ) ) {
336+ deleteStudent . classList . remove ( "is-invalid" )
337+ }
338+ } )
339+ //Función para eliminar alumno por DNI
340+ inputButton3 . addEventListener ( "click" , function ( ) {
341+ var objectStudents = JSON . parse ( localStorage . getItem ( "studentInfo" ) ) ;
342+ for ( var i = 0 ; i < objectStudents . length ; i ++ ) {
343+ if ( deleteStudent . value == objectStudents [ i ] . dni ) {
344+ objectStudents . splice ( i )
345+ var newStorage = JSON . stringify ( objectStudents )
346+ localStorage . setItem ( "studentInfo" , newStorage )
347+ }
348+ }
349+ } )
350+ //Función que refresca la página
351+ var buttonRefresh = document . querySelector ( "#button-refresh" )
352+ buttonRefresh . addEventListener ( "click" , function ( ) {
353+ location . reload ( )
354+ } )
355+ //Función para remover todo del localStorage
356+ var buttonRemoveStorage = document . querySelector ( "#button-remove-storage" )
357+ buttonRemoveStorage . addEventListener ( "click" , function ( ) {
358+ localStorage . removeItem ( "studentInfo" )
359+ } )
0 commit comments