
[INSTALLATION DE JADE]
Ce document a pour objectif de vous guider dans le processus d'installation de 
JADE.  

[PRALABLES]
Jade fonctionne dans un environnement supportant PHP version 4 et Postgres 
version 7.4.  
Vous devez donc avoir comme pralable l'environnement de dveloppement suivant :

- Serveur Web supportant l'excution de script PHP
- PHP version 4 et plus
- PostgreSQL version 7.4 et plus

[TAPES D'INSTALLATION]
Ce guide se divise en 5 grandes tapes qui serviront  vous aider dans 
l'installation du framework JADE :

- Cration de la structure des rpertoires
- Copie du rpertoire CMS (rpertoire principal de Jade)
- Installation de la base de donnes
- Configuration
- Dmarrage d'un projet

[CRATION DE LA STRUCTURE DE RPERTOIRES]
Jade peut tre utilis directement par une application ou tre partag par 
plusieurs applications.  Ces structures peuvent tre combines.  

Le rpertoire CMS doit tre accessible  partir de l'Internet (Apache 
DocumentRoot).

Voici trois exemples de configuration que nous vous proposons, pour 
l'utilisation de JADE.  Vous pouvez choisir parmi ces trois configurations, 
celle qui s'adapte le mieux  votre dveloppement.

Aux fins de l'exemple, nous utiliserons le rpertoire /var/www/ comme rpertoire 
principal de notre serveur Web.

EXEMPLE 1 - CONFIGURATION POUR UNE SEULE APPLICATION
Le rpertoire CMS se trouve dans un sous-rpertoire de l'application.  Vous 
disposez du rpertoire application1 se trouvant dans votre rpertoire principal:
/var/www/application1/

Copier le rpertoire CMS dans le rpertoire application1 :
/var/www/application1/cms/

Copier le fichier index.php se trouvant dans le rpertoire CMS vers la racine du 
rpertoire application1 :
/var/www/application1/ index.php

Vous aurez comme structure de rpertoire final :
/var/www/application1/
/var/www/application1/cms/
/var/www/application1/ index.php

EXEMPLE 2 - CONFIGURATION POUR PLUSIEURS APPLICATIONS
Si votre systme d'exploitation supporte l'utilisation des liens symboliques 
vous pouvez crer des liens symboliques plutt que de copier les rpertoires et 
les fichiers.  Les deux faons de procder vous seront dcrites dans ce guide.

Dans notre exemple, deux applications utilisent Jade.  Vous disposez de deux 
rpertoires application1 et application2 se trouvant tous les deux  la racine 
de votre serveur Web.

SYSTEME NE SUPPORTANT PAS LES LIENS SYMBOLIQUES 
Vous disposez des rpertoires d'application de la manire suivante :
/var/www/application1/
/var/www/application2/

Copier le rpertoire CMS dans le rpertoire principal de votre serveur Web :
/var/www/cms/

Copier le fichier index.php du rpertoire CMS vers le rpertoire application1 :
/var/www/application1/index.php

Copier le fichier index.php du rpertoire cms vers le rpertoire application2 :
/var/www/application2/index.php

Copier le rpertoire CMS dans le rpertoire application1 :
/var/www/application1/cms/

Copier le rpertoire CMS dans le rpertoire application2 :
/var/www/application2/cms/

SYSTEME SUPPORTANT LES LIENS SYMBOLIQUES 
Vous disposez des rpertoires d'application de la manire suivante:
/var/www/application1/
/var/www/application2/

Copier le rpertoire CMS dans le rpertoire principal de votre serveur Web :
/var/www/cms/

Crer un lien symbolique  partir du fichier index.php du rpertoire CMS vers le 
rpertoire application1 :
/var/www/application1/index.php -> /var/www/cms/index.php

Crer un lien symbolique  partir du fichier index.php du rpertoire CMS vers le 
rpertoire application2 :
/var/www/application2/index.php -> /var/www/cms/index.php

Crer un lien symbolique  partir du rpertoire CMS vers le rpertoire 
application1 : 
/var/www/application1/cms/ -> /var/www/cms/

Copier le rpertoire CMS dans le rpertoire application2 :
/var/www/application2/cms/

Vous aurez comme structure de rpertoire final :
/var/www/cms/
/var/www/application1/cms ->../cms/
/var/www/application2/cms ->../cms/
/var/www/application1/index.php ->../cms/index.php
/var/www/application2/index.php ->../cms/index.php

EXEMPLE 3 - PLUSIEURS INSTANCES D'UNE MME APPLICATION
Dans cet exemple, nous vous proposons l'utilisation du rpertoire CMS pour 
plusieurs instances d'une mme application.  L'utilit d'avoir plusieurs 
instances vous permet de tester votre application avec des configurations 
diffrentes.  Des modifications aux fichiers de l'application affecteraient
toutes les instances.

L'utilisation d'une configuration avec plusieurs instances est utile uniquement 
si nous disposons d'un systme d'exploitation qui permet l'utilisation de liens 
symboliques.  Dans le cas contraire, vous devez faire des copies de votre 
rpertoire de travail dans chacun des rpertoires d'instances.

Dans cet exemple, nous montrons uniquement la configuration pour des systmes 
d'exploitation qui supportent l'utilisation de liens symboliques.

Supposons que nous voulons crer trois instances (instance1, instance2, 
instance3) d'une mme application et utilisons le rpertoire application1 comme 
rpertoire de fichiers de traitement.

Copier le rpertoire CMS dans le rpertoire principal de votre serveur Web :
/var/www/cms/

Crer le rpertoire application1 contenant les fichiers et rpertoires de 
travail :
/var/www/application1/
/var/www/application1/form/

