Wiki

Version 61 (Etienne Pallier, 04/20/2016 11:57 am)

1 1 Etienne Pallier
h1. INVENTIRAP WIKI
2 1 Etienne Pallier
3 16 Etienne Pallier
{{toc}}
4 13 Etienne Pallier
5 26 Etienne Pallier
6 35 Etienne Pallier
7 26 Etienne Pallier
8 36 Etienne Pallier
---
9 26 Etienne Pallier
10 54 Etienne Pallier
h2. TODOLIST
11 54 Etienne Pallier
12 55 Etienne Pallier
 * Mettre à jour fichier config (supprimer ce qui est BDD)
13 54 Etienne Pallier
14 55 Etienne Pallier
 * Doublon de la table documents et fichiers : laquelle garder (rename table ?)
15 54 Etienne Pallier
16 56 Etienne Pallier
 * Mieux gérer le debug=2 dans cakephp3 pour éviter pb de cache (update structure BDD)
17 56 Etienne Pallier
18 57 Etienne Pallier
 * Rendre Envoi de mail possible en local (et pas seulement sur serveur prod)
19 57 Etienne Pallier
20 58 Etienne Pallier
 * Update script sql de création de la BDD complète (bugué) et update script install.sh
21 58 Etienne Pallier
22 36 Etienne Pallier
h2. ROADMAP
23 1 Etienne Pallier
24 60 Etienne Pallier
Version en cours (1.3, avec cakephp 2.1) : https://projects.irap.omp.eu/projects/inventirap/roadmap#version_1.3
25 37 Etienne Pallier
26 36 Etienne Pallier
Carte routière du projet : https://projects.irap.omp.eu/projects/inventirap/roadmap
27 36 Etienne Pallier
28 47 Etienne Pallier
Plan de travail: [[plan of work]]
29 47 Etienne Pallier
30 60 Etienne Pallier
Labinvent nouvelle version (2.0 avec cakephp3, en cours): [[labinvent nouvelle version]]
31 59 Etienne Pallier
32 39 Etienne Pallier
---
33 39 Etienne Pallier
34 36 Etienne Pallier
h2. INSTALLATION DU LOGICIEL (HOWTO)
35 18 Etienne Pallier
36 18 Etienne Pallier
37 12 Etienne Pallier
(Pour les developpeurs avec Eclipse, voir aussi le document install/manual_install/INSTALLATION_MANUELLE_mode_expert.txt)
38 12 Etienne Pallier
(Une fois l'installation terminee, les developpeurs devraient aussi lire le document docs/HOWTO.txt) 
39 12 Etienne Pallier
40 19 Etienne Pallier
LabInvent est un logiciel multi-plateformes (Linux, Mac OS X, Windows), il nécessite les services suivants :
41 12 Etienne Pallier
- serveur web (Apache)
42 12 Etienne Pallier
- serveur de base de données (Mysql)
43 12 Etienne Pallier
- interpréteur Php 5.3+ (minimum)
44 12 Etienne Pallier
45 12 Etienne Pallier
Il est aussi conseillé d'avoir un "phpmyadmin" installé pour pouvoir gérer manuellement la base de données
46 12 Etienne Pallier
47 12 Etienne Pallier
Il a été testé avec les configurations suivantes :
48 12 Etienne Pallier
- OS : CentOS 6.2 et 6.6, Mac OS 10.7, Windows 7
49 12 Etienne Pallier
- PHP : 5.3, 5.4, et 5.6
50 12 Etienne Pallier
- Mysql : 5.1, 5.6
51 12 Etienne Pallier
- Apache : 2.2.14, 2.2.15, et 2.4.10
52 12 Etienne Pallier
53 12 Etienne Pallier
Le projet occupe un espace d'environ 190 Mo (environ 370 Mo si versionné avec svn).
54 12 Etienne Pallier
55 12 Etienne Pallier
ATTENTION, pré-requis : 
56 12 Etienne Pallier
1) Apache rewrite activé 
57 12 Etienne Pallier
Le module rewrite d'apache doit etre chargé et actif. 
58 12 Etienne Pallier
Pour verifier le chargement, phpinfo affiche la liste des modules d'apache pris en compte. 
59 12 Etienne Pallier
2) Le projet necessite la librairie gd (utilisee par php), sans quoi vous aurez une erreur (fatale) 
60 12 Etienne Pallier
lors de la visualisation de la fiche d'un materiel (qui contient l'image d'un QRCode). 
61 12 Etienne Pallier
(Pour info, c'est la librairie phpqrcode, dans cakephp/app/Vendor, qui génère le QRCode et donc utilise gd, par exemple pour appeler des fonctions telles que ImageCreate...)
62 1 Etienne Pallier
Il faut donc vérifier que gd et php-gd sont installés :
63 31 Etienne Pallier
- gd => on l'installe avec "yum install gd" sur CentOS
64 12 Etienne Pallier
- php-gd doit etre installé avec la bonne version, c'est à dire celle du php que vous utilisez 
65 31 Etienne Pallier
(par exemple, si php 5.4, installer php-gd version 5.4) => on l'installe avec "yum install php-gd" sur CentOS 
66 12 Etienne Pallier
(Pour info, la librairie phpqrcode necessite aussi la librairie zlib qui offre les fonctions gzcompress, gzuncompress, etc.)
67 12 Etienne Pallier
68 21 Etienne Pallier
69 1 Etienne Pallier
-----------------
70 1 Etienne Pallier
71 23 Etienne Pallier
h3. INSTALLATION
72 21 Etienne Pallier
73 21 Etienne Pallier
-----------------
74 12 Etienne Pallier
75 12 Etienne Pallier
Pour une MISE A JOUR du logiciel, aller directement à la fin de ce document, a la section MISE A JOUR (UPGRADE)
76 12 Etienne Pallier
77 52 Etienne Pallier
A/ PRELIMINAIRES
78 52 Etienne Pallier
79 12 Etienne Pallier
Il y a deux façons de l'installer :
80 12 Etienne Pallier
- Pour une installation manuelle (mode expert) allez dans le sous-repertoire manual_install et lisez le document INSTALLATION_MANUELLE_mode_expert.txt
81 12 Etienne Pallier
- Sinon (méthode conseillée), si vous voulez une installation complètement assistée (avec questions/réponses), poursuivez la lecture de ce document.
82 12 Etienne Pallier
(NB : l'ancien script d'installation fourni à l'origine par Upsilon s'appelle install-upsillon.sh, il n'est plus a jour)
83 12 Etienne Pallier
84 12 Etienne Pallier
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.
85 12 Etienne Pallier
86 12 Etienne Pallier
Pour cela, suivez les instructions ci-dessous.
87 12 Etienne Pallier
88 12 Etienne Pallier
Si ce n'est pas déjà fait, récuperer l'archive labinvent.tgz
89 12 Etienne Pallier
90 12 Etienne Pallier
Placer cette archive à l'endroit voulu, 2 possibilités :
91 28 Etienne Pallier
- (1) soit vous placez cette archive directement dans le repertoire des sites webs du serveur web (par exemple /var/www/html/)
92 28 Etienne Pallier
- (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
93 12 Etienne Pallier
94 12 Etienne Pallier
Dézipper l'archive :
95 30 Etienne Pallier
	tar xvfz labinvent.tgz
96 1 Etienne Pallier
	=> cela crée un dossier labinvent_1-3-xxx/
97 52 Etienne Pallier
98 52 Etienne Pallier
99 52 Etienne Pallier
B/ INSTALLATION
100 52 Etienne Pallier
101 12 Etienne Pallier
Aller dans le repertoire d'installation :
102 12 Etienne Pallier
	cd labinvent/install/
103 12 Etienne Pallier
104 12 Etienne Pallier
Exécuter le script d'installation :
105 12 Etienne Pallier
	./installation.sh
106 12 Etienne Pallier
(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).
107 12 Etienne Pallier
(Conseil : à la plupart des questions, laissez les réponses par défaut)
108 12 Etienne Pallier
(Comme expliqué au début, faites une installation en mode "sans LDAP")
109 12 Etienne Pallier
110 12 Etienne Pallier
111 12 Etienne Pallier
Autoriser les fichiers .htaccess sur le site :
112 12 Etienne Pallier
(cf http://book.cakephp.org/2.0/fr/installation/url-rewriting.html)
113 12 Etienne Pallier
Dans le fichier httpd.conf de Apache, si vous avez deja quelquechose comme ceci, cela suffit :
114 12 Etienne Pallier
<Directory />
115 12 Etienne Pallier
    Options FollowSymLinks
116 12 Etienne Pallier
    AllowOverride All
117 12 Etienne Pallier
#    Order deny,allow
118 12 Etienne Pallier
#    Deny from all
119 12 Etienne Pallier
</Directory>
120 12 Etienne Pallier
Sinon, vous pouvez ajouter ceci, uniquement pour Labinvent :
121 12 Etienne Pallier
<Directory /labinvent>
122 12 Etienne Pallier
    Options FollowSymLinks
123 12 Etienne Pallier
    AllowOverride All
124 12 Etienne Pallier
</Directory>
125 12 Etienne Pallier
NB : si labinvent n'est pas dans le repertoire des sites webs, il faut mettre son chemin absolu a la place de /labinvent :
126 12 Etienne Pallier
<Directory /chemin/abosolu/vers/labinvent>
127 12 Etienne Pallier
128 1 Etienne Pallier
129 1 Etienne Pallier
Tester l'accès web à l'application :
130 1 Etienne Pallier
- (1) Si vous avez placé le logiciel directement dans le repertoire des sites webs du serveur web :
131 31 Etienne Pallier
	=> tester l'url http://localhost/labinvent/cakephp
132 12 Etienne Pallier
- (2) Si vous avez placé le logiciel dans un autre repertoire, par exemple /home/votre_nom/ :
133 12 Etienne Pallier
	Faites un lien nommé "labinvent" dans le repertoire des sites webs du serveur web (par exemple /var/www/html/), qui pointe vers le repertoire "cakephp" du logiciel :
134 31 Etienne Pallier
	=> cd /var/www/html/
135 31 Etienne Pallier
	=> ln -s /home/votre_nom/labinvent/cakephp/ labinvent
136 31 Etienne Pallier
	=> puis, tester l'url http://localhost/labinvent/
137 12 Etienne Pallier
	(Si vous ne voulez ou ne pouvez pas utiliser un lien, vous pouvez plutôt créer un Virtual Host, voir tout à la fin de ce doc, la section "VIRTUAL HOST") 
138 12 Etienne Pallier
139 12 Etienne Pallier
Tester le bon fonctionnement de l'application :
140 12 Etienne Pallier
- Connectez-vous au logiciel (normalement, vous etes le super administrateur) avec votre login (ldap), SANS MOT DE PASSE (grâce au mode "SANS ldap")
141 12 Etienne Pallier
- Vous etes maintenant sur la page d'accueil générale ; vous devez voir votre nom s'afficher :
142 12 Etienne Pallier
"Vous êtes connecté en tant que <vos nom et prénom> et avec le niveau d'authentification Super Administrateur"
143 12 Etienne Pallier
- Cliquez un peu partout pour voir si tout s'affiche bien sans erreur (par exemple, "Liste des matériels" doit afficher 0 matériel...)
144 12 Etienne Pallier
- Cliquez sur Outils, puis "Gérer les utilisateurs privilégiés" : vous devriez voir un seul utilisateur dans la liste, le "super administrateur" (a priori vous)
145 12 Etienne Pallier
- Déconnectez-vous du logiciel 
146 12 Etienne Pallier
147 12 Etienne Pallier
Voila, felicitations, votre installation fonctionne !
148 12 Etienne Pallier
149 12 Etienne Pallier
Pensez à personnaliser les 2 fichiers logos suivants dans cakephp/app/webroot/img/ :
150 12 Etienne Pallier
	- logo_entity.jpg : le logo du laboratoire
151 22 Etienne Pallier
	- logo_software.jpg : le logo du logiciel
152 1 Etienne Pallier
153 1 Etienne Pallier
-----------------
154 23 Etienne Pallier
155 1 Etienne Pallier
h3. PASSAGE EN MODE "AVEC LDAP" (facultatif) :
156 22 Etienne Pallier
157 22 Etienne Pallier
-----------------
158 12 Etienne Pallier
159 12 Etienne Pallier
Maintenant, si vous le désirez, vous pouvez ajouter la connexion au LDAP :
160 12 Etienne Pallier
- soit en refaisant une nouvelle installation complète, qui incluera cette fois-ci une connexion au LDAP, 
161 12 Etienne Pallier
	mais il faudra répondre à nouveau à toutes les questions
162 12 Etienne Pallier
- soit (méthode conseillée) directement à la main dans votre fichier de configuration comme ceci :
163 12 Etienne Pallier
	Editer votre fichier de configuration cakephp/app/Config/labinvent.php, chercher la section ci-dessous, 
164 12 Etienne Pallier
	et remplacer chacune des valeurs par celles concernant votre LDAP.
165 12 Etienne Pallier
	Attention, il faut bien mettre USE_LDAP à la valeur TRUE :
166 12 Etienne Pallier
	 
167 12 Etienne Pallier
	'USE_LDAP' => TRUE,
168 12 Etienne Pallier
	'ldap' => array (
169 12 Etienne Pallier
		'host'		 			=> 'ldap-servername-or-ip',
170 12 Etienne Pallier
		'port'					=> '389',
171 12 Etienne Pallier
		'authenticationType'	=> 'cn',
172 12 Etienne Pallier
		'baseDn'				=> 'ou=users,dc=irap,dc=omp,dc=eu',
173 12 Etienne Pallier
		'filter'				=> '(cn=*)'
174 12 Etienne Pallier
	),
175 12 Etienne Pallier
176 12 Etienne Pallier
Pour tester que votre connexion LDAP fonctionne bien,
177 12 Etienne Pallier
connectez-vous au logiciel d'inventaire avec votre login ldap, et cette fois-ci AVEC votre mot de passe LDAP 
178 12 Etienne Pallier
(normalement, vous ne devriez plus pouvoir vous connecter sans mot de passe)
179 12 Etienne Pallier
Voila, vous devriez maintenant etre connecte sur le logiciel avec votre login ldap et avec le profil "super administrateur" 
180 12 Etienne Pallier
181 1 Etienne Pallier
La base de donnees est actuellement vide. Vous pouvez donc commencer à alimenter le logiciel avec quelques données.
182 12 Etienne Pallier
Pour cela, poursuivez votre lecture.
183 12 Etienne Pallier
184 12 Etienne Pallier
-----------------
185 12 Etienne Pallier
186 12 Etienne Pallier
h3. PARAMETRAGE DU LOGICIEL (PERSONNALISATION)
187 1 Etienne Pallier
188 1 Etienne Pallier
-----------------
189 1 Etienne Pallier
190 26 Etienne Pallier
Vous devez maintenant personnaliser le logiciel à partir des données concernant votre entité (laboratoire).
191 26 Etienne Pallier
Pour cela, éditer le fichier de configuration cakephp/app/Config/labinvent.php et adapter la valeur des paramètres
192 12 Etienne Pallier
contenus dans le tableau "localisation".
193 26 Etienne Pallier
194 26 Etienne Pallier
		'localisation' => array(
195 26 Etienne Pallier
				
196 26 Etienne Pallier
			// Nom de l'entité (laboratoire) :			
197 12 Etienne Pallier
			//'labName' => "IRAP",
198 1 Etienne Pallier
			'labName' => "LABONAME",
199 26 Etienne Pallier
			
200 26 Etienne Pallier
			...
201 26 Etienne Pallier
		
202 22 Etienne Pallier
		), // $localisation
203 1 Etienne Pallier
204 23 Etienne Pallier
205 22 Etienne Pallier
-----------------
206 22 Etienne Pallier
207 22 Etienne Pallier
h3. ALIMENTATION DE LA BASE DE DONNEES
208 12 Etienne Pallier
209 12 Etienne Pallier
-----------------
210 12 Etienne Pallier
211 12 Etienne Pallier
En ce qui concerne le rôle quotidien des personnes de l'administration sur ce logiciel, voir le document Inventirap_AdministrationUser_Manual.docx dans le dossier docs/
212 12 Etienne Pallier
En ce qui concerne les possibilites offertes à tout utilisateur (non privilegie) de ce logiciel, voir le document Inventirap_User_Manual.docx dans le dossier docs/
213 12 Etienne Pallier
214 12 Etienne Pallier
Ici, nous allons plutot expliquer comment commencer a alimenter la base de donnees du logiciel (a priori vide) avec un minimum de donnees 
215 12 Etienne Pallier
afin de rendre possible la saisie de l'inventaire materiel. En effet, pour pouvoir saisir des materiels dans l'inventaire, 
216 12 Etienne Pallier
il vous faut au prealable :
217 12 Etienne Pallier
218 12 Etienne Pallier
1) definir quelques utilisateurs PRIVILEGIES (comme vous, mais avec des profils moins forts comme "administrateur", "responsable"...)
219 12 Etienne Pallier
qui seront habilites a faire cette saisie (notamment le personnel administratif) ; attention,
220 1 Etienne Pallier
tout utilisateur (du LDAP) non privilegie peut entrer un nouveau materiel dans l'inventaire, mais seul le personnel administratif 
221 12 Etienne Pallier
pourra ensuite faire la saisie des informations administratives et valider la fiche materiel...
222 12 Etienne Pallier
223 1 Etienne Pallier
2) definir quelques domaines et categories (et éventuellement des sous-categories si vous en avez besoin), qui permettront de classer le materiel
224 12 Etienne Pallier
225 12 Etienne Pallier
3) (FACULTATIF) definir des groupes metiers (auquels on pourra associer les utilisateurs mais aussi les materiels) et groupes thematiques (associés aux materiels)
226 12 Etienne Pallier
227 31 Etienne Pallier
=> Pour ces 3 premiers points, lire le document Inventirap_AdministrationUser_Manual.docx (dans le dossier docs/) au chapitre 2 "Les outils"
228 1 Etienne Pallier
229 1 Etienne Pallier
On pourra ensuite enfin commencer la saisie des materiels
230 1 Etienne Pallier
231 31 Etienne Pallier
=> Sur ce point, lire le document Inventirap_User_Manual.docx (dans le dossier docs/) au chapitre 3, en particulier 3.2 "Saisie de materiel"
232 22 Etienne Pallier
233 12 Etienne Pallier
234 23 Etienne Pallier
235 22 Etienne Pallier
-----------------
236 22 Etienne Pallier
237 1 Etienne Pallier
h3. LOGS (facultatif)
238 1 Etienne Pallier
239 1 Etienne Pallier
-----------------
240 1 Etienne Pallier
241 12 Etienne Pallier
Un fichier de log est créé et alimenté par l'application.
242 22 Etienne Pallier
Il s'agit de cakephp/app/tmp/logs/labinvent.log
243 12 Etienne Pallier
244 23 Etienne Pallier
245 22 Etienne Pallier
-----------------
246 22 Etienne Pallier
247 22 Etienne Pallier
h3. INSTALLATION DES ETIQUETEUSES (facultatif)
248 12 Etienne Pallier
249 12 Etienne Pallier
-----------------
250 12 Etienne Pallier
251 12 Etienne Pallier
Si vous désirez imprimer des étiquettes (ruban) à coller sur les materiels inventoriés,
252 12 Etienne Pallier
il vous faut installer une ou plusieurs étiqueteuses (au moins une) sur les postes clients.
253 12 Etienne Pallier
254 12 Etienne Pallier
Voici la procédure à suivre pour installer une étiqueteuse sur un poste client :
255 12 Etienne Pallier
256 12 Etienne Pallier
1) Acheter la bonne imprimante (!) 
257 12 Etienne Pallier
L'imprimante configurée est une "DYMO LabelManager PnP USB"
258 12 Etienne Pallier
Pour avoir plus d'informations sur cette étiqueteuse, aller sur la page Outils puis cliquer sur "Voir les étiqueteuses installées"
259 12 Etienne Pallier
260 12 Etienne Pallier
2) Installer cette imprimante sur le poste client
261 12 Etienne Pallier
Attention, il faut bien faire l'installation dans cette ordre sinon ça ne marche pas :
262 12 Etienne Pallier
a) Mettre la batterie dans l'imprimante
263 12 Etienne Pallier
b) Connecter l'imprimante sur un port USB du poste client, l'imprimante s'installe normalement toute seule,
264 12 Etienne Pallier
et représente un nouvel espace disque sur le bureau (sur Windows, elle occupe une lettre de lecteur disque monté, style "G:")
265 12 Etienne Pallier
C'est normal car ce disque contient un mini logiciel qui permet d'utiliser très simplement cette imprimante.
266 12 Etienne Pallier
Mais ce n'est pas ce logiciel que nous allons utiliser, donc surtout ne l'installez pas. 
267 12 Etienne Pallier
268 12 Etienne Pallier
3) Télécharger et installer le logiciel DLS (Dymo Label Software) associé à cette imprimante
269 12 Etienne Pallier
Pour cela aller dans la section "LOGICIEL DLS (DYMO LABEL SOFTWARE) A INSTALLER", et cliquer sur le lien "Téléchargement logiciel"
270 12 Etienne Pallier
Selon que c'est un poste Mac ou Windows, cliquer sur le bon lien "DOWNLOAD"
271 12 Etienne Pallier
Installer ce logiciel
272 12 Etienne Pallier
273 12 Etienne Pallier
4) Imprimer une étiquette 
274 12 Etienne Pallier
Allumer l'imprimante (si ce n'est déjà fait)
275 12 Etienne Pallier
Depuis ce poste client, aller sur le logiciel Labinvent (via un navigateur comme Firefox par exemple),
276 12 Etienne Pallier
cliquez sur "Liste des matériels", cliquez sur un matériel quelconque, et cliquez sur le bouton "Impr. ruban"
277 12 Etienne Pallier
Les 5 étapes suivantes ne sont à faire qu'une seule fois pour toutes : 
278 12 Etienne Pallier
- Une boîte de dialogue s'ouvre pour vous demander quel logiciel il faut ouvrir.
279 12 Etienne Pallier
- Cliquez sur le bouton "Choisir..." (à droite du texte "Ouvrir avec")
280 1 Etienne Pallier
- Choisir l'application DLS (Dymo Label Software)
281 1 Etienne Pallier
- Cocher l'option "Toujours effectuer cette opération avec ce type de fichier"
282 1 Etienne Pallier
- Cliquer sur OK
283 12 Etienne Pallier
Le logiciel DLS s'ouvre avec l'étiquette prête à être imprimée.
284 12 Etienne Pallier
Cliquer sur le bouton "Imprimer"
285 12 Etienne Pallier
286 22 Etienne Pallier
287 12 Etienne Pallier
288 23 Etienne Pallier
289 12 Etienne Pallier
-----------------
290 22 Etienne Pallier
291 22 Etienne Pallier
h3. AUTORISATIONS (ACL) : REGLAGE DES DROITS ASSOCIES A CHAQUE PROFIL
292 12 Etienne Pallier
293 12 Etienne Pallier
-----------------
294 12 Etienne Pallier
295 12 Etienne Pallier
TODO: expliquer comment ajouter, modifer, ou supprimer un profil 
296 12 Etienne Pallier
297 12 Etienne Pallier
Cette application définit 5 profils de pouvoir croissant :
298 12 Etienne Pallier
- USER : le profil par défaut de tout utilisateur)
299 12 Etienne Pallier
- RESPONSABLE : le responsable d'un ou plusieurs matériels 
300 12 Etienne Pallier
- ADMIN : le service administratif (gestion)
301 12 Etienne Pallier
- ADMINPLUS : le responsable administratif
302 12 Etienne Pallier
- SUPERADMIN (ce profil correspond au super administrateur, il a TOUS les droits)
303 12 Etienne Pallier
304 12 Etienne Pallier
Les droits associés à chaque profil sont décrits dans le document docs/userguide/ACL.pdf, principalement dans le tableau II-B.
305 12 Etienne Pallier
306 12 Etienne Pallier
L'ensemble de tous ces droits est contrôllé (presque) entièrement par un seul tableau nommé $easyACL
307 12 Etienne Pallier
308 12 Etienne Pallier
Il vous suffit donc de jouer sur le contenu de ce tableau pour modifier les droits.
309 12 Etienne Pallier
310 12 Etienne Pallier
On peut définir ces droits à deux niveaux : 
311 12 Etienne Pallier
- Les droits PAR DEFAUT sont définis dans la classe mère de tous les controleurs, nommée app/Controller/AppController
312 12 Etienne Pallier
- Les droits spécifiques à un modèle (Matériel, Suivi, Emprunt) sont définis dans le controleur respectif (MaterielsController, SuivisController, EmpruntController...)
313 12 Etienne Pallier
314 12 Etienne Pallier
1) Les droits PAR DEFAUT sont définis dans la classe mère de tous les controleurs, nommée app/Controller/AppController
315 12 Etienne Pallier
316 12 Etienne Pallier
Vous y trouverez un tableau $easyACL avec un contenu semblable à celui-ci :
317 12 Etienne Pallier
318 12 Etienne Pallier
	protected $easyACL = array(
319 12 Etienne Pallier
	
320 12 Etienne Pallier
			'ALL' => array (
321 12 Etienne Pallier
				// CRUD actions :
322 12 Etienne Pallier
				'index' => 'Y', // Read all
323 12 Etienne Pallier
				'view' => 'Y', // Read one
324 12 Etienne Pallier
				'add' => 'Y', // Create
325 12 Etienne Pallier
				'edit' => 'N', // Update
326 12 Etienne Pallier
				//'delete' => 'N', // Delete
327 12 Etienne Pallier
			),
328 12 Etienne Pallier
	
329 12 Etienne Pallier
			'USER' => array (
330 12 Etienne Pallier
				// CRUD actions :
331 12 Etienne Pallier
				'index' => 'Y', // read all
332 12 Etienne Pallier
				'view' => 'Y', // read one
333 12 Etienne Pallier
				//'add' => 'Y', // create
334 12 Etienne Pallier
				'edit' => 'N', // update
335 12 Etienne Pallier
				'delete' => 'N',
336 12 Etienne Pallier
			),
337 12 Etienne Pallier
338 12 Etienne Pallier
			'RESPONSABLE' => array (
339 12 Etienne Pallier
				// CRUD actions :
340 12 Etienne Pallier
				'index' => 'Y', // read all
341 12 Etienne Pallier
				'view' => 'Y', // read one
342 12 Etienne Pallier
				'add' => 'Y', // create
343 12 Etienne Pallier
				'edit' => 'N', // update
344 12 Etienne Pallier
				'delete' => 'Y',
345 12 Etienne Pallier
			),
346 12 Etienne Pallier
			
347 12 Etienne Pallier
			...
348 12 Etienne Pallier
349 12 Etienne Pallier
	}
