Labinvent 13

Version 1 (Etienne Pallier, 05/02/2016 11:52 am)

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