Installation webcalendar selon Fréderic Panes

 

 

Présentation

 

WebCalendar est une application qui permet de partager un agenda en réseau via une interface PHP et une base SQL (MySQL dans notre cas), elle supporte le multi-utilisateur, le multi-langage.

Cette page présente l'installation de WebCalendar 0.9.24, elle s'effectue à partir des sources en PHP3 et donc ne devrait pas poser de problème sur d'autres systèmes.
Un serveur Apache avec le langage PHP et le SGBD MySQL installés et en état de fonctionner seront les seuls pré-requis

 

 

 

 

Installation

Source : M.Panes Frederic

 

On commencera par installer WebCalendar dans un répertoire accessible par le serveur web  (/var/www/ ) :

 

tar -zxvf WebCalendar-0.9.24.tar.gz

Cela créer le répertoire WebCalendar-0.9.24, pour des raisons de commodité je l'ai renommé webcalendar tout simplement :

mv WebCalendar-0.9.24 webcalendar

J'ai changé les droits d'accès afin de me faciliter la tâche :

chmod -R 755 webcalendar

 

Il faut ensuite se rendre dans le répertoire webcalendar pour créer la base de données (exécutez les commandes en super-utilisateur) :

 

 

useradd admin

/usr/bin/mysql

mysql> set password for root@localhost=password('goldorak');

mysql> create database intranet;

mysql> grant all on intranet.* to root;

mysql> grant all on intranet.* to root@localhost;

mysql> grant all on intranet.* to admin;

mysql> grant all on intranet.* to admin@localhost;

mysql> set password for admin@localhost=password('ahmed');

mysql> exit

 

mysql - -user=root - - password=rootpw  intranet < tables-mysql.sql

Ceci créer les tables et ajoute un utilisateur admin avec password admin.

La partie installation est terminée.

 

 

 

1.1.                Configuration

Il faut maintenant configurer WebCalendar pour l'adapter à votre système et fixer les paramètres de la base de données. Il faut se rendre dans le répertoire includes et éditer le fichier config.inc :

$db_type = "mysql";
$db_host = "mon_serveur";
$db_login = "admin";
$db_password = "ahmed";
$db_database = "intranet";
...
$WEEK_START = 1; // either 0=Sunday or 1=Monday
...
$TIME_FORMAT = "24";

La partie configuration est maintenant terminée.
 
 

 

Bugs


Il semblerait qu'il manque un paramètre dans la fonction qui affiche les évènements en attente de validation ce qui génère un message d'erreur non-bloquant, corrigeons-le
:

Editer le fichier list_unapproved.php à la ligne 84 :
Remplacer la ligne :

      $eventinfo .= build_event_popup ( $divname, $description, $timestr );

par :

      $eventinfo .= build_event_popup ( $divname, $description, $timestr ,$time );

 

 

Utilisation

Création des utilisateurs

Lancer son navigateur préféré sur la page http://mon_serveur/webcalendar/index.php et vous obtiendrez la demande de login.

Votre navigateur doit accepter les cookies si vous voulez éviter de resaisir le mot de passe à chaque connexion.

Connectez-vous avec admin : ahmed et créez les comptes dont vous avez besoin.

L'administrateur peut changer son mot de passe ainsi que celui des autres utilisateurs en cliquent sur le lien Utilisateurs.

NB : Si un autre utilisateur possède les droits d'administrateur, il peut en faire de même. Un utilisateur lambda n'aura accès qu'à ses informations propres.

Utilisation standard

Un utilisateur standard se connecte à partir de l'URL  http://mon_serveur/webcalendar/index.php, il doit saisir le login et le mot de passe qui lui ont été attribués par l'administrateur préalablement. Tout comme l'administrateur son navigateur doit être configuré pour accepter les cookies pour ne pas avoir à saisir à chaque fois son login et mot de passe.
Une fois l'authentification effectuée l'interface suivante apparaît:

 

NB : Si on accepte le cookie en cochant la case Save login..., la demande d'authenfication ne se fera plus et l'on poura accéder directement à l'agenda en tapant
http://mon_serveur/webcalendar/week.php

On dispose tout en base de la fenêtre d'un certain nombre de fonctions, qui permettent notamment :
- de se loguer/déloguer
- d'accèder aux agendas d'autres personnes
- d'ajouter un rendez vous

Pour rajouter un rendez vous, on peut soit cliquer sur la + à droite du jour en question, ou sur le lien Ajouter un rendez-vous

 

Pendant la création d'un rendez-vous, on peut spécifier la confidentialité d'un rendez-vous ou le limiter en consultation pour certains utilisateurs (public ou confidentiel).

Lorsque l'on sélectionne un participant, un mail lui est expédié pour le prévenir d'un rendez-vous, lorsque celui-ci se reconnecte à l'agenda, un lien lui demande de
confirmer ou d'infirmer le rendez-vous. Dans le cas d'un rendez-vous confidentiel, seuls les participants peuvent visualiser le contenu de la case.

On peut spécifier la répétition d'un rendez-vous (réunion hebdomadaire, ...) avec l'option Type de répétition.

Pour accèder aux agendas des autres utilisateurs, on clique en bas de la page sur le lien Calendrier d'un autre utilisateur. La liste des autres utilisateurs s'affiche alors, il suffit
de cliquer sur le nom de la personne désirée.

Pour avoir une visuabilité global du planning de chaque utilisateurs nous pouvons cliquer sur

Edit layers  puis sélectionner ou modifier les vues superposées des planning des utilisateurs

à notre planning.

La fonction Layer permet de faire chevaucher l'agenda d'un autre utilisateur sur le votre, c'est la couleur des rendez vous qui va différencier l'appartenance des rendez vous.