350 12 Etienne Pallier
351 12 Etienne Pallier
Le sous-tableau 'ALL' contient les DROITS PAR DEFAUT pour TOUS les profils (ALL), 
352 12 Etienne Pallier
pour TOUS les modèles, et pour les actions qu'il définit (ici, les actions CRUD, Create Read Update Delete).
353 12 Etienne Pallier
Par exemple, avec l'entrée 'delete' => 'N', par défaut aucun profil n'a le droit de supprimer quelque modèle (matériel, suivi, emprunt, ...) que ce soit,
354 12 Etienne Pallier
même les nouveaux modèles qui pourraient être ajoutés dans le futur.
355 12 Etienne Pallier
Attention, ce système est "permissif" dans le sens ou par défaut tout est autorisé.
356 12 Etienne Pallier
Si vous voulez interdire une action, il faut le dire explicitement, sinon elle est autorisée par défaut.
357 12 Etienne Pallier
En général, cela simplifie les choses.
358 12 Etienne Pallier
Donc, par exemple, si on commente l'action 'delete', elle est alors autorisée.
359 12 Etienne Pallier
C'est comme si elle était définie avec 'delete' => 'Y'
360 12 Etienne Pallier
 
361 12 Etienne Pallier
Si un profil spécifique doit avoir un droit sur une action, qui est différent du droit PAR DEFAUT défini dans 'ALL',
362 12 Etienne Pallier
alors il faut ajouter un sous-tableau pour ce profil, portant le nom de ce profil (en majuscule).
363 12 Etienne Pallier
364 12 Etienne Pallier
Ainsi, le sous-tableau 'USER' contient les droits spécifiques pour le profil USER, 
365 12 Etienne Pallier
pour TOUS les modèles, et pour les actions qu'il définit. 
366 12 Etienne Pallier
Par exemple, avec l'entrée 'delete' => 'N', par défaut un USER n'a pas le droit de supprimer quelque modèle (matériel, suivi, emprunt, ...) que ce soit.
367 12 Etienne Pallier
Si une action n'est pas définie (par exemple 'add'), alors c'est l'autorisation définie dans 'ALL' qui fait foi.
368 12 Etienne Pallier
369 12 Etienne Pallier
Le sous-tableau 'ADMIN' contient les droits par défaut pour le profil ADMIN, 
370 12 Etienne Pallier
pour TOUS les modèles, et pour les actions qu'il définit. 
371 12 Etienne Pallier
Par exemple, avec l'entrée 'delete' => 'Y', par défaut un ADMIN a le droit de supprimer TOUS les modèles (matériel, suivi, emprunt, ...),
372 12 Etienne Pallier
y-compris les nouveaux modèles qui pourraient être ajoutés dans le futur.
373 12 Etienne Pallier
374 12 Etienne Pallier
Et ainsi de suite pour les autres profils ADMIN, ADMINPLUS, et SUPERADMIN.
375 12 Etienne Pallier
S'ils ne sont pas définis, alors ils héritent des autorisations par défaut définies dans 'ALL'. 
376 12 Etienne Pallier
377 12 Etienne Pallier
378 12 Etienne Pallier
2) Les droits spécifiques à un modèle (Matériel, Suivi, Emprunt) sont définis dans le controleur respectif (MaterielsController, SuivisController, EmpruntController...)
379 12 Etienne Pallier
380 12 Etienne Pallier
Si, pour un modèle donné, on veut définir des droits différents de ceux définis globalement dans app/Controller/AppController,
381 12 Etienne Pallier
il faut le faire dans le controleur correspondant au modèle.
382 12 Etienne Pallier
Par exemple, si on veut des droits particuliers pour les matériels, il faut les définirs dans app/Controller/MaterielsController
383 12 Etienne Pallier
Cependant, afin de garder la plupart des droits définis globalement dans AppController, 
384 12 Etienne Pallier
et de redéfinir SEULEMENT CERTAINS droits spécifiques pour certains profils ou certaines actions,
385 12 Etienne Pallier
on définira les nouveaux droits un peu différemment de ce qui a été fait dans AppController.
386 12 Etienne Pallier
(TODO: je n'ai pas réussi avec Php 5.3 à gérer un héritage au niveau du tableau $easyACL entre celui de AppController et celui des sous-classes,
387 12 Etienne Pallier
car celui défini dans une sous-classe écrase complètement celui de la classe mère AppController ; peut-être qu'avec Php 5.6 il y aurait une solution plus éléguante).
388 12 Etienne Pallier
En effet, plutôt que de définir à nouveau un tableau $easyACL qui écraserait celui défini dans AppController,
389 12 Etienne Pallier
on hérite du $easyACL de AppController, et on en écrase seulement certaines entrées.
390 12 Etienne Pallier
On définit ces nouvelles entrées dans la méthode beforeFilter() du controleur.
391 12 Etienne Pallier
Voir par exemple les entrées définies dans la méthode beforeFilter() du controleur MaterielsController. 
392 12 Etienne Pallier
393 12 Etienne Pallier
Par exemple, une entrée comme celle-ci :
394 12 Etienne Pallier
	$this->easyACL['ALL']['view'] = 'N';
395 12 Etienne Pallier
remplacerait l'entrée par défaut de AppController
396 12 Etienne Pallier
	'ALL' => array (
397 12 Etienne Pallier
		...
398 12 Etienne Pallier
		'view' => 'Y',
399 12 Etienne Pallier
		...
400 12 Etienne Pallier
	);
401 12 Etienne Pallier
402 12 Etienne Pallier
Une entrée (un peu plus complexe) comme celle-ci :
403 12 Etienne Pallier
	$this->easyACL['ALL']['delete'] = 'status == CREATED';
404 12 Etienne Pallier
remplacerait l'entrée par défaut de AppController
405 12 Etienne Pallier
	'ALL' => array (
406 12 Etienne Pallier
		...
407 12 Etienne Pallier
		'delete' => 'Y',
408 12 Etienne Pallier
		...
409 12 Etienne Pallier
	);
410 12 Etienne Pallier
et signifierait que la suppression d'un matériel n'est possible (par défaut) que si le statut du matériel est "CREATED" (il vient d'être créé, mais il n'est pas encore validé). 
411 12 Etienne Pallier
412 12 Etienne Pallier
Enfin, une entrée (encore plus complexe) comme celle-ci :
413 12 Etienne Pallier
	$this->easyACL['USER']['edit'] = '&& nom_createur == CURRENT_USER_NAME';
414 12 Etienne Pallier
remplacerait l'entrée par défaut de AppController pour le profile USER
415 12 Etienne Pallier
	'USER' => array (
416 12 Etienne Pallier
		...
417 1 Etienne Pallier
		'edit' => 'Y',
418 1 Etienne Pallier
		...
419 1 Etienne Pallier
	);
420 1 Etienne Pallier
et ajouterait (grâce au '&&') une contrainte supplémentaire pour la modification d'un matériel (pour les USER),
421 12 Etienne Pallier
qui est que le matériel doit avoir été créé par l'utilisateur qui en fait la modification
422 12 Etienne Pallier
423 12 Etienne Pallier
... etc.
424 12 Etienne Pallier
425 12 Etienne Pallier
A vous de jouer maintenant, vous savez comment "tuner" votre application, au niveau des droits de chaque profil et sur chaque action.
426 22 Etienne Pallier
427 12 Etienne Pallier
428 23 Etienne Pallier
429 12 Etienne Pallier
-----------------
430 22 Etienne Pallier
431 22 Etienne Pallier
h3. VIRTUAL HOST (facultatif)
432 12 Etienne Pallier
433 12 Etienne Pallier
-----------------
434 12 Etienne Pallier
435 12 Etienne Pallier
But : Créer un virtual host pour pouvoir acceder au logiciel avec cette simple url "http://localhost:8081" par exemple.
436 12 Etienne Pallier
437 12 Etienne Pallier
Pour cela :
438 12 Etienne Pallier
439 12 Etienne Pallier
- Ajouter a la fin du fichier de conf apache /etc/httpd.conf (ou /etc/httpd/conf/httpd.conf, ou encore XAMPP/xamppfiles/etc/httpd.conf) la ligne :
440 12 Etienne Pallier
	Include etc/extra/labinvent.conf
441 12 Etienne Pallier
	(ou conf.d/labinvent.conf)
442 12 Etienne Pallier
443 12 Etienne Pallier
- Editer ce fichier etc/extra/labinvent.conf et y mettre ceci :
444 12 Etienne Pallier
#####################
445 12 Etienne Pallier
Listen 8081
446 12 Etienne Pallier
NameVirtualHost *:8081
447 12 Etienne Pallier
<VirtualHost *:8081>
448 12 Etienne Pallier
        ServerAdmin VOTRE_ADRESSE_MAIL
449 12 Etienne Pallier
        DocumentRoot "/Applications/XAMPP/xamppfiles/htdocs/labinvent/cakephp/app/webroot"
450 12 Etienne Pallier
        ErrorLog logs/labinvent.error_log
451 12 Etienne Pallier
        CustomLog logs/labinvent.access_log combined
452 1 Etienne Pallier
</VirtualHost>
453 1 Etienne Pallier
#####################
454 1 Etienne Pallier
455 1 Etienne Pallier
- Remplacer VOTRE_ADRESSE_MAIL par votre adresse email
456 12 Etienne Pallier
- Modifier la ligne DocumentRoot avec le chemmin absolu vers votre installation de l'application (jusqu'au dossier webroot inclus)
457 12 Etienne Pallier
458 1 Etienne Pallier
Redemarrez maintenant votre serveur web Apache
459 12 Etienne Pallier
460 12 Etienne Pallier
Voila ! Vous devriez maintenant pouvoir vous connecter a l'application avec l'url http://localhost:8081
461 12 Etienne Pallier
462 12 Etienne Pallier
463 12 Etienne Pallier
464 12 Etienne Pallier
NB: Une fois l'installation terminee, les developpeurs devraient aussi lire le document docs/HOWTO.txt 
465 22 Etienne Pallier
466 1 Etienne Pallier
467 22 Etienne Pallier
468 23 Etienne Pallier
-----------------
469 22 Etienne Pallier
470 22 Etienne Pallier
h3. MISE A JOUR (UPGRADE) en 5 petites etapes
471 12 Etienne Pallier
472 12 Etienne Pallier
-----------------
473 12 Etienne Pallier
474 1 Etienne Pallier
Nous expliquons ici comment mettre à jour votre logiciel,
475 12 Etienne Pallier
en installant une nouvelle version,
476 12 Etienne Pallier
qui doit remplacer la version actuelle (déjà installée et utilisée avec des données).
477 1 Etienne Pallier
Le but est de mettre a jour le logiciel tout en conservant la connexion a la base de données actuelle et son contenu.
478 12 Etienne Pallier
479 12 Etienne Pallier
1) Desactiver la version actuelle
480 1 Etienne Pallier
Aller dans le repertoire parent de l’application actuelle
481 12 Etienne Pallier
Le repertoire de l’application actuelle devrait avoir un nom du style labinvent/
482 12 Etienne Pallier
C’est sur ce nom que doit pointer l’URL du navigateur (ex: http://labinvent/cakephp)
483 12 Etienne Pallier
Renommer ce repertoire en "labinvent_OLD" :
484 12 Etienne Pallier
	mv labinvent labinvent_OLD
485 12 Etienne Pallier
486 12 Etienne Pallier
2) Activer la nouvelle version
487 12 Etienne Pallier
Extraire la nouvelle version à côté de l’actuelle :
488 12 Etienne Pallier
	tar xvfz labinvent_X-Y-ZZZ.tgz (par exemple : tar xvfz labinvent_1-3-460.tgz)
