==================== Guide d'installation ==================== :Authors: Saint-Genest Gwenael (Hooligan0) :Version: 1.0 21/01/2004 --------------- 1. Introduction --------------- Gasell est une application de gestion d'association loi 1901. Elle se presente sous la forme d'un ajout au framework horde [1]_ L'installation se fait en deux phases : installation et configuration de horde, installation de Gasell dans horde. .. [1] http://www.horde.org/ ------------------------- 2. Mise en place de Horde ------------------------- Ce document ne va pas s'attarder sur la mise en place de horde sur la machine (etant le role de la documentation de horde [2]_). 2.1 Authentification ^^^^^^^^^^^^^^^^^^^^ Pour le fonctionnement de Gasell, il est necessaire d'avoir une base de donnees postgresql, qui peut aussi etre utilisee pour divers fonctions internes de horde dont l'authentification. Pour cela, horde a besoin d'une table qui va contenir les noms de connexion des utilisateurs ainsi que leurs mots de passes en crypte. Exemple de requette pour creation de la table: :: create table horde_users ( user_uid varchar(255) not null, user_pass varchar(255) not null, primary key (user_uid) ); La seconde etape est la configuration de horde pour l'utilisation de la base lors de l'authentification. Le fichier config/horde.php contient les parametres globaux de horde. Une section de ce fichier est consacree a l'authentification. - Type de driver : Le choix du mode d'authentification se fait au moyen du parametre $conf['auth']['driver'] qui doit etre place a "sql". - Options : Pour une authentification sql, des parametres optionnels sont necessaires (type de base, nom de la table, ...). Le fichier de configuration par defaut ne contient pas toujours ces parametres, il sera donc parfois necessaire d'ajouter les lignes [3]_ : Exemple: :: (snip) /** ** Horde Authentication **/ // What backend should we use for authenticating users to Horde? Valid // options are currently 'imap', 'ldap', 'mcal', 'sql', 'ftp', 'smb', // 'krb5' and 'radius'. $conf['auth']['driver'] = 'sql'; // $conf['auth']['params'] = array(); $conf['auth']['params']['phptype'] = 'pgsql'; $conf['auth']['params']['hostspec'] = ''; $conf['auth']['params']['username'] = ''; $conf['auth']['params']['password'] = ''; $conf['auth']['params']['database'] = ''; $conf['auth']['params']['table'] = 'horde_users'; 2.2 Registre ^^^^^^^^^^^^ Le registre de Horde permet de definir quelles sont les applications qui sont installees, si elles sont actives ou non, et eventuellement preciser quelques parametres sur leur mode de fonctionnement vis a vis de Horde. Pour etre reconnu comme fesant partie de horde, il est necessaire d'ajouter une entree pour Gasell dans le registre. Le fichier config/registry.php contient les parametres de configuration du registre. Il contient une section nommee "Application registry" avec plusieurs parametres applications. Voici un exemple de section pour gasell (en considerant que Gasell est installe dans le repertoire horde/gasell/) :: $this->applications['gasell'] = array( 'fileroot' => dirname(__FILE__) . '/../gasell', 'webroot' => $this->applications['horde']['webroot'] . '/gasell', 'icon' => $this->applications['horde']['webroot'] . '/gasell/graphics/gasell.gif', 'name' => _("Gestion d'association"), 'allow_guests' => false, 'status' => 'active' ); 2.3 Application initiale ^^^^^^^^^^^^^^^^^^^^^^^^ Horde est un framework permettant l'utilisation de plusieurs applications en meme temps (ou du moins a partir de la meme base installee). Souvent, les utilisateurs de Gasell n'utilisent aucun autre module et il deviens innutile de passer par la page de selection de horde. Il est possible de configurer l'appel automatique a une des applications horde lors de la fin de l'authentification. Le fichier config/prefs.php contient un parametre initial_application qui permet de realiser cette configuration. Il suffit de preciser le nom du module a appeler au demarrage dans le champ "value". Ce nom de module doit exister dans le registre de Horde (cf 2.2) Exemple: :: // what application should we go to after login? $_prefs['initial_application'] = array( 'value' => 'gasell', 'locked' => true, 'shared' => true, 'type' => 'select', 'desc' => _("What application should Horde display after login?")); .. [2] Fichier INSTALL fourni avec horde et http://www.horde.org/faq/ .. [3] Attention, si un parametre $conf['auth']['params'] = array(); est present, il faut le commenter sinon les options pour la base risquent de ne pas etre prises en compte. ------------------------- 3. Installation de Gasell ------------------------- Gasell est disponible au telechargement depuis le site officiel http://www.linux-nantes.fr.eu.org/~atelier/ l'archive peut etre decompressee directement dans le repertoire de horde creant ainsi un repertoire gasell qui contient les fichiers de l'application. La structure des fichiers de Gasell reprend celle de Horde (repertoites config/ graphics/ templates/ etc). L'application etant tres orientee autour de la base de donnes, il y a tres peu de configuration a realiser a partir des fichiers. La configuration de l'acces a la bse de donnes se fait dans le fichier gasell/config/conf.php Une section de ce fichier "Database settings" contient ces parametres. De la meme facon que pour horde, il faut preciser le type de base de donnes utilisee (pour le moment postgresql seulement) les informations de connection (user/pass) et le nom de la base. Exemple: :: /** ** Database settings **/ $conf['bdd']['type'] = 'pgsql'; $conf['bdd']['host'] = 'localhost'; $conf['bdd']['user'] = 'gasell'; $conf['bdd']['pass'] = 'gasell'; $conf['bdd']['db'] = 'gasell'; Le reste de la configuration est fait directement en utilisant l'interface Gasell avec un navigateur web. Une page particuliere a la racine de Gasell permet de poursuivre l'installation *install.php* (soit http:///horde/gasell/install.php en general) 3.1 Construction de la base ^^^^^^^^^^^^^^^^^^^^^^^^^^^ A ce stade, Gasell a tous les parametres necessaires pour l'acces a son environnement. Il faut maintenant preparer la base de donnes a recevoir des donnees, cela implique la creation des tables, des contraintes et des sequences. Gasell est capable de realiser cette construction de la base a partir d'un fichier de definition qui peut etre celui fourni avec le package (gasell/install/bdd.xml) ou directement depuis le site officiel si la configuration de php l'autorise. (completer avec l'explication sur l'interface lorsqu'elle sera dispo) 3.2 Personalisation ^^^^^^^^^^^^^^^^^^^ Pour eviter d'avoir a realiser une fatidieuse configuration avec des dizaines de parametre, Gasell permet de realiser une pre-configuration a partir du type d'association. Que ce soit pour un LUG, pour un garage associatif ou un club de bridge, un meme type d'association va avoir des besoins similaires. Il sera toujours possible d'acceder a toutes les options, cette phase ne servant qu'a simplifier la configuration. (completer avec la procedure lorsque cette partie de l'install sera dispo) 3.3 Configuration ^^^^^^^^^^^^^^^^^ ( aucune interface au point a ce jour ) ---------------- 4. Mise en route ---------------- Pour la premiere connection, un utilisateur particulier est cree avec les droits d'administrateur. Nom: **gasell** Mot de Passe: **gasell** Une fois authentifie cet utilisateur a tous les droits sur l'application. Voici un conseil des premieres operations a realiser : - Remplacement de l'utilisateur par defaut : creation d'un utilisateur administrateur et suppression de l'utilisateur *gasell* par defaut. Cela pour un probleme de securite. - Creation du premier exercice : Il n'est pas possible d'effectuer des operations sur l'application (creation d'un utilisateur, d'une activite ou autres) tant qu'aucun exercice n'est ouvert. Pour les autres operations d'administration, reportez vous au Guide D'administration (TODO) ou pour l'utilisation reportez vous au Guide Utilisateur (TODO).