Skip to content
Extraits de code Groupes Projets
Valider 33764d1e rédigé par Jouski's avatar Jouski
Parcourir les fichiers

intégration label done et suppression sujet épinglé

parent 2549e74d
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
Pipeline #84616 réussi
......@@ -106,34 +106,52 @@ function preparerlesInputLabel() {
// Fonction pour récupérer les tickets
async function fetchIssues() {
let issues = [];
let page = 1;
let hasMore = true;
try {
while (hasMore) {
// Construction de l'URL de l'API avec la pagination
const response = await fetch(`${apiUrl}?per_page=100&page=${page}`);
// Récupération des tickets
const response = await fetch(apiUrl);
if (!response.ok) {
throw new Error("Erreur lors de la récupération des données.");
if (!response.ok) {
throw new Error(`Erreur ${response.status}: ${response.statusText}`);
}
const data = await response.json();
issues = issues.concat(data); // Ajouter les tickets récupérés à la liste globale
console.log(`Page ${page} : ${data.length} tickets récupérés`);
// Vérifier si on doit continuer la pagination (si on a récupéré 100 tickets)
hasMore = data.length === 100; // Si moins de 100, c'était la dernière page
page++;
}
let issues = await response.json();
console.log(issues.length,'tickets');
console.log(`Total tickets récupérés : ${issues.length}`);
issues.forEach (issue => {
console.log(issue.title);
})
// Affichage des tickets avant filtrage
console.log(issues.length, "tickets avant filtrage");
issues.forEach(issue => {
console.log(issue.title);
});
// Filtrage et tri des tickets
issues = issues
.filter(issue => issue.state !== 'closed') // Suppression des issues fermées
.filter(issue => !issue.labels.some(label => label.toLowerCase() === 'bug')) // Suppression des issues avec label "bug"
.filter(issue => !issue.labels.some(label => label.toLowerCase() === 'épinglé')) // Suppression des issues avec label "épinglé"
.sort((a, b) => new Date(b.updated_at) - new Date(a.updated_at)); // Tri par dernière réponse
.filter(issue => issue.state !== "closed") // Suppression des issues fermées
.filter(issue => !issue.labels.some(label => label.toLowerCase() === "bug")) // Suppression des bugs
.filter(issue => !issue.labels.some(label => label.toLowerCase() === "épinglé")) // Suppression des épinglés
.sort((a, b) => new Date(b.updated_at) - new Date(a.updated_at)); // Tri par dernière mise à jour
console.log(issues.length, "tickets après filtrage");
// Affichage des tickets
displayIssues(issues);
} catch (error) {
console.error("Erreur:", error);
console.error("Erreur:", error);
tableBody.innerHTML = `<tr><td colspan="4">Impossible de charger les tickets.</td></tr>`;
}
}
......
......@@ -179,10 +179,11 @@ td.auteur {
text-overflow: ellipsis; /* Ajouter des points de suspension (...) si le texte est trop long */
}
td.nombre {
td.nombre, td.done {
text-align: center;
}
th {
background-color: #6c63ff;
color: white;
......@@ -218,6 +219,7 @@ tr:hover {
}
thead>tr, thead>tr:hover {
background-color: transparent;
}
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter