/* [0] Gestion de l'export =========================================================*/ /* (0) Initialisation des variables */ var exportSubjectList = $('#export_subject-list'); var exportSubjectAdd = $('#export_add-subject'); var exportDeflater = new FormDeflater( document.getElementById('export-form'), ['input'], // éléments à éviter (tagName) ['data-name'] // Attributs par ordre de priorité ); /* (1) Gestion de l'ajout dynamique des sujets */ exportSubjectAdd.addEventListener('click', function(e){ // On ajoute un input de sujet à la liste var newElement = document.createElement('input'); newElement.type = 'number'; newElement.dataset.name = 'subjects'; newElement.placeholder = 'Sujet'; newElement.style = 'width: 5em; display: block;'; exportSubjectList.appendChild(newElement); }, false); /* (2) Export des données */ $('#export-form #export_export-all').addEventListener('click', function(e){ // {1} On récupère la liste des ids des sujets // var subjectDeflater = new FormDeflater(exportSubjectList, ['input'], ['data-name']); var subjectDeflated = subjectDeflater.deflate()['subjects']; // {2} On supprime les valeurs incorrectes // var subjects = []; // Si on a q'une valeur, on la met en tableau if( !(subjectDeflated instanceof Array) ) subjectDeflated = [subjectDeflated]; for( var i = 0 ; i < subjectDeflated.length ; i++ ) if( subjectDeflated[i].length > 0 && !isNaN(subjectDeflated[i]) ) subjects.push( subjectDeflated[i] ); // {3} On récupère les types de données que l'on veut // var deflated = exportDeflater.deflate(); /* (4) On construit la requête */ var request = { path: 'download/multiple', subjects: subjects, all: deflated.group == 'all' // VRAI si on veut TOUS les sujets }; /* (5) On lance la requête */ api.send(request, function(res){ // Si erreur if( res.ModuleError != 0 ) return false; // Sinon on lance le téléchargement document.location = res.link; Notification.success('OK', 'Lancement du téléchargement..'); }); }, false); /* [0] Gestion de l'export GEPHI =========================================================*/ /* (0) Initialisation des variables */ var chartsSubjectList = $('#charts_subject-list'); var chartsSubjectAdd = $('#charts_add-subject'); var chartsDeflater = new FormDeflater( document.getElementById('charts-form'), ['input'], // éléments à éviter (tagName) ['data-name'] // Attributs par ordre de priorité ); /* (1) Gestion de l'ajout dynamique des sujets */ chartsSubjectAdd.addEventListener('click', function(e){ // On ajoute un input de sujet à la liste var newElement = document.createElement('input'); newElement.type = 'number'; newElement.dataset.name = 'subjects'; newElement.placeholder = 'Sujet'; newElement.style = 'width: 5em; display: block;'; chartsSubjectList.appendChild(newElement); }, false); /* (2) Export des données */ $('#charts-form #charts_export-all').addEventListener('click', function(e){ // {1} On récupère la liste des ids des sujets // var subjectDeflater = new FormDeflater(chartsSubjectList, ['input'], ['data-name']); var subjectDeflated = subjectDeflater.deflate()['subjects']; // {2} On supprime les valeurs incorrectes // var subjects = []; // Si on a q'une valeur, on la met en tableau if( !(subjectDeflated instanceof Array) ) subjectDeflated = [subjectDeflated]; for( var i = 0 ; i < subjectDeflated.length ; i++ ) if( subjectDeflated[i].length > 0 && !isNaN(subjectDeflated[i]) ) subjects.push( subjectDeflated[i] ); // {3} On récupère les types de données que l'on veut // var deflated = chartsDeflater.deflate(); /* (4) On construit la requête */ var request = { path: 'download/chart', subjects: subjects, all: deflated.group == 'all' // VRAI si on veut TOUS les sujets }; /* (5) On lance la requête */ api.send(request, function(res){ // Si erreur if( res.ModuleError != 0 ) return false; // Sinon on lance le téléchargement document.location = res.link; Notification.success('OK', 'Lancement du téléchargement..'); }); }, false);