La librairie JavaScript nécessite de disposer des dossiers exports et imports ainsi que du fichier power_codeurs.js.
Cette librairie permet de gérer des emplois du temps hebdomadaires sous format CSV RFC 5545 ou iCal. Par conséquent il est nécéssaire d'importer les calendriers préalablement afin de pouvoir les traiter.
Cette application à été développée pour être intégrée à un logiciel en tant que librairie externe, il n'y a donc pas d'interface graphique. L'utilisation de cette librairie se fait via un terminal de comandes ayant installé préalablement node.js sur l'ordinateur.
Tous les fichiers importés sont automatiquement enregistrés dans le dossier imports/ au format iCal (intervenant_semaine.ics).
Toutes les fonctions de traitement génèrent à leur sortie un fichier au format iCal dans le dossier exports/ (intervenant_traitement_intervenant.ics).
Les fonctions que peut réaliser la librairie seront détaillées par la suite.
node power_codeurs.js help
Cette fonction affichera l'ensemble des commandes qui peuvent être réalisées avec la librairie JavaScript ainsi que la syntaxe associée
node power_codeurs.js a -i <intervenant> -s <semaine>
Cette fonction affichera l'ensemble des évènements d'un calendrier importé préalablement.
<intervenant> est le nom que l'on a donné au calendrier importé
<semaine> est le champ dans lequel il faut indiquer quelle semaine l'on veut afficher (un intervenant peut disposer de plusieurs emplois du temps associés à des semaines différentes</semaine></intervenant>
node power_codeurs.js iical -f <fichier> -i <intervenant> -s <semaine>
Cette fonction importera un calendrier au format iCal à la librairie dans le dossier imports/
<fichier> est le nom du fichier à importer (par exemple: calendrier.ics) ou l'adresse du fichier s'il ne se situe pas dans le même dossier que le fichier power_codeurs.js
<intervenant> est le nom de l'intervenant ayant cet emploi du temps
<semaine> est le numéro de la semaine de l'emploi du temps de l'intervenant donné</semaine></intervenant></fichier>
node power_codeurs.js icsvi -f <fichier> -d <date> -i <intervenant> -s <semaine>
Cette fonction importera un calendrier au format CSV 5545 à la librairie dans le dossier imports/
<fichier> est le nom du fichier à importer (par exemple: calendrier.csv) ou l'adresse du fichier s'il ne se situe pas dans le même dossier que le fichier power_codeurs.js
<date> est la date du lundi de la semaine importée notée AAAAMMJJ
<intervenant> est le nom de l'intervenant ayant cet emploi du temps
<semaine> est le numéro de la semaine de l'emploi du temps de l'intervenant donné</semaine></intervenant></date></fichier>
node power_codeurs.js icsvd -f <fichier> -d <date> -a <adresse> -i <intervenant> -s <semaine>
Cette fonction importera un calendrier d'un domicile au format CSV 5545 à la librairie dans le dossier imports/
<fichier> est le nom du fichier à importer (par exemple: calendrier.csv) ou l'adresse du fichier s'il ne se situe pas dans le même dossier que le fichier power_codeurs.js
<date> est la date du lundi de la semaine importée notée AAAAMMJJ
<adresse> est l'adresse du lieu sur lequel sont réalisés les évènements présents dans le calendrier
<intervenant> est le nom de l'intervenant ayant cet emploi du temps
<semaine> est le numéro de la semaine de l'emploi du temps de l'intervenant donné</semaine></intervenant></adresse></date></fichier>
node power_codeurs.js uni -i1 <intervenant1> -i2 <intervenant2> -s <semaine>
Cette fonction réalise la fusion des calendriers hebdomadaires de deux intervenants préalablement importés pour une même semaine donnée. L'union consiste au rajout des différents évévenents de chaque intervenant dans le calendrier final.
<intervenant1> est le nom du premier intervenant à comparer
<intervenant2> est le nom du deuxième intervenant
<semaine> est le numero des semaines que l'on veut comparer entre les intervenants</semaine></intervenant2></intervenant1>
node power_codeurs.js int -i1 <intervenant1> -i2 <intervenant2> -s <semaine>
Cette fonction réalise la fusion des calendriers hebdomadaires de deux intervenants préalablement importés pour une même semaine donnée. L'intersection consiste à ajouter dans le calendrier résultant uniquement les évènements étant communs aux deux intervenants.
<intervenant1> est le nom du premier intervenant à comparer
<intervenant2> est le nom du deuxième intervenant
<semaine> est le numero des semaines que l'on veut comparer entre les intervenants</semaine></intervenant2></intervenant1>
node power_codeurs.js comp -i <intervenant> -s <semaine>
Cette fonction génère "l'inverse" du calendrier donné. Cela veut dire que la fonction génère un emploi du temps ayant des évènements aux moments où dans l'emploi du temps original il y en a pas. Là où il y a des évènements, la fonction générera des cases vides.
<intervenant> est le nom de l'intervenant ayant cet emploi du temps
<semaine> est le numéro de la semaine de l'emploi du temps de l'intervenant donné</semaine></intervenant>
node power_codeurs.js inter -i <intervenant> -s <semaine>
Cette fonction affichera le nombre d'interventions qu'à réalisé un responsable durant la semaine indiquée
<intervenant> est le nom de l'intervenant ayant cet emploi du temps
<semaine> est le numéro de la semaine de l'emploi du temps de l'intervenant donné</semaine></intervenant>
node power_codeurs.js hor -i <intervenant> -s <semaine>
Cette fonction affichera le nombre d'heures qu'a travaillé un intervenant durant la semaine indiquée
<intervenant> est le nom de l'intervenant ayant cet emploi du temps
<semaine> est le numéro de la semaine de l'emploi du temps de l'intervenant donné</semaine></intervenant>