9,106 → 9,44 |
regenererMiniatures(); |
}); |
|
// pour faire se rejoindre les callback |
cptRequetes = 0; |
cptErreurs = 0; |
|
function idValide(id) { |
//console.log("idValide ? : " + id); |
//console.log(id); |
intId = parseInt(id); |
//console.log(intId); |
return (! isNaN(intId) && intId > 0); |
} |
|
/** |
* prend en entrée la valeur d'un textarea, qui peut etre vide; si elle est |
* vide ("") ou si elle ne contient que des entiers valides (un par ligne), |
* retourne un tableau contenant ces ids (ou aucun élément); sinon, retourne |
* false |
*/ |
function validerIds(ids) { |
var valides = true; |
if (ids != "") { |
ids = ids.split("\n"); |
//console.log(ids); |
for (var i=0; (i < ids.length) && valides; i++) { |
//console.log('teste', ids[i]); |
valides = (valides && idValide(ids[i])); |
} |
} else { |
ids = []; // tableau vide |
} |
if (! valides) { |
ids = false; |
} |
return ids; |
} |
|
// génération des URLs |
function regenererMiniatures() { |
cptRequetes = 0; |
cptErreurs = 0; |
// validation des ids |
var idsImg = $("#ids-img").val(); |
var idsObs = $("#ids-obs").val(); |
if (idsObs == "" && idsImg == "") { |
alert("Merci de saisir au moins 1 id image ou 1 id observation"); |
return false; |
var ids = $("#ids").val(); |
ids = ids.split("\n"); |
//console.log(ids); |
var valides = true; |
for (var i=0; (i < ids.length) && valides; i++) { |
//console.log('teste', ids[i]); |
valides = (valides && idValide(ids[i])); |
} |
idsImg = validerIds(idsImg); |
idsObs = validerIds(idsObs); |
if (! (idsImg && idsObs)) { |
if (! valides) { |
alert("Merci de ne saisir que des nombres > 0 (un par ligne)"); |
return false; |
} |
//console.log('ok'); |
idsImg = $.unique(idsImg); |
idsObs = $.unique(idsObs); |
//console.log(idsImg); |
//console.log(idsObs); |
|
// création de l'URL à partir de la config |
var url = urlServiceSuppressionMiniatures + '?ids=' + ids.join(','); |
//console.log(url); |
$("body").css("cursor", "progress"); |
// création des URLs à partir de la config |
if (idsImg.length > 0) { |
cptRequetes++; |
var url = urlServiceSuppressionMiniatures + '?ids-img=' + idsImg.join(','); |
//console.log(url); |
envoyerRequete(url, suite); |
} |
if (idsObs.length > 0) { |
cptRequetes++; |
var url = urlServiceSuppressionMiniatures + '?ids-obs=' + idsObs.join(','); |
//console.log(url); |
envoyerRequete(url, suite); |
} |
} |
|
function envoyerRequete(url, cb) { |
$.get(url) |
.done(function() { |
$('#succes').show(); |
$('#erreur').hide(); |
$('#ids').val(''); |
}) |
.fail(function() { |
//console.log('a foiré :('); |
cptErreurs++; |
$('#succes').hide(); |
$('#erreur').show(); |
}) |
.always(function() { |
cb(); |
$("body").css("cursor", "default"); |
}); |
} |
|
function suite() { |
cptRequetes--; |
if (cptRequetes == 0) { |
//console.log('a fini !'); |
$("body").css("cursor", "default"); |
// ok |
if (cptErreurs == 0) { |
//console.log('yatoukébon'); |
$('#succes').show(); |
$('#erreur').hide(); |
$('#ids-img').val(''); |
$('#ids-obs').val(''); |
} else { |
$('#succes').hide(); |
$('#erreur').show(); |
} |
} |
} |
}); |