Labinvent nouvelle version

Version 25 (Alexandre Cases, 04/19/2016 02:04 pm)

1 21 Alexandre Cases
h1. Labinvent 2.0 (nouvelle version)
2 2 Alexandre Cases
3 7 Alexandre Cases
h2. Installation Labinvent 2.0 (Utilisateurs)
4 7 Alexandre Cases
5 17 Alexandre Cases
h3. A/ PREREQUIS
6 8 Alexandre Cases
7 18 Alexandre Cases
* Un serveur web (apache avec le mod_rewrite actif)
8 18 Alexandre Cases
* Un serveur de base de données (MySQL)
9 18 Alexandre Cases
* PHP 5.5.9 ou plus 
10 19 Alexandre Cases
* Extension PHP "mbstring"
11 19 Alexandre Cases
* Extension PHP "intl"
12 18 Alexandre Cases
13 19 Alexandre Cases
* Librairie "gd"
14 19 Alexandre Cases
* Librairie PHP "php-gd" (même version que PHP)
15 19 Alexandre Cases
* Librairie "zlib"
16 18 Alexandre Cases
17 18 Alexandre Cases
Il est aussi conseillé d'avoir un "phpmyadmin" installé pour pouvoir gérer manuellement la base de données.
18 8 Alexandre Cases
19 24 Alexandre Cases
* Après avoir installer tous les prérequis, récupérer l'archive "labinvent.tar.gz".
20 22 Alexandre Cases
21 24 Alexandre Cases
* Placer cette archive à l'endroit voulu, 2 possibilités :
22 23 Alexandre Cases
- (1) soit vous placez cette archive directement dans le repertoire des sites webs du serveur web (par exemple /var/www/html/localhost/public_html/)
23 22 Alexandre Cases
- (2) soit vous la placez n'importe où ailleurs (par exemple dans votre repertoire home), et ensuite vous indiquerez au serveur web où trouver ce projet
24 22 Alexandre Cases
25 24 Alexandre Cases
* Dézipper l'archive :
26 22 Alexandre Cases
"tar xvfz labinvent.tar.gz"
27 24 Alexandre Cases
> cela crée un dossier labinvent_2-0-xxx/
28 22 Alexandre Cases
29 8 Alexandre Cases
h3. B/ INSTALLATION
30 1 Etienne Pallier
31 23 Alexandre Cases
Nous vous préconisons d'installer le logiciel en mode "SANS LDAP", et d'activer le mode "AVEC LDAP" par la suite, si vous en avez besoin.
32 23 Alexandre Cases
33 23 Alexandre Cases
34 24 Alexandre Cases
* Aller dans le repertoire d'installation :
35 23 Alexandre Cases
cd labinvent/install/
36 23 Alexandre Cases
37 23 Alexandre Cases
38 24 Alexandre Cases
* Exécuter le script d'installation :
39 23 Alexandre Cases
./installation.sh
40 23 Alexandre Cases
(vous pouvez le faire en tant qu'administrateur "root", mais ça n'est pas nécessaire, le script fera quelques petits "sudo" seulement quand nécessaire).
41 23 Alexandre Cases
(Conseil : à la plupart des questions, laissez les réponses par défaut)
42 23 Alexandre Cases
(Comme expliqué au début, faites une installation en mode "sans LDAP")
43 23 Alexandre Cases
44 23 Alexandre Cases
45 24 Alexandre Cases
* Autoriser les fichiers .htaccess sur le site :
46 23 Alexandre Cases
(cf http://book.cakephp.org/2.0/fr/installation/url-rewriting.html)
47 23 Alexandre Cases
Dans le fichier httpd.conf de Apache, si vous avez deja quelquechose comme ceci, cela suffit :
48 23 Alexandre Cases
49 23 Alexandre Cases
> <Directory />
50 23 Alexandre Cases
> Options FollowSymLinks
51 23 Alexandre Cases
> AllowOverride All
52 23 Alexandre Cases
> Order deny,allow
53 23 Alexandre Cases
> Deny from all
54 23 Alexandre Cases
> </Directory>
55 23 Alexandre Cases
56 23 Alexandre Cases
Sinon, vous pouvez ajouter ceci, uniquement pour Labinvent :
57 23 Alexandre Cases
58 23 Alexandre Cases
> <Directory /labinvent>
59 23 Alexandre Cases
> Options FollowSymLinks
60 23 Alexandre Cases
> AllowOverride All
61 23 Alexandre Cases
> </Directory>
62 23 Alexandre Cases
63 23 Alexandre Cases
NB : si labinvent n'est pas dans le repertoire des sites webs, il faut mettre son chemin absolu a la place de /labinvent :
64 23 Alexandre Cases
> <Directory /chemin/abosolu/vers/labinvent>
65 8 Alexandre Cases
66 25 Alexandre Cases
* Tester l'accès web à l'application :
67 25 Alexandre Cases
68 7 Alexandre Cases
69 7 Alexandre Cases
h2. Migration CakePHP3 (Sous UBuntu) 
70 7 Alexandre Cases
71 7 Alexandre Cases
h3. Création projet avec Composer
72 2 Alexandre Cases
73 2 Alexandre Cases
* Télécharger composer.phar : 
74 2 Alexandre Cases
"curl -s https://getcomposer.org/installer | php"
75 2 Alexandre Cases
76 2 Alexandre Cases
* Avec le Composer créer un nouveau projet : 
77 2 Alexandre Cases
"php composer.phar create-project --prefer-dist cakephp/app labinvent_2.0"
78 2 Alexandre Cases
79 4 Alexandre Cases
> Voir structure projet : http://book.cakephp.org/3.0/fr/intro/cakephp-folder-structure.html
80 2 Alexandre Cases
81 2 Alexandre Cases
* On rempli la base de données avec le fichier sql
82 2 Alexandre Cases
83 2 Alexandre Cases
* On indique la BD utilisé à CakePHP dans le fichier config/app.php, propriété "Datasources".
84 2 Alexandre Cases
85 5 Alexandre Cases
* On se place à la racine du projet
86 5 Alexandre Cases
87 2 Alexandre Cases
* On génère le code Scaffold : 
88 2 Alexandre Cases
"bin/cake bake all nom_table" --> ça génére les modeles, les vues, et les controlleurs.
89 2 Alexandre Cases
90 4 Alexandre Cases
> Commande (en une fois) :
91 11 Alexandre Cases
> > bin/cake bake all categories && bin/cake bake all emprunts && bin/cake bake all groupes_metiers && bin/cake bake all groupes_thematiques && bin/cake bake all organismes && bin/cake bake all sites && bin/cake bake all sous_categories && bin/cake bake all suivis && bin/cake bake all sur_categories && bin/cake bake all type_suivis && bin/cake bake all documents && bin/cake bake all utilisateurs && bin/cake bake all materiels
92 6 Alexandre Cases
93 6 Alexandre Cases
h3. Modification de la base de données 
94 13 Alexandre Cases
> Une version du sql corrigée au fur et à mesure est disponible dans le git :
95 13 Alexandre Cases
> > Dans database, le fichier labinvent_2.0_19-04-16 correspond à la création de la base.
96 15 Alexandre Cases
> > Dans database, le fichier labinvent_2.0_insert-irap_19-04-16 correspond aux insertions;
97 6 Alexandre Cases
98 12 Etienne Pallier
* Table "fichiers" en doublon de "documents" => supprimer
99 12 Etienne Pallier
* Attribut organisme inutile dans la table matériel => supprimer
100 13 Alexandre Cases
101 20 Alexandre Cases
h3. Autres remarques lors du dévellopement
102 13 Alexandre Cases
103 13 Alexandre Cases
h4. instalation.sh
104 13 Alexandre Cases
105 13 Alexandre Cases
* "phpqrcode" et "fpdf" dans dossier vendor ?