Crer les liens symboliques ncessaires pour le rpertoire CMS :
/var/www/application1/cms/ -> ../../cms/

Crer les liens symboliques ncessaires pour le fichier index.php :
/var/www/application1/index.php -> ../cms/index.php 

Crer le rpertoire application qui contiendra les instances de votre 
application :
/var/www/application/instance1/
/var/www/application/instance2/
/var/www/application/instance3/

Pour chacune des instances :
Crer le lien symbolique ncessaire pour pointer vers le fichier index.php du 
/var/www/cms/ :
/var/www/application/instanceX/cms/index.php -> ../../index.php

Crer le lien symbolique ncessaire pour pointer vers le rpertoire 
application1 :
/var/www/application/instanceX/application1/ -> ../../application1/

Crer le lien symbolique ncessaire pour pointer vers le rpertoire cms :
/var/www/application/instanceX/cms/ -> ../../cms/


Vous aurez comme structure de rpertoire final :
/var/www/cms/
/var/www/cms/index.php

/var/www/application1/
/var/www/application1/config_application.php
/var/www/application1/index.php -> ../cms/index.php 
/var/www/application1/form/
/var/www/application1/cms/ -> ../../cms/

/var/www/application/instance1/
/var/www/application/instance1/cms/index.php -> ../../index.php
/var/www/application/instance1/application1/ -> ../../application1/
/var/www/application/instance1/cms/ -> ../../cms/

/var/www/application/instance2/
/var/www/application/instance2/cms/index.php -> ../../index.php
/var/www/application/instance2/application1/ -> ../../application1/
/var/www/application/instance2/cms/ -> ../../cms/

/var/www/application/instance3/
/var/www/application/instance3/cms/index.php -> ../../index.php
/var/www/application/instance3/application1/ -> ../../application1/
/var/www/application/instance3/cms/ -> ../../cms/

Voici un affichage de la hirarchie des rpertoires que vous devrez avoir :
www
  |- cms (copie du rpertoire cms)
  |- application1
      |- config_application.php
      |- form (contenant les formes spcifiques  l'application1)
      |- index.php -> ../cms/index.php *
      |- cms/ -> ../cms/ *
  |- application
      |- instance1
          |- index.php -> ../../cms/index.php *
          |- application1/ -> ../../application1/ * 
          |- cms/ -> ../../cms/ *
       |- instance2
          |- index.php -> ../../cms/index.php *
          |- application1/ -> ../../application1/ *
          |- cms/ -> ../../cms/ *
       |- instance3
          |- index.php -> ../../cms/index.php *
          |- application1/ -> ../../application1/ *
          |- cms/ -> ../../cms/ *

* lien symbolique ou copie si le systme ne supporte pas les liens symboliques. 


[INSTALLATION DE LA BASE DE DONNES]
JADE utilise PostgreSQL comme base de donnes relationnelles, vous devez donc 
installer PostgreSQL sur votre serveur.  Si vous n'avez pas encore install le 
"package" de PostgreSQL, vous pouvez le tlcharger sur le site officiel de 
PostgreSQL  l'adresse http://www.postgresql.org et l'installer.

Aprs avoir install le "package" de PostgreSQL, il vous faut activer les 
paramtres de PHP dans le fichier php.ini afin de lui permettre  d'utiliser les 
fonctions de PostgreSQL.  Pour plus de dtails concernant la configuration de PHP 
vous pouvez vous rfrer au manuel de configuration de PHP  l'adresse 
http://ca.php.net/manual/en/ini.php.
 
Vous trouverez dans le "package" JadeBD_0_58.zip ou JadeBD_0_58.tar.gz un fichier 
create_jade_schema.sh.  Ce fichier devra tre excut afin d'initialiser votre 
base de donnes et crer la structure des tables et procdures stockes.

[CONFIGURATION DE L'APPLICATION]
Vous trouverez dans le rpertoire CMS un fichier nomm cms_config.php, ce fichier 
servira  dfinir les paramtres de JADE.  

Identifier la ligne dbutant par set_constant("APPLICATION_PATH",...)

Cette ligne sert  dfinir les rpertoires qui peuvent contenir des fichiers  
lire et  garder en mmoire.  Vous pouvez l'utiliser pour dfinir le chemin du 
rpertoire CMS.  Cette variable fonctionne de la mme faon que le search path 
en php.

Pour l'exemple 1 et 2
set_constant("APPLICATION_PATH","./:cms/"); 

Pour l'exemple 3
set_constant("APPLICATION_PATH","./:application1/:cms/");

Dans le fichier config_application.php, vous devez ajouter ou modifier les 
lignes suivantes ncessaires  l'utilisation de la base de donnes. 

set_constant("DATABASE", "host=trex dbname=cms_tutoriel 
                         user=cms_tutoriel_user password=cms_tutoriel_user");
set_constant("DATABASE_MAIN", get_constant("DATABASE"));

Pour plus de dtails sur la configuration veuillez vous rfrer au guide du 
programmeur.

Lorsque la configuration sera termine, les options suivantes seront alors 
disponibles.  Les dtails de l'utilisation de ces options vous seront prsents 
dans le guide du programmeur.

cms_connexion : Ouvrir une session

cms_deconnexion : Fermer la session

cms_inscription : Inscription

cms_oublimotpasse : J'ai oubli mon mot de passe

cms_plan : Plan du site

cms_chgpwd : Changement de mot de passe 
cms_system : Systme	 

cms_usparameter : Paramtres de l'utilisateur	

mas_action : Menus

mas_droit_groupes : Droits par groupe

mas_utilisateur : Utilisateurs	