489 31 Etienne Pallier
=> cela doit créer un dossier labinvent_X-Y-ZZZ/ (par exemple : labinvent_1-3-460/)
490 12 Etienne Pallier
(à coté du dossier labinvent_OLD/)
491 12 Etienne Pallier
Renommer ce repertoire en "labinvent" :
492 12 Etienne Pallier
	mv labinvent_X-Y-ZZZ.tgz labinvent (par exemple : mv labinvent_1-3-460 labinvent)
493 12 Etienne Pallier
494 12 Etienne Pallier
3) Aller dans le dossier d’installation de la NOUVELLE version
495 12 Etienne Pallier
cd labinvent/install/
496 12 Etienne Pallier
497 12 Etienne Pallier
4) Executer le script installation.sh
498 26 Etienne Pallier
./installation.sh
499 1 Etienne Pallier
ATTENTION : Répondre "Non" à la question "Voulez-vous creer la base de donnees ?"
500 1 Etienne Pallier
501 1 Etienne Pallier
5) Récupérer la configuration de l’application actuelle dans la nouvelle
502 1 Etienne Pallier
- Configuration Base de données : 
503 12 Etienne Pallier
Copier le fichier labinvent_OLD/cakephp/app/Config/database.php de l’application actuelle dans la nouvelle, c’est à dire dans labinvent/cakephp/app/Config/
504 1 Etienne Pallier
- Configuration Générale : 
505 1 Etienne Pallier
Adapter le nouveau fichier labinvent/cakephp/app/Config/labinvent.php à partir de ce que vous avez dans le même fichier de l’application actuelle,
506 1 Etienne Pallier
c'est à dire dans labinvent_OLD/cakephp/app/Config/labinvent.php
507 12 Etienne Pallier
(la commande « diff » peut aider à voir ce qui a changé)
508 31 Etienne Pallier
509 46 Etienne Pallier
h2. TEST
510 31 Etienne Pallier
511 46 Etienne Pallier
---
512 46 Etienne Pallier
513 46 Etienne Pallier
514 46 Etienne Pallier
h2. RUN
515 46 Etienne Pallier
516 46 Etienne Pallier
---
517 31 Etienne Pallier
518 48 Etienne Pallier
h2. INSTALLATION DEPUIS ECLIPSE (SEULEMENT POUR LES DEV)
519 48 Etienne Pallier
520 48 Etienne Pallier
1) Préparation d'Eclipse
521 48 Etienne Pallier
522 48 Etienne Pallier
Download Eclipse pour Php (plugin PDT déjà inclus) : 
523 48 Etienne Pallier
http://www.eclipse.org/downloads
524 48 Etienne Pallier
(sinon, éventuellement http://www.eclipse.org/downloads/index-developer.php)
525 48 Etienne Pallier
(on peut aussi télécharger un eclipse standard, et lui ajouter ensuite le plugin PDT)
526 48 Etienne Pallier
Choisir "Eclipse for PHP Developpers"
527 48 Etienne Pallier
Fin 2014, j'ai téléchargé la version Luna 4.4.1 SR1
528 48 Etienne Pallier
Workspace proposé par défaut : /Users/pallier/Documents/workspace
529 48 Etienne Pallier
(==> remplacé par /Users/pallier/projects/Eclipse/eclipse_luna_php_workspace)
530 48 Etienne Pallier
531 48 Etienne Pallier
Cliquer sur "Workbench"
532 48 Etienne Pallier
533 48 Etienne Pallier
Se placer dans la perspective PHP
534 48 Etienne Pallier
535 48 Etienne Pallier
Installer un client svn avec le plugin subversive : 
536 48 Etienne Pallier
Help/Eclipse Marketplace, chercher "subversive"
537 48 Etienne Pallier
Installer Subversive (pour moi, c'était version 2.0.1)
538 48 Etienne Pallier
Restart Eclipse
539 48 Etienne Pallier
540 48 Etienne Pallier
File/Import/From svn
541 48 Etienne Pallier
==> demande à installer un connecteur svn
542 48 Etienne Pallier
J'ai choisi le plus récent, soit "svn kit 1.8.7" (compatible avec svn 1.7 et 1.8)
543 48 Etienne Pallier
(il contient Subversive svn connectors 4.1.2)
544 48 Etienne Pallier
545 48 Etienne Pallier
Restart Eclipse
546 48 Etienne Pallier
547 48 Etienne Pallier
2) Recupération du projet 
548 48 Etienne Pallier
549 48 Etienne Pallier
File/Import/From svn (2ème fois)
550 48 Etienne Pallier
URL : https://usvn-inventirap.irap.omp.eu/repo/inventirap/trunk
551 48 Etienne Pallier
(répondre Non à la proposition de normaliser l'arborescence)
552 48 Etienne Pallier
donner un nom, par exemple : labinvent2015
553 48 Etienne Pallier
Utiliser emplacement : 
554 48 Etienne Pallier
- par défaut (directement dans le dossier d'Eclipse, c'est plus simple)
555 48 Etienne Pallier
ou bien
556 48 Etienne Pallier
- /Applications/XAMPP/xamppfiles/htdocs (si on veut que le projet s'execute directement dans le dossier web apache htdocs, mais ca n'est pas obligatoire...)
557 48 Etienne Pallier
558 48 Etienne Pallier
S'assurer que le projet est bien reconnu comme un projet PHP (il doit y avoir un petit "P" sur le dossier racine du projet)
559 48 Etienne Pallier
Si ça n'est pas le cas, vérifier que le fichier .project (à la racine) contient bien
560 48 Etienne Pallier
	<natures>
561 48 Etienne Pallier
		<nature>org.eclipse.php.core.PHPNature</nature>
562 48 Etienne Pallier
	</natures>
563 48 Etienne Pallier
NB : Le fichier .project est normalement versionné et donc le projet labinvent devrait être reconnu automatiquement comme projet PHP
564 48 Etienne Pallier
565 48 Etienne Pallier
S'assurer que les fichiers de vue de cakephp (*.ctp) sont bien reconnus comme des fichiers PHP.
566 48 Etienne Pallier
Pour tester cela, ouvrir le fichier de vue cakephp/app/View/Categories/get_all.ctp
567 48 Etienne Pallier
Si ce fichier s'ouvre comme un simple fichier texte, c'est qu'il n'est pas reconnu par Eclipse comme un fichier Php. 
568 48 Etienne Pallier
Il faut donc associer l'editeur Php a l'extension de fichier "*.ctp" :
569 48 Etienne Pallier
- Preferences/General/Content types
570 48 Etienne Pallier
- Dans la liste "Content types", ouvrir la section "Text", selectionner PHP
571 48 Etienne Pallier
- Ajouter l'extension "*.ctp"
572 48 Etienne Pallier
573 48 Etienne Pallier
Vérifier la version de php utilisée (il serait préférable d'utiliser la meme version que celle du serveur officiel, début 2015 c'est toujours php 5.3) :
574 48 Etienne Pallier
- Clic-droit sur le projet, Propriétés
575 48 Etienne Pallier
- PHP
576 48 Etienne Pallier
- Interpreter
577 48 Etienne Pallier
- Enable project specific settings, PHP Version : "PHP 5.3"
578 48 Etienne Pallier
579 48 Etienne Pallier
S'assurer que le texte est bien encodé en UTF-8 par défaut :
580 48 Etienne Pallier
clic-droit sur le dossier racine du projet (dans PHP Explorer), Properties, Resource : dans la zone "Text file encoding" cocher "Other" et sélectionner UTF-8
581 48 Etienne Pallier
(
582 48 Etienne Pallier
Il faudrait commiter ça mais je ne sais pas trop si c'est risqué ou pas.
583 48 Etienne Pallier
Les fichiers concernés sont :
584 48 Etienne Pallier
- .project (déjà versionné) : car il commence par la ligne "<?xml version="1.0" encoding="UTF-8"?>"
585 48 Etienne Pallier
- mais c'est surtout celui-ci qui compte (actuellement ignoré de svn) : .settings/org.eclipse.core.resources.prefs : car sa 2eme ligne est "encoding/<project>=UTF-8"
586 48 Etienne Pallier
)
587 48 Etienne Pallier
588 48 Etienne Pallier
Les éléments suivants sont normalement DEJA ignorés par svn (svn:ignore), à vérifier :
589 48 Etienne Pallier
- .settings/
590 48 Etienne Pallier
- cakephp/app/tmp/ : tout sauf 
591 48 Etienne Pallier
	- documents/
592 48 Etienne Pallier
- cakephp/app/Config/ :
593 48 Etienne Pallier
	- database.php
594 48 Etienne Pallier
	- labinvent.php
595 48 Etienne Pallier
596 48 Etienne Pallier
597 48 Etienne Pallier
598 48 Etienne Pallier
599 48 Etienne Pallier
*********************************************************
600 48 Etienne Pallier
REMARQUES INTERRESSANTES (MAIS VOUS POUVEZ LES IGNORER)
601 48 Etienne Pallier
602 48 Etienne Pallier
// DEBUT DES REMARQUES
603 48 Etienne Pallier
604 48 Etienne Pallier
A la racine du projet, j'ai plusieurs éléments cachés de configuration Eclipse :
605 48 Etienne Pallier
606 48 Etienne Pallier
1) fichier .buildpath 
607 48 Etienne Pallier
Il est versionné puisque "svn status .buildpath" (depuis la console) ne donne rien
608 48 Etienne Pallier
Il contient :
609 48 Etienne Pallier
610 48 Etienne Pallier
<?xml version="1.0" encoding="UTF-8"?>
611 48 Etienne Pallier
<buildpath>
612 48 Etienne Pallier
        <buildpathentry kind="con" path="org.eclipse.php.core.LANGUAGE"/>
613 48 Etienne Pallier
        <buildpathentry kind="lib" path="docs/mockup/mockup_html.zip"/>
614 48 Etienne Pallier
        <buildpathentry kind="src" path="cakephp"/>
615 48 Etienne Pallier
</buildpath>
616 48 Etienne Pallier
617 48 Etienne Pallier
2) fichier .project
618 48 Etienne Pallier
Il est déjà versionné
619 48 Etienne Pallier
Il contient :
620 48 Etienne Pallier
<?xml version="1.0" encoding="UTF-8"?>
621 48 Etienne Pallier
<projectDescription>
622 48 Etienne Pallier
        <name>invirap</name>
