Changer la couleur de l'événement en fonction des mots-clés dans le titre de l'événement

Aujourd'hui, je vous propose de concevoir un script qui change la couleur d'un événement Google Agenda en fonction d'un mot-clé (ou d'une phrase) dans le titre d'un événement.

Ainsi, grâce à cette astuce, vous allez pouvoir d'un seul coup d'oeil visualiser vos créneaux liées à une activité, un projet précis.

Pour cette nouvelle proposition de code, j'ai défini :
  • un créneau de date d'une semaine entre aujourd'hui à + 7 jours,
  • une recherche sur les termes "Projet A" et Projet B",
  • une couleur bleue paon pour Projet A
  • une couleur rouge tomate pour Projet B
Visualisation dans l'agenda


Voici le code proposé :

function colorerLesEvenments() {
var aujourdhui = new Date();
var prochaineSemaine = new Date();
prochaineSemaine.setDate(prochaineSemaine.getDate() + 7);
// Plusieurs façons de récupérer le calendrier
// Récupéré via l'ID
// var calendrier = CalendarApp.getCalendarById("ChangerParVotreID");
// Récupéré via son nom
// var calendrier = CalendarApp.getCalendarsByName('Nom de votre calendrier');
// Calendrier par défaut
var calendrier = CalendarApp.getDefaultCalendar();
// Le mieux est de déclarer les variables en dehors de la boucle for
var cleProjetA = "Projet A";
var cleProjetB = "Projet B";

var evenements = calendrier.getEvents(aujourdhui, prochaineSemaine);
for (var i=0; i<evenements.length; i++) {
let evenementCourant = evenements[i];
let eventTitle = evenementCourant.getTitle();
if (eventTitle.indexOf(cleProjetB) > -1) {
evenementCourant.setColor(CalendarApp.EventColor.RED);
}
if (eventTitle.indexOf(cleProjetA) > -1) {
evenementCourant.setColor(CalendarApp.EventColor.CYAN);
}
}
}

Bien entendu, vous pouvez modifier :
  • les créneaux de recherche, 
  • le nom de vos recherches de titre d'événements
  • les couleurs 

Enfin, le mieux est de lancer cette fonction au travers d'un déclencheur tous les jours par exemple.

Bon script !