NxTIC/view/js/data.js

84 lines
2.2 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* [0] Gestion de l'export
=========================================================*/
/* (0) Initialisation des variables */
var subjectList = $('#subject-list');
var subjectAdd = $('#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 */
subjectAdd.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;';
subjectList.appendChild(newElement);
}, false);
/* (2) Export des données */
$('#export-form #export-all').addEventListener('click', function(e){
// {1} On récupère la liste des ids des sujets //
var subjectDeflater = new FormDeflater(subjectList, ['input'], ['data-name']);
var subjectDeflated = subjectDeflater.deflate()['subjects'];
// {2} On supprime les valeurs incorrectes //
var subjects = [];
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} Si téléchargement de données cellulaires //
if( deflated.phone == '1' ){
api.send({ 'path': 'download/phone', 'subjects': subjects }, 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..');
});
}
// {5} Si téléchargement de données Facebook //
if( deflated.facebook == '1' ){
api.send({ 'path': 'download/facebook', 'subjects': subjects }, 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);