623 48 Etienne Pallier
        <comment></comment>
624 48 Etienne Pallier
        <projects>
625 48 Etienne Pallier
        </projects>
626 48 Etienne Pallier
        <buildSpec>
627 48 Etienne Pallier
                <buildCommand>
628 48 Etienne Pallier
                        <name>org.eclipse.wst.common.project.facet.core.builder</name>
629 48 Etienne Pallier
                        <arguments>
630 48 Etienne Pallier
                        </arguments>
631 48 Etienne Pallier
                </buildCommand>
632 48 Etienne Pallier
                <buildCommand>
633 48 Etienne Pallier
                        <name>org.eclipse.wst.validation.validationbuilder</name>
634 48 Etienne Pallier
                        <arguments>
635 48 Etienne Pallier
                        </arguments>
636 48 Etienne Pallier
                </buildCommand>
637 48 Etienne Pallier
                <buildCommand>
638 48 Etienne Pallier
                        <name>org.eclipse.dltk.core.scriptbuilder</name>
639 48 Etienne Pallier
                        <arguments>
640 48 Etienne Pallier
                        </arguments>
641 48 Etienne Pallier
                </buildCommand>
642 48 Etienne Pallier
        </buildSpec>
643 48 Etienne Pallier
        <natures>
644 48 Etienne Pallier
                <nature>org.eclipse.php.core.PHPNature</nature>
