@@ -139,6 +139,17 @@ inputbutton1.addEventListener("click", function () {
139139 //Guardar el array en LocalStorage
140140 function guardarEnLocalStorage ( key , array ) {
141141 if ( Array . isArray ( array ) ) {
142+ nameValue = nameValue . toLowerCase ( )
143+ lastNameValue = lastNameValue . toLowerCase ( )
144+ function primeraLetraMayus ( string ) {
145+ return string . charAt ( 0 ) . toUpperCase ( ) + string . slice ( 1 )
146+ }
147+ function noSpaceLetter ( string ) {
148+ var noSpaceLetter = string . indexOf ( " " )
149+ return string . charAt ( 0 ) . toUpperCase ( ) + string . slice ( 1 , noSpaceLetter ) + " " + string . charAt ( noSpaceLetter + 1 ) . toUpperCase ( ) + string . slice ( noSpaceLetter + 2 )
150+ }
151+ nameValue = ( nameValue . indexOf ( " " ) == - 1 ) ? primeraLetraMayus ( nameValue ) : noSpaceLetter ( nameValue ) ;
152+ lastNameValue = ( lastNameValue . indexOf ( " " ) == - 1 ) ? primeraLetraMayus ( lastNameValue ) : noSpaceLetter ( lastNameValue )
142153 array . push ( { nombre : nameValue , dni : dniValue , apellido : lastNameValue , email : passwordValue } )
143154 var listaStorage = JSON . stringify ( array )
144155 localStorage . setItem ( key , listaStorage )
@@ -162,6 +173,8 @@ inputbutton1.addEventListener("click", function () {
162173 console . log ( mostrarLocal )
163174 //Mostrar en el DOM los datos capturados desde LocalStorage
164175 function mostrarStudent ( student ) {
176+ noStudentList = document . querySelector ( "#no-student-list" )
177+ noStudentList . innerText = ""
165178 var objectLength = JSON . parse ( localStorage . getItem ( "studentInfo" ) ) . length - 1
166179 var studentlist = document . querySelector ( "#student-list" ) ;
167180 var studentDatos = document . createElement ( "li" ) ;
@@ -201,35 +214,88 @@ inputbutton1.addEventListener("click", function () {
201214} )
202215var inputBuscar = document . querySelector ( "#input-buscar" )
203216var inputButton2 = document . querySelector ( "#input-name-finder" )
204-
217+ inputBuscar . addEventListener ( "input" , function validarInputBuscar ( ) {
218+ if ( inputBuscar . value && ! ( noNumberOnName ( inputBuscar . value , numeros ) ) && inputBuscar . value . length >= 4 ) {
219+ inputBuscar . classList . add ( "is-valid" )
220+ inputButton2 . disabled = false
221+ if ( inputBuscar . classList . contains ( "is-invalid" ) ) {
222+ inputBuscar . classList . replace ( "is-invalid" , "is-valid" )
223+ }
224+ } else {
225+ inputBuscar . classList . add ( "is-invalid" )
226+ inputButton2 . disabled = true
227+ if ( inputBuscar . classList . contains ( "is-valid" ) ) {
228+ inputBuscar . classList . replace ( "is-valid" , "is-invalid" )
229+ }
230+ }
231+ } )
232+ inputBuscar . addEventListener ( "blur" , function ( ) {
233+ if ( inputBuscar . classList . contains ( "is-valid" ) ) {
234+ inputBuscar . classList . remove ( "is-valid" )
235+ } else if ( inputBuscar . classList . contains ( "is-invalid" ) ) {
236+ inputBuscar . classList . remove ( "is-invalid" )
237+ }
238+ } )
239+ function primeraLetraMayus ( string ) {
240+ return string . charAt ( 0 ) . toUpperCase ( ) + string . slice ( 1 )
241+ }
242+ function noSpaceLetter ( string ) {
243+ var noSpaceLetter = string . indexOf ( " " )
244+ return string . charAt ( 0 ) . toUpperCase ( ) + string . slice ( 1 , noSpaceLetter ) + " " + string . charAt ( noSpaceLetter + 1 ) . toUpperCase ( ) + string . slice ( noSpaceLetter + 2 )
245+ }
205246inputButton2 . addEventListener ( "click" , function ( ) {
206- var objectStudents = JSON . parse ( localStorage . getItem ( "studentInfo" ) )
247+ inputBuscar = inputBuscar . value . toLowerCase ( ) ;
248+ inputBuscar = ( inputBuscar . indexOf ( " " ) == - 1 ) ? primeraLetraMayus ( inputBuscar ) : noSpaceLetter ( inputBuscar ) ;
249+ var objectStudents = JSON . parse ( localStorage . getItem ( "studentInfo" ) ) ;
207250 function buscarAlumno ( ) {
208251 if ( objectStudents ) {
209252 function includesText ( strParcial , strComplete ) {
210253 for ( var ii = 0 ; ii < strComplete . length ; ii ++ ) {
211254 for ( var i = 0 ; i < strParcial . length ; i ++ ) {
212255 if ( strParcial [ i ] === strComplete [ ii ] . nombre [ i ] ) {
213256 if ( strParcial [ i ] == strComplete [ ii ] . nombre [ strParcial . length - 1 ] ) {
214- console . log ( "Coincidencia" )
257+ function mostrarStudent ( student ) {
258+ var studentlist = document . querySelector ( "#student-list" ) ;
259+ studentlist . innerText = ""
260+ var studentFinder = document . querySelector ( "#student-finded" )
261+ var studentDatos = document . createElement ( "li" ) ;
262+ studentDatos . className = "list-group-item"
263+ studentDatos . id = student [ ii ] . dni
264+ var nombreApellido = document . createElement ( "h2" ) ;
265+ nombreApellido . innerText = "Estudiante: " + student [ ii ] . nombre + " " + ( ( student [ ii ] . apellido == "" ) ? "" : student [ ii ] . apellido )
266+ studentDatos . appendChild ( nombreApellido )
267+ var dni = document . createElement ( "h3" ) ;
268+ dni . innerText = "DNI: " + student [ ii ] . dni
269+ studentDatos . appendChild ( dni )
270+ var email = document . createElement ( "h4" ) ;
271+ email . innerText = "Correo electrónico: " + student [ ii ] . email
272+ studentDatos . appendChild ( email )
273+ studentFinder . appendChild ( studentDatos )
274+ inputButton2 . disabled = true
275+ }
276+ var studentNode = mostrarStudent ( objectStudents )
277+ console . log ( studentNode )
215278 }
216279 } else {
217280 break
218281 }
219282 }
220283 }
284+ var divStudentsNumber = document . querySelector ( "#div-numberStudents" )
285+ var studentEncontrado = document . querySelector ( "#students-number" )
286+ studentEncontrado . className = "text-content-center show"
287+ studentEncontrado . innerText = "Alumnos encontrados: " + document . querySelectorAll ( "li" ) . length
288+ divStudentsNumber . appendChild ( studentEncontrado )
221289 }
222- console . log ( includesText ( inputBuscar . value , objectStudents ) )
290+ console . log ( includesText ( inputBuscar , objectStudents ) )
223291 } else {
224- studentlist = document . createElement ( "ul" )
225- studentlist . id = "student-list"
292+ noStudentList = document . querySelector ( "#no-student-list" )
226293 var studentDatos = document . createElement ( "li" ) ;
227294 studentDatos . className = "list-group-item"
228295 var alumnoNoFinded = document . createElement ( "h2" ) ;
229296 alumnoNoFinded . innerText = "No hay alumnos que mostrar!"
230297 studentDatos . appendChild ( alumnoNoFinded )
231- studentlist . appendChild ( studentDatos )
232- document . querySelector ( "#div-list" ) . appendChild ( studentlist )
298+ noStudentList . appendChild ( studentDatos )
233299 }
234300 }
235301 console . log ( buscarAlumno ( ) )
0 commit comments