Documents:CahierDeTexteCaen

Un article de Wiki ESCO-Portail.

Installation et configuration de l'application Cahier de Texte CDT-Recia 1.1

L'application est basée sur la version CDT 4440 de Pierre Lemaître.

Sommaire

Installation de l'application cahier de texte

Version la plus récente de l'application  : CDT-Recia 1.1.b 25-03-2010

Pour mettre en place l'application, il suffit de récupérer sur le SVN le projet CDT_Caen et de le placer dans le dossier www d'Apache (on a pour habitude de l'appeler cahier_de_texte).

Configuration

Les fichiers à paramétrer sont :

config/config.inc.php

Rôle : Configuration générale de l'application.

// Url depuis laquelle le site est accessible (obligatoire !)
$CONFIG['common']['urlsite'] = 'http://localhost/cahier_de_texte/';
// Repertoire ou est situee l'application cahier de texte (sans le slash final)
$CONFIG['common']['dirroot'] = '/var/www/cahier_de_texte';
# Repertoire de stockage des fichiers
# (Fichiers joints pour cours et devoirs, Fichiers joints pour messages informatifs,
# Fichiers zip resultant de l'exportation en CSV des cahiers de textes)
$CONFIG['common']['datadir'] = "/home/cahierdetexte";
// Url d'acces au service web LATEX
// L'url doit etre parametree egalement dans le fichier :
// enseignant/xinha/plugins/EditLatex/popups/serveur_latex.js
$CONFIG['common']['urllatex'] = "http://dvorak.recia.fr/latex?";
// Activation ou non du plugin CAS (1 ou 0)
$CONFIG['plugin_cas']['actif'] = 1;
// Adresse du serveur CAS
$CONFIG['plugin_cas']['host'] = 'localhost';

// Port du serveur CAS
$CONFIG['plugin_cas']['port'] = '443';
// Version du protocol CAS
$CONFIG['plugin_cas']['version'] = 'SAML_VERSION_1_1';
// Repertoire de l'application CAS sur le serveur (url web) (exemple : mettre 'cas' pour https://monserveur/cas)
$CONFIG['plugin_cas']['cas_dir'] = 'cas';
// Chemin d'acces a la librairie PHPCAS (a partir de la racine de l'application web cahier de texte)
(exemple 'CAS/' si CAS est dans le dossier de  l'application cahier de texte)
$CONFIG['plugin_cas']['phpcas_dir'] = 'plugins/cas/phpcas/';
// Mapping des donnees du ticket CAS pour l'application
// Champ du ticket contenant le(s) RNE de(s) (l')etablissement(s) de la personne
$CONFIG['plugin_cas']['rne']        =  'RNE';
// Champ du ticket contenant l'identifiant UID de la personne
$CONFIG['plugin_cas']['uid']        =  'uid';
// Champ du ticket contenant le nom d'affichage de la personne
$CONFIG['plugin_cas']['identite']   =  'displayName';
// Champ du ticket contenant l'email de la personne
$CONFIG['plugin_cas']['email']      =  'mail';
// Champ du ticket contenant la (les) classe(s) d'un prof
$CONFIG['plugin_cas']['ensClasses'] =  'ensClasses';
// Champ du ticket contenant la (les) classe(s) d'un prof
$CONFIG['plugin_cas']['eleveClasses'] =  'eleveClasses';
// Champ du ticket contenant la (les) classe(s) d'un prof
$CONFIG['plugin_cas']['ensGroupes'] =  'ensGroupes';
// Champ du ticket contenant la (les) classe(s) d'un prof
$CONFIG['plugin_cas']['eleveGroupes'] =  'eleveGroupes';
// Champ du ticket contenant le profil de la personne
$CONFIG['plugin_cas']['profils']    =  'profils';
// Activation ou non du plugin multi-etablissements
$CONFIG['plugin_multi-etab']['actif'] = 1;
// Prefixe utilise pour les bases de donnees des etablissements (par defaut "cdt_")
$CONFIG['plugin_multi-etab']['prefixe_bases'] = "cdt_";
// Activation ou non du plugin ENT
$CONFIG['plugin_ent']['actif'] = 1;
// Activation du debug dans log apache
// Niveaux de debug 1=Debug simple, 2=Authentification, 3=Tout
// (Chaque niveau inclu le niveau inferieur)
$CONFIG['debug_mode'] = 3;

Connections/conn_cahier_de_texte.php

Rôle : Configuration de l'accès à la Base de données.

Les informations à indiquer sont les suivantes :

  • le hostname du serveur de BD
  • le nom d'utilisateur de la base
  • le pass de la base
$hostname_conn_cahier_de_texte = 'A REMPLIR';
$username_conn_cahier_de_texte = 'A REMPLIR';
$password_conn_cahier_de_texte = 'A REMPLIR';

plugins/ent/config/config_ldap.inc.php

Rôle : Configuration de la connexion à l'annuaire ENT (LDAP).

// nom d'hote de la machine
$ldap_host="XXXX";     

// Port
$ldap_port="389";

// login d'un compte ayant les droits suffisants sur les branches (people et structure)
$ldap_login="cn=XXXXX,ou=administrateurs,dc=esco-centre,dc=fr";

// mot de passe
$ldap_password="XXXXXXXX";

// Base DN
$ldap_base_dn="dc=esco-centre,dc=fr";

// Branche utilisateurs
$ldap_people_ou = "ou=People";


plugins/ent/config/config_annuaire_federateur.inc.php

Rôle : Configuration du mapping des données entre l'annuaire ENT et l'application

Extrait de la configuration :

$annuaire_champ_login = "entpersonlogin";
$annuaire_champ_prenom = "givenname";
$annuaire_champ_nom = "sn";
$annuaire_champ_nomcomplet = "displayname";
$annuaire_champ_uid = "uid";
$annuaire_champ_sexe = "entpersonsexe";
$annuaire_champ_mail = "mail";

enseignant/xinha/plugins/EditLatex/popups/serveur_latex.js

Configuration de l'url d'acces au service de creation de formules Latex.

Voir pour l'installation : MathTex

Configuration de CAS (Ticket CAS)

Il faut bien penser à configurer CAS afin que l'application récupère via le ticket les informations dont elle a besoin.

(à compléter avec la config du CAS)

Informations récupérées par l'application :

  • rne
  • uid
  • identite
  • email
  • ensClasses
  • ensGroupes
  • eleveClasses
  • eleveGroupes
  • profils
  • fonctions

Configuration d'Apache

Pour l'application Cahier de Texte, il faut que le serveur soit configuré en ISO :

<Directory /var/www/cahier_de_texte/>
    AddDefaultCharset iso-8859-1
</Directory>

Création d'un nouvel établissement (nouveau cahier de texte)

Un script bash permet la création d'un nouvel établissement.

Version la plus récente du script (V.1.1 pour CDT-Recia 1.1) :

VServer becasse (@poisson) : /home/scripts_cdt/


Le script et les éléments nécessaires à son fonctionnement se trouvent sous /home/scripts_cdt/
Détail du script

/home/scripts_cdt/
   |---> creationEtablissement.sh
   |---> config.cfg
   |---> etablissements
               |---> (scripts des établissements déjà créés)
   |---> templates
               |---> creation_base.template
               |---> creation_tables.template
   |---> version.txt


Deux scripts SQL « templates » sont utilisés comme base pour le script « creationEtablissement.sh ».

Ce dernier produit :

  • un script pour créer la base du nouvel établissement et donner les droits à l'utilisateur spécifique sur la base (sera exécuté en utilisateur root) : <rne_etab>_creation_base.sql
  • un script pour créer les tables et ajouter les données de base (sera exécuté en utilisateur cdt) : <rne_etab>_creation_tables.sql
  • un script shell qui devra être exécuté sur la machine hébergeant l'application, pour créer les différents répertoires qui seront utilisés pour stocker les données (fichiers joints par les profs, et exportations des cahiers des textes)

NB : les deux scripts SQL produits seront exécutés pendant le script si vous lui entrez les mots de passes demandés. Dans le cas contraire, vous devrez les exécutez par la suite (et dans l'ordre !) : creation_base, puis create_tables.

Configuration

Il faut avoir préalablement créé un utilisateur cdt dans MySQL.

GRANT USAGE ON *.* TO 'cdt'@'localhost' IDENTIFIED BY 'xxxxxxx';

Le paramétrage du script est simple, et se trouve dans le fichier config.cfg, qui ressemble à ceci :

# Configuration du script de Creation des cahiers de textes pour les etablissements

# Nom d'hote de la machine contenant l'application cahier de texte
# (Utilisé pour l'ajout des droits |  l'utilisateur 'cdt' pour mysql)
webhost='serveur.giprecia.net'

# Utilisateur associé au serveur web
webuser='www-data'

# Groupe associé au serveur web
webgroup='www-data'

# repertoire de stockage des fichiers joints
datalocation='/home/cahierdetexte/'

Il faut indiquer certaines informations comme :

  • le nom d'hote de la machine sur laquelle est hébergée l'application "cahier de texte" (pour l'ajout des droits sur les nouvelles bases)
  • l'utilisateur et le groupe associés au server web
  • le répertoire utilisé pour stocker les fichiers joints du cahier de texte

Utilisation

  • Executez le script de cette manière :
./creationEtablissement.sh <RNE_DE_L_ETABLISSEMENT_A_CREER>
  • Entrez le mot de passe root, et le mot de passe de l'utilisateur 'cdt' lorsque le script le demande
  • Vérifiez la présence des 3 scripts obtenus dans le répertoire /home/scripts_cdt/etablissements/
  • Copiez le script <RNE>_creation_repertoires.sh sur la machine hébergeant l'appplication si elle est différente. Pour cela, repassez sur le serveur physique et faites un scp.
  • Exécutez le script <RNE>_creation_repertoires.sh sur la machine hébergeant l'application. (Vérifiez que le répertoire correspondant au nouveau RNE soit bien créé dans /home/cahierdetexte/.

Compléments d'informations

Attention lors de la création de la première base (pour le premier établissement), le mot de passe de l'utilisateur mysql n'est pas recopié pour les accès sur le host (car accès utilisateur défini sur un nouvel host). Pour cela il suffit d'exécuter la requête sql suivante en root :

SET password FOR 'cdt'@'mon.host' = password('xxxxxxx');

Pour les autres bases le mot de passe sera repris si le host ne change pas.

Exemple d'execution

chouette:/home/scripts_cdt# ./creationEtablissement.sh 0370001A
###################################################
       Creation d'un nouvel etablissement          
###################################################
Etablissement : 0370001A

Creation des scripts pour la base 0370001A

scripts de creation (base + tables) disponibles dans le dossier etablissements

Entrez le mot de passe root MySQL pour la création de la base (ou validez si vous ne souhaitez pas executer le script maintenant)
Enter password: 

Entrez le mot de passe pour l'utilisateur 'cdt' pour la création des tables (ou validez si vous ne souhaitez pas executer e script maintenant)
Enter password: 

Les scripts de creation (base + tables) sont disponibles ici :
  *etablissements/0370001A_creation_base.sql
  *etablissements/0370001A_creation_tables.sql
Pensez a les executer si vous ne l'avez pas fait pendant le script

N'oubliez pas d'executer sur la machine mesange.giprecia.net le script de creation du repertoire des fichiers joints du cahier de texte :
  *etablissements/0370001A_creation_repertoires.sh


Creation terminee pour 0370001A
###################################################

Details des modifications sur Version 4.4.4 standard (4/11/2009)

Details des Modifications de la version 4.4.4 Standard

Details des modifications de l'application (Première Version, Obsolète)

Details des Modifications de l'application Cahier de Texte Caen

Details de la migration vers CDT-Recia 1.1 sur la production (02/2010)

Mises à jour de l'application

Détail des Mises à jour et migrations

Evolutions à voir

  • Prévoir le cas ou un élève est dans 2 établissements différents.
pages développeurs
pages "communauté ESCO"