Wiki

Version 54 (Etienne Pallier, 04/15/2016 04:14 pm)

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