645 48 Etienne Pallier
                <nature>org.eclipse.wst.common.project.facet.core.nature</nature>
646 48 Etienne Pallier
        </natures>
647 48 Etienne Pallier
</projectDescription>
648 48 Etienne Pallier
649 48 Etienne Pallier
3) dossier .settings/ (exclus de svn)
650 48 Etienne Pallier
Il contient 3 fichiers :
651 48 Etienne Pallier
652 48 Etienne Pallier
- org.eclipse.core.resources.prefs : bizarrement, il ne contient que quelques références seulement :
653 48 Etienne Pallier
eclipse.preferences.version=1
654 48 Etienne Pallier
encoding//cakephp/app/Controller/MaterielsController.php=UTF-8
655 48 Etienne Pallier
encoding//cakephp/app/View/Elements/menu_view.ctp=UTF-8
656 48 Etienne Pallier
encoding//cakephp/app/View/Layouts/default.ctp=UTF-8
657 48 Etienne Pallier
encoding//cakephp/app/View/Materiels/index.ctp=UTF-8
658 48 Etienne Pallier
encoding//cakephp/app/View/Materiels/scaffold.view.ctp=UTF-8
659 48 Etienne Pallier
encoding//database/Upd_TableConstraints.sql=UTF-8
660 48 Etienne Pallier
encoding//database/update/README.txt=UTF-8
661 48 Etienne Pallier
encoding//docs/HOWTO.txt=UTF-8
662 48 Etienne Pallier
encoding//install/HOWTO.txt=UTF-8
663 48 Etienne Pallier
encoding/<project>=UTF-8
664 48 Etienne Pallier
665 48 Etienne Pallier
- org.eclipse.php.core.prefs
666 48 Etienne Pallier
eclipse.preferences.version=1
667 48 Etienne Pallier
include_path=0;/invirap\u00051;/invirap/docs/mockup/mockup_html.zip
668 48 Etienne Pallier
669 48 Etienne Pallier
- org.eclipse.wst.common.project.facet.core.xml : sans doute inutile ? (lié à "Faceted Project Validation Builder" dans Properties/Builders)
670 48 Etienne Pallier
<?xml version="1.0" encoding="UTF-8"?>
671 48 Etienne Pallier
<faceted-project>
672 48 Etienne Pallier
  <fixed facet="php.core.component"/>
