diff --git a/page/_JS/career.js b/page/_JS/career.js index 8407bc6..d35d06b 100755 --- a/page/_JS/career.js +++ b/page/_JS/career.js @@ -658,62 +658,71 @@ if( studentCase != null ){ /*******************/ /* IMPORT DE NOTES */ /*******************/ -var importNotes = document.querySelector('#import_notes[data-ctrl]'); +var importNotes = document.querySelectorAll('#import_notes[data-ctrl]'); -if( importNotes != null ){ - var fileInput = importNotes.children[0] +if( importNotes.length > 0 ){ - fileInput.addEventListener('change', function(e){ - // on récupère le contrôle en question - var controle = importNotes.dataset.ctrl; - console.log('controle: '+controle); + for( var i = 0 ; i < importNotes.length ; i++ ){ + // on récupère l'input de fichier + var fileInput = importNotes[i].children[0]; - // on récupère le fichier - var file = importNotes.children[0].files[0]; + + fileInput.addEventListener('change', function(e){ - /* [1] IMPORTATION DU FICHIER - =======================================*/ - var fd = new FormData(); - fd.append('filename', 'import_notes'); - fd.append('file', file, file.name); + var boutonImport = e.target.parentNode; - var xhr = new XMLHttpRequest(); + // on récupère le contrôle en question + var controle = boutonImport.dataset.ctrl; + console.log('controle: '+controle); - xhr.open('POST', 'manager/import.php', true); + // on récupère le fichier + var file = boutonImport.children[0].files[0]; - xhr.onreadystatechange = function(){ - if( xhr.readyState == 4 && [0, 200].indexOf(xhr.status) > -1 ) - console.log('[1] IMPORT=> '+xhr.responseText); - if( xhr.responseText == 'success' ){ - - /* [2] LECTURE DU FICHIER - =======================================*/ - var request = { level_0: 'excel', level_1: 'import_notes' }; - API.send(request, function(e){ - console.log('[2] PARSE=>'+e.request); - if( e.request == 'success' ){ + /* [1] IMPORTATION DU FICHIER + =======================================*/ + var fd = new FormData(); + fd.append('filename', 'import_notes'); + fd.append('file', file, file.name); - /* [3] INTÉGRATION À LA BDD - =======================================*/ - requestIntegration = { level_0: 'career', level_1: 'saisieNoteMultiple', controle: controle, notes: e.notes }; - API.send( requestIntegration, function(f){ - console.log('[3] INTEGRATION=>'+f.request); - if( f.request == 'success' ){ - console.log('liste intégrée'); - reload(); - }else console.log('integration error'); - }); + var xhr = new XMLHttpRequest(); - }else console.log('import error'); - }); + xhr.open('POST', 'manager/import.php', true); - } + xhr.onreadystatechange = function(){ + if( xhr.readyState == 4 && [0, 200].indexOf(xhr.status) > -1 ) + console.log('[1] IMPORT=> '+xhr.responseText); + if( xhr.responseText == 'success' ){ + + /* [2] LECTURE DU FICHIER + =======================================*/ + var request = { level_0: 'excel', level_1: 'import_notes' }; + API.send(request, function(e){ + console.log('[2] PARSE=>'+e.request); + if( e.request == 'success' ){ - } + /* [3] INTÉGRATION À LA BDD + =======================================*/ + requestIntegration = { level_0: 'career', level_1: 'saisieNoteMultiple', controle: controle, notes: e.notes }; + API.send( requestIntegration, function(f){ + console.log('[3] INTEGRATION=>'+f.request); + if( f.request == 'success' ){ + console.log('liste intégrée'); + reload(); + }else console.log('integration error'); + }); - xhr.send(fd); + }else console.log('import error'); + }); - }, false); + } + + } + + xhr.send(fd); + + }, false); + + } } diff --git a/src/files/admin2_import_notes.xlsx b/src/files/admin2_import_notes.xlsx new file mode 100755 index 0000000..bb8094e Binary files /dev/null and b/src/files/admin2_import_notes.xlsx differ diff --git a/src/files/lbh1609a_import_notes.xlsx b/src/files/lbh1609a_import_notes.xlsx new file mode 100755 index 0000000..bb8094e Binary files /dev/null and b/src/files/lbh1609a_import_notes.xlsx differ