
Ils affirment – presque – tous avoir « Marseille dans le sang ». Et enchaînent les messages d’amour pour la deuxième ville de France. Chacun se présente sur la ligne de départ dans l’espoir d’atteindre la mairie centrale, dirigée depuis six ans par la coalition de gauche, citoyenne et écologiste du Printemps marseillais. Pour la première fois depuis la réforme de la loi électorale Paris-Lyon-Marseille (PLM), le scrutin se déroule à l’échelle de la ville, renvoyant le vote pour les mairies de secteur, organisé en parallèle dans une seconde urne, à un statut d’élections secondaires.
Face au sortant Benoît Payan (divers gauche), qui a remplacé au pied levé l’écologiste Michèle Rubirola en décembre 2020, se dressent notamment les ambitions du leader local du Rassemblement national (RN), Franck Allisio ; d’une union de la droite et du centre portée par la présidente de la métropole Aix-Marseille-Provence Martine Vassal, battue il y a six ans ; et du député des Bouches-du-Rhône (La France insoumise, LFI) Sébastien Delogu.
Un casting de poids lourds à peine troublé par l’apparition, au centre, d’un candidat inattendu, l’ex-haut fonctionnaire Erwan Davoux, en binôme avec la conseillère départementale Nora Preziosi (ex-Les Républicains, LR). Et pimenté par la présence du militant écologiste Victor Hugo Espinosa, 76 ans, sous la bannière de l’Ecologie au centre. Le Monde présente les six principaux candidats de la municipale, dont les scores et les alliances entre les deux tours peuvent jouer un rôle au moment de déterminer la future gouvernance de Marseille et de sa métropole.
${candidat.prenom} ${candidat.nom}
${parti_court}
`;
container_vignettes.appendChild(vignette);
const candidat_element = document.createElement(« div »);
candidat_element.classList.add(« d_candidat »);
candidat_element.classList.add(« lmui-chart »);
candidat_element.setAttribute(« id », clear(candidat.nom + candidat.prenom));
let candidat_html = `
${candidat.prenom} ${candidat.nom}
${parti}
`;
if (candidat.date_naissance) {
candidat_html += `
${getAge(candidat.date_naissance)} ans
`;
}
candidat_html += `
`;
candidat_html += `
Son profil. ${(candidat.profil?? » »).replace(/</?p>/g, « »)}
`;
candidat_html += `
Sa ligne. ${(candidat.enjeu?? » »).replace(/</?p>/g, « »)}
`;
candidat_html += `
Ses difficultés. ${(candidat.faiblesses?? » »).replace(/</?p>/g, « »)}
`;
if (candidat.lireAussi_url) {
candidat_html += « ;
}
// if (candidat.autres_personnes_liste) {
// candidat_html += `
//
Autres personnalités de la liste
// ${candidat.autres_personnes_liste.split(« , « ).join( » – « )}
//
`;
// }
candidat_element.innerHTML = candidat_html;
container_candidats.appendChild(candidat_element);
vignette.addEventListener(« click », ()=> {
candidat_element.scrollIntoView()
})
}
/* Nettoie les noms de candidats en ID */
function clear(txt) {
var cleared = txt.replace(/ /g, « _ »);
cleared = cleared.replace(/’/g, « _ »);
return cleared.toLowerCase();
}
/* Calcule l’âge à partir de la date de naissance */
function getAge(txt) {
if (txt == null) return « »;
var aujourdhui = new Date();
var by = txt.split(« https://www.lemonde.fr/ »)[2],
bm = txt.split(« https://www.lemonde.fr/ »)[1] – 1,
bd = txt.split(« https://www.lemonde.fr/ »)[0];
var dn = new Date(by, bm, bd);
var age = aujourdhui.getFullYear() – dn.getFullYear();
var m = aujourdhui.getMonth() – dn.getMonth();
if (m < 0 || (m === 0 && aujourdhui.getDate() < dn.getDate())) {
age–;
}
return age;
}
/* Convertit en plein texte une date au format jj/mm/aaaa */
function getDate(txt) {
var y = txt.split(« https://www.lemonde.fr/ »)[2],
m = txt.split(« https://www.lemonde.fr/ »)[1] – 1,
d = txt.split(« https://www.lemonde.fr/ »)[0];
var mois = [« janvier », « février », « mars », « avril », « mai », « juin », « juillet », « août », « septembre », « octobre », « novembre », « décembre »];
if (d == 1) d = d + « er« ;
else d = parseInt(d);
return d + » » + mois[m] + » » + y;
}
});