673 48 Etienne Pallier
  <fixed facet="php.component"/>
674 48 Etienne Pallier
  <installed facet="php.core.component" version="1"/>
675 48 Etienne Pallier
  <installed facet="php.component" version="5.4"/>
676 48 Etienne Pallier
</faceted-project>
677 48 Etienne Pallier
678 48 Etienne Pallier
// FIN DES REMARQUES
679 48 Etienne Pallier
*********************************************************
680 48 Etienne Pallier
681 48 Etienne Pallier
682 48 Etienne Pallier
II - Configuration du projet LABINVENT
683 48 Etienne Pallier
**************************************************
684 48 Etienne Pallier
685 53 Etienne Pallier
Aller maintenant dans la section INSTALLATION ci-dessue, à partir du point "B/ Installation"
686 48 Etienne Pallier
687 48 Etienne Pallier
688 48 Etienne Pallier
689 48 Etienne Pallier
---
690 23 Etienne Pallier
691 23 Etienne Pallier
h2. Comment accéder au site redmine depuis l'extérieur ?
692 1 Etienne Pallier
693 1 Etienne Pallier
-----------------
694 1 Etienne Pallier
695 1 Etienne Pallier
696 1 Etienne Pallier
1) Créer un tunnel (entre le port local 9443 et le port distant 443 du serveur web irap, via la passerelle)
697 1 Etienne Pallier
698 1 Etienne Pallier
ssh -L 9443:projects.irap.omp.eu:443 MONLOGINDULABO@PASSERELLE.irap.omp.eu
699 2 Etienne Pallier
700 3 Etienne Pallier
(Pour les personnes qui utilisent Windows, vous pouvez faire la même chose avec le logiciel Putty, en vous inspirant de ce qui est décrit au point 4) a) de cet article http://planetoweb.cesr.fr/twiki/bin/view/Main/HowtoInformatique#Se_connecter_un_serveur_linux_en) 
701 24 Etienne Pallier
702 24 Etienne Pallier
2) Pointer son navigateur sur https://localhost:9443
703 5 Etienne Pallier
704 24 Etienne Pallier
-----------------
705 24 Etienne Pallier
706 5 Etienne Pallier
h2. Dépôt SVN
707 10 Etienne Pallier
708 5 Etienne Pallier
-----------------
709 25 Etienne Pallier
710 25 Etienne Pallier
https://usvn-inventirap.irap.omp.eu/repo/inventirap/trunk/
711 5 Etienne Pallier
712 25 Etienne Pallier
-----------------
713 25 Etienne Pallier
714 1 Etienne Pallier
h2. Mailing list
715 1 Etienne Pallier
716 1 Etienne Pallier
-----------------
717 1 Etienne Pallier
718 1 Etienne Pallier
usvn-repo_inventirap AT irap.omp.eu
719 1 Etienne Pallier
720 1 Etienne Pallier
(https://listes.irap.omp.eu/wws/info/usvn-repo_inventirap)