Subversion Repositories eFlore/Archives.cel-v2

Rev

Rev 28 | Rev 31 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 28 Rev 30
Line 9... Line 9...
9
import org.tela_botanica.client.modeles.ImageUploaderAsynchroneDAO;
9
import org.tela_botanica.client.modeles.ImageUploaderAsynchroneDAO;
10
import org.tela_botanica.client.modeles.ListeImageCarnet;
10
import org.tela_botanica.client.modeles.ListeImageCarnet;
11
import org.tela_botanica.client.modeles.ListeImageAsynchroneDAO;
11
import org.tela_botanica.client.modeles.ListeImageAsynchroneDAO;
12
import org.tela_botanica.client.modeles.MotsClesAsynchroneDAO;
12
import org.tela_botanica.client.modeles.MotsClesAsynchroneDAO;
Line -... Line 13...
-
 
13
 
-
 
14
import com.google.gwt.json.client.JSONArray;
13
 
15
import com.google.gwt.json.client.JSONObject;
14
import com.gwtext.client.data.ArrayReader;
16
import com.gwtext.client.data.ArrayReader;
15
import com.gwtext.client.data.FieldDef;
17
import com.gwtext.client.data.FieldDef;
16
import com.gwtext.client.data.IntegerFieldDef;
18
import com.gwtext.client.data.IntegerFieldDef;
17
import com.gwtext.client.data.MemoryProxy;
19
import com.gwtext.client.data.MemoryProxy;
Line 39... Line 41...
39
	
41
	
Line 40... Line 42...
40
	private HashMap motsCles = new HashMap(0) ;
42
	private HashMap motsCles = new HashMap(0) ;
Line 41... Line 43...
41
	
43
	
42
	private Store st = null ;
-
 
43
	
-
 
Line 44... Line 44...
44
	private com.gwtext.client.data.Tree arbreMotsCles = null ;
44
	private Store st = null ;
45
	
45
	
46
	private String arbreAplati = "" ;
46
	private com.gwtext.client.data.Tree arbreMotsCles =  new Tree() ;
47
	
47
	
Line 65... Line 65...
65
	public ImageMediateur getIMediateur()
65
	public ImageMediateur getIMediateur()
66
	{
66
	{
67
		return iMediateur ;
67
		return iMediateur ;
68
	}
68
	}
Line -... Line 69...
-
 
69
	
-
 
70
	/**
-
 
71
	 * Appelle le DAO asynchrone pour obtenir la liste des images
-
 
72
	 * @param r le rafraichissable auxquel on enverra les données
69
	
73
	 */
70
	public void obtenirPhotoGalerie(Rafraichissable r)
74
	public void obtenirPhotoGalerie(Rafraichissable r)
71
	{
75
	{
72
		ListeImageAsynchroneDAO liaDAO = new ListeImageAsynchroneDAO();
76
		ListeImageAsynchroneDAO liaDAO = new ListeImageAsynchroneDAO();
73
		liaDAO.ObtenirListeImages(this);		
77
		liaDAO.ObtenirListeImages(this);		
Line -... Line 78...
-
 
78
	}
-
 
79
	
-
 
80
	/**
-
 
81
	 * Appelle le DAO d'upload qui va choisir la methode d'upload adaptée
74
	}
82
	 * et lancer l'interface appropriée
75
	
83
	 */
76
	public void uploaderImages()
84
	public void uploaderImages()
77
	{
85
	{
78
		ImageUploaderAsynchroneDAO IuADaO = new ImageUploaderAsynchroneDAO() ;
86
		ImageUploaderAsynchroneDAO IuADaO = new ImageUploaderAsynchroneDAO() ;
79
		IuADaO.setIMediateur(getIMediateur());
87
		IuADaO.setIMediateur(getIMediateur());
Line -... Line 88...
-
 
88
		IuADaO.choisirMethodeUpload() ;
-
 
89
	}
-
 
90
	
-
 
91
	/**
80
		IuADaO.choisirMethodeUpload() ;
92
	 * Met à jour la liste des images à partir d'un objet
81
	}
93
	 * @param o la nouvelle liste d'image 
82
	
94
	 */
83
	public void rafraichirListeImage(Object o)
95
	public void rafraichirListeImage(Object o)
Line -... Line 96...
-
 
96
	{
-
 
97
		cacheImage = (ListeImageCarnet)o ;
-
 
98
	}
-
 
99
	
84
	{
100
	/**
85
		cacheImage = (ListeImageCarnet)o ;
101
	 * Met à jour l'arbre des mots clés à partir d'un objet
86
	}
102
	 * @param o le nouvel arbre de mots clés
87
	
103
	 */
Line -... Line 104...
-
 
104
	public void rafraichirArbreMotsCles(Object o)
-
 
105
	{
-
 
106
		arbreMotsCles = (com.gwtext.client.data.Tree)o ;
-
 
107
	}
-
 
108
	
88
	public void rafraichirArbreMotsCles(Object o)
109
	/**
89
	{
110
	 * Met à jour la table de correspondance mots clés / ids
90
		arbreMotsCles = (com.gwtext.client.data.Tree)o ;
111
	 * à partir d'un objet
91
	}
112
	 * @param o la nouvelle table des mots clés
Line -... Line 113...
-
 
113
	 */
-
 
114
	public void rafraichirMotsCles(Object o)
-
 
115
	{
-
 
116
		motsCles = (HashMap)o ;
-
 
117
	}
-
 
118
	
92
	
119
	/**
93
	public void rafraichirMotsCles(Object o)
120
	 * Va chercher les métadonnées associées à une image dans la liste 
94
	{
-
 
95
		motsCles = (HashMap)o ;
121
	 * des images chargée dans le modèle
Line 96... Line 122...
96
	}
122
	 * @param r le rafraichissable auquel on enverra les informations
97
	
123
	 * @param id l'identifiant de l'image
98
	public void obtenirMetadonnees(Rafraichissable r, String id)
124
	 */
99
	{
125
	public void obtenirMetadonnees(Rafraichissable r, String id)
100
			
126
	{			
101
		ImageCarnet im = (ImageCarnet)cacheImage.get(id) ;
127
		ImageCarnet im = (ImageCarnet)cacheImage.get(id) ;
102
				
-
 
103
				Object meta[] = new Object[3] ;
128
				
Line -... Line 129...
-
 
129
		Object meta[] = new Object[3] ;
-
 
130
		meta[0] = im.getMetadonnesExif() ;
-
 
131
		meta[1] = im.getMetadonnesIptc() ;
-
 
132
		meta[2] = im.getInfoGenerales() ;
-
 
133
		
-
 
134
		r.rafraichir(meta,false) ;	
104
				meta[0] = im.getMetadonnesExif() ;
135
	}
105
				meta[1] = im.getMetadonnesIptc() ;
136
	
106
				meta[2] = im.getInfoGenerales() ;
137
	/**
107
				
138
	 * Va chercher les mots clés associés à une image dans la liste 
108
				r.rafraichir(meta,false) ;
139
	 * des images chargée dans le modèle
Line 109... Line 140...
109
	
140
	 * @param r le rafraichissable auquel on enverra les informations
110
	}
141
	 * @param id l'identifiant de l'image
Line -... Line 142...
-
 
142
	 */
-
 
143
	public void obtenirMotsClesId(Rafraichissable r, String id)
-
 
144
	{	
-
 
145
		ImageCarnet im = (ImageCarnet)cacheImage.get(id) ;
-
 
146
		String motsClesId = im.getMotsCles() ;
-
 
147
		String[] motsClesIdTab = motsClesId.split(",") ;
-
 
148
		
111
	
149
		r.rafraichir(motsClesIdTab, false) ;
112
	public void obtenirMotsClesId(Rafraichissable r, String id)
150
	}
113
	{
151
	
114
		ImageCarnet im = (ImageCarnet)cacheImage.get(id) ;
152
	/**
115
		String motsClesId = im.getMotsCles() ;
153
	 * Met à jour la liste des images en local et appelle le DAO de mise
Line 127... Line 165...
127
				ic.miseAJourInfoGenerales(commentaires, date) ;
165
				ic.miseAJourInfoGenerales(commentaires, date) ;
128
				mettreAjourBaseDeDonneesImageCarnet(ic) ;	
166
				mettreAjourBaseDeDonneesImageCarnet(ic) ;	
129
			}
167
			}
130
	}
168
	}
Line -... Line 169...
-
 
169
	
-
 
170
	/**
-
 
171
	 * Ajoute un nouveau mot clés à la liste des mots clés locale
-
 
172
	 * @param text le mot clé
-
 
173
	 * @param id l'identifiant du mot clé
131
	
174
	 */
132
	public void mettreAjourMotsClesId(String text, String id)
175
	public void mettreAjourMotsClesId(String text, String id)
133
	{
176
	{
134
				 motsCles.put(id, text) ;
177
				 motsCles.put(id, text) ;
Line 135... Line -...
135
	}
-
 
136
	
178
	}
137
	public void mettreAjourBaseDeDonneesMotsClesId()
-
 
-
 
179
	
-
 
180
	/**
138
	{
181
	 * Appelle le DAO chargé de mettre à jour la base de données avec
139
		
-
 
140
	}
182
	 * les toutes les informations des images modifiées par l'utilisateur
141
	
183
	 */
142
	public void mettreAJourBaseDeDonneesListeImageCarnet()
184
	public void mettreAJourBaseDeDonneesListeImageCarnet()
143
	{
185
	{
Line 144... Line 186...
144
		ListeImageAsynchroneDAO liDaO = new ListeImageAsynchroneDAO();
186
		ListeImageAsynchroneDAO liDaO = new ListeImageAsynchroneDAO();
145
		liDaO.setIMediateur(iMediateur);
187
		liDaO.setIMediateur(iMediateur);
Line -... Line 188...
-
 
188
		
-
 
189
		liDaO.SynchroniserBaseDeDonnees(cacheImage);
-
 
190
	}
-
 
191
	
-
 
192
	/**
146
		
193
	 * Appelle le DAO chargé de mettre à jour la base de données avec
147
		liDaO.SynchroniserBaseDeDonnees(cacheImage);
194
	 * les toutes les informations d'une image donnée
148
	}
195
	 * @param ic l'image à synchroniser avec la base
149
	
196
	 */
150
	public void mettreAjourBaseDeDonneesImageCarnet(ImageCarnet ic)
197
	public void mettreAjourBaseDeDonneesImageCarnet(ImageCarnet ic)
151
	{
198
	{
Line -... Line 199...
-
 
199
		ImageAsynchroneDAO iaDaO = new ImageAsynchroneDAO();
-
 
200
		iaDaO.setIMediateur(iMediateur);
-
 
201
		iaDaO.SynchroniserBaseDeDonnees(ic) ;
-
 
202
	}
-
 
203
 
152
		ImageAsynchroneDAO iaDaO = new ImageAsynchroneDAO();
204
	/**
153
		iaDaO.setIMediateur(iMediateur);
205
	 * Supprime les images données du cache local et appelle le DAO
154
		iaDaO.SynchroniserBaseDeDonnees(ic) ;
206
	 * qui les supprime de la base de données
155
	}
207
	 * @param ids les identifiants des images selectionnées
156
 
208
	 */
Line 157... Line 209...
157
	public void supprimerImages(String[] ids) {
209
	public void supprimerImages(String[] ids) 
158
		
-
 
159
		String rids[] = new String[ids.length] ;
210
	{
160
		ListeImageAsynchroneDAO liDao = new ListeImageAsynchroneDAO() ;
211
		String rids[] = new String[ids.length] ;
161
		liDao.setIMediateur(iMediateur);
212
		ListeImageAsynchroneDAO liDao = new ListeImageAsynchroneDAO() ;
162
		
213
		liDao.setIMediateur(iMediateur);
163
		for (int i = 0; i < ids.length; i++) {
214
		
Line 164... Line 215...
164
			
215
		for (int i = 0; i < ids.length; i++) 
165
			
216
		{				
166
			String key = ids[i] ;
217
			String key = ids[i] ;
167
			ImageCarnet ic = (ImageCarnet)cacheImage.get(key) ;
218
			ImageCarnet ic = (ImageCarnet)cacheImage.get(key) ;
168
			rids[i] = ic.getId() ;
-
 
169
		}
219
			rids[i] = ic.getId() ;
Line -... Line 220...
-
 
220
		}
-
 
221
		
-
 
222
		if(rids.length != 0)
-
 
223
		{
170
		
224
			liDao.supprimerBaseDeDonnees(rids);
-
 
225
		}		
-
 
226
	}
-
 
227
 
-
 
228
	/**
-
 
229
	 * Met à jour les données locales suivant le type des nouvelles données
-
 
230
	 * et appelle le médiateur pour le notifier de la mise à jour
-
 
231
	 */
-
 
232
	public void rafraichir(Object nouvelleDonnees, boolean repandreRafraichissement) 
-
 
233
	{
-
 
234
		if(nouvelleDonnees instanceof ListeImageCarnet)
-
 
235
		{
-
 
236
				ListeImageCarnet data = (ListeImageCarnet) nouvelleDonnees ;
-
 
237
				Object[][] photoData = new Object[data.size()][7];
-
 
238
				int i = 0 ;
-
 
239
				for (Iterator it = data.keySet().iterator(); it.hasNext();) 
-
 
240
				{
-
 
241
					ImageCarnet im = (ImageCarnet) data.get(it.next());
-
 
242
					photoData[i][0] = im.getOrdre() ;
-
 
243
					photoData[i][1] = im.getDate() ;
-
 
244
					photoData[i][2] = im.getIptcCity() ;
-
 
245
					photoData[i][3] = im.getMake()+" "+im.getModel() ;
-
 
246
					photoData[i][4] = im.getSUrl() ;
-
 
247
					photoData[i][5] = im.getMUrl() ;
-
 
248
					photoData[i][6] = im.getUrl() ;
-
 
249
					
-
 
250
					i++ ;
-
 
251
				}
-
 
252
		
-
 
253
				// creation du store
171
		if(rids.length != 0)
254
				FieldDef defNumImage = new IntegerFieldDef("num_image");
-
 
255
				FieldDef defDatImage = new StringFieldDef("dat_image");
-
 
256
				FieldDef defLieImage = new StringFieldDef("lie_image");
-
 
257
				FieldDef defAppImage = new StringFieldDef("app_image");
Line 172... Line -...
172
		{
-
 
173
			liDao.supprimerBaseDeDonnees(rids);
258
				FieldDef defUrlImageS = new StringFieldDef("url_image_S");
174
		}
-
 
175
		
-
 
176
	}
-
 
177
 
-
 
178
	public void rafraichir(Object nouvelleDonnees,
-
 
179
			boolean repandreRafraichissement) {
-
 
180
		
-
 
181
			ListeImageCarnet data = (ListeImageCarnet) nouvelleDonnees ;
-
 
182
			Object[][] photoData = new Object[data.size()][7];
-
 
183
			int i = 0 ;
-
 
184
			for (Iterator it = data.keySet().iterator(); it.hasNext();) 
-
 
Line 185... Line 259...
185
			{
259
				FieldDef defUrlImageM = new StringFieldDef("url_image_M");
186
				ImageCarnet im = (ImageCarnet) data.get(it.next());
-
 
187
				photoData[i][0] = im.getOrdre() ;
260
				FieldDef defUrlImage = new StringFieldDef("url_image");
188
				photoData[i][1] = im.getDate() ;
261
				FieldDef[] defTab = {defNumImage,defDatImage,defLieImage,defAppImage,defUrlImageS,defUrlImageM,defUrlImage};
189
				photoData[i][2] = im.getIptcCity() ;
-
 
190
				photoData[i][3] = im.getMake()+" "+im.getModel() ;
-
 
191
				photoData[i][4] = im.getSUrl() ;
-
 
192
				photoData[i][5] = im.getMUrl() ;
-
 
193
				photoData[i][6] = im.getUrl() ;
-
 
194
				
-
 
195
				i++ ;
-
 
196
			}
-
 
197
	
-
 
Line 198... Line 262...
198
			// creation du store
262
				RecordDef rd = new RecordDef(defTab) ;
-
 
263
				
199
			FieldDef defNumImage = new IntegerFieldDef("num_image");
264
				final MemoryProxy dataProxy = new MemoryProxy(photoData);
-
 
265
				final ArrayReader reader = new ArrayReader(rd);
-
 
266
		
200
			FieldDef defDatImage = new StringFieldDef("dat_image");
267
				final Store photoStore = new Store(dataProxy, reader);
-
 
268
				
-
 
269
				rafraichirListeImage(nouvelleDonnees);
201
			FieldDef defLieImage = new StringFieldDef("lie_image");
270
				
Line 202... Line 271...
202
			FieldDef defAppImage = new StringFieldDef("app_image");
271
				st = photoStore ;
Line 203... Line -...
203
			FieldDef defUrlImageS = new StringFieldDef("url_image_S");
-
 
204
			FieldDef defUrlImageM = new StringFieldDef("url_image_M");
-
 
205
			FieldDef defUrlImage = new StringFieldDef("url_image");
272
			
206
			FieldDef[] defTab = {defNumImage,defDatImage,defLieImage,defAppImage,defUrlImageS,defUrlImageM,defUrlImage};
273
				if(repandreRafraichissement)
-
 
274
				{
-
 
275
					getIMediateur().synchroniserDonneesZoomListeGalerie(st, this) ;
-
 
276
				}
-
 
277
		}
-
 
278
		
-
 
279
		if(nouvelleDonnees instanceof JSONArray)
207
			RecordDef rd = new RecordDef(defTab) ;
280
		{
208
			
281
			JSONArray reponse = (JSONArray)nouvelleDonnees ; 
209
			final MemoryProxy dataProxy = new MemoryProxy(photoData);
282
			
-
 
283
			final int taillemax = reponse.size();
-
 
284
			
-
 
285
			if(taillemax == 0)
-
 
286
			{
-
 
287
				TreeNode root = new TreeNode() ;
-
 
288
				root.setId("racine") ;
-
 
289
				root.setText("Tags") ;
-
 
290
				root.setIcon("tela.png") ;
-
 
291
				String[] usObj = {"Tags","racine"} ;
-
 
292
				root.setUserObject(usObj) ;
-
 
293
				arbreMotsCles.setRootNode(root) ;				
-
 
294
			}
210
			final ArrayReader reader = new ArrayReader(rd);
295
			
-
 
296
			for (int j = 0; j < taillemax ; j++) 
-
 
297
			{
-
 
298
				
-
 
299
				if(reponse.get(j).isObject() != null)
-
 
300
				{
-
 
301
					JSONObject noeud = (JSONObject)reponse.get(j) ;
-
 
302
					
-
 
303
					String id_noeud = noeud.get("cmc_id_mot_cle_utilisateur").isString().stringValue() ;
-
 
304
					String mot_cle = noeud.get("cmc_mot_cle").isString().stringValue() ;
-
 
305
					String parent = noeud.get("cmc_id_parent").isString().stringValue() ;
-
 
306
					
-
 
307
					String[] usObj = {mot_cle, id_noeud} ; 
-
 
308
					
-
 
309
					if(id_noeud.equals("racine"))
-
 
310
					{
-
 
311
						TreeNode root = new TreeNode() ;
-
 
312
						root.setId(id_noeud) ;
-
 
313
						root.setText(mot_cle) ;
-
 
314
						root.setIcon("tela.png") ;
-
 
315
						root.setUserObject(usObj) ;
-
 
316
						arbreMotsCles.setRootNode(root) ;
-
 
317
					}
-
 
318
					else
-
 
319
					{
-
 
320
						TreeNode node = new TreeNode() ;
211
	
321
						node.setId(id_noeud) ;
212
			final Store photoStore = new Store(dataProxy, reader);
322
						node.setText(mot_cle) ;
-
 
323
						node.setChecked(false) ;
-
 
324
						Node parentNode = arbreMotsCles.getNodeById(parent) ;
-
 
325
						node.setIcon("tela.png") ;
213
			
326
						node.setUserObject(usObj) ;	
214
			rafraichirListeImage(nouvelleDonnees);
327
						parentNode.appendChild(node) ;
215
			
328
					}
216
			st = photoStore ;
329
				}
217
		
330
			}			
218
			if(repandreRafraichissement)
331
				rafraichirArbreMotsCles(arbreMotsCles) ;
219
			{
332
				getIMediateur().getMetadonneesIptcExif().getPanneauMotsCles().rafraichir(arbreMotsCles, true) ;				
220
				getIMediateur().synchroniserDonneesZoomListeGalerie(st, this) ;
333
		}		
221
			}
334
	}
Line -... Line 335...
-
 
335
	
-
 
336
	/**
-
 
337
	 * Affiche les paires / valeur de tous les mots clés stockés
-
 
338
	 */
-
 
339
	public void afficherMotsCles()
-
 
340
	{
222
		
341
		for(Iterator it = motsCles.keySet().iterator() ; it.hasNext() ;)
223
		
342
		{
224
	}
343
			String key = (String)it.next() ;
225
	
344
			String valeur = (String)motsCles.get(key) ; 
226
	public void afficherMotsCles()
345
			System.out.println("clé : "+key+" valeur : "+valeur);
227
	{
346
		}
228
		for(Iterator it = motsCles.keySet().iterator() ; it.hasNext() ;)
347
	}
229
		{
348
 
-
 
349
	/**
-
 
350
	 * Met à jour les mots clés associés à une image et appelle le DAO pour synchroniser la base de données
-
 
351
	 * @param ids les identifiants des images selectionnées
-
 
352
	 * @param motsClesEnCours les mots clés à appliquer aux images
230
			String key = (String)it.next() ;
353
	 * @param arbreMC l'arbre de mots clés en cours
231
			String valeur = (String)motsCles.get(key) ; 
354
	 */
Line 232... Line 355...
232
			System.out.println("clé : "+key+" valeur : "+valeur);
355
	public void mettreAjourMotsCles(String[] ids, String motsClesEnCours, com.gwtext.client.data.Tree arbreMC) 
233
		}
356
	{		
Line 234... Line 357...
234
	}
357
		for (int i = 0; i < ids.length; i++) 
-
 
358
		{	
235
 
359
			if(cacheImage.containsKey(ids[i]))
-
 
360
			{
-
 
361
				ImageCarnet ic = (ImageCarnet)cacheImage.get(ids[i]) ;
-
 
362
				ic.mettreAjourMotsCles(motsClesEnCours) ;	
-
 
363
				
-
 
364
				ImageAsynchroneDAO imgDao = new ImageAsynchroneDAO() ;
Line -... Line 365...
-
 
365
				imgDao.setIMediateur(getIMediateur()) ;
-
 
366
				imgDao.SynchroniserMotsClesImageBaseDeDonnees(ic) ;
-
 
367
			}
-
 
368
		}
-
 
369
		
-
 
370
		rafraichirArbreMotsCles(arbreMC) ;
-
 
371
	}
-
 
372
	
-
 
373
	
-
 
374
	/**
-
 
375
	 * Appelle le DAO des mots clés pour obtenir l'arbre complet stocké dans la base de données
-
 
376
	 */
-
 
377
	public void initialiserArbreMotsCles()
-
 
378
	{
-
 
379
		MotsClesAsynchroneDAO MCDao = new MotsClesAsynchroneDAO() ;
-
 
380
		MCDao.setIMediateur(getIMediateur()) ;
-
 
381
		
-
 
382
		MCDao.obtenirListeMotsCles(this) ;
-
 
383
	}
-
 
384
	
236
	public void mettreAjourMotsCles(String[] ids, String motsClesEnCours, com.gwtext.client.data.Tree arbreMC) {
385
	/**
237
		
386
	 * Envoie l'arbre des mots clés stocké localement à l'élément rafrachissable donné, qui le demande
Line 238... Line 387...
238
		for (int i = 0; i < ids.length; i++) {
387
	 * @param r le rafraichissable demandeur de l'arbre
239
			
388
	 */
240
			if(cacheImage.containsKey(ids[i]))
389
	public void obtenirArbreMotCle(Rafraichissable r)
241
			{
390
	{
242
				ImageCarnet ic = (ImageCarnet)cacheImage.get(ids[i]) ;
391
		r.rafraichir(arbreMotsCles, false) ;
243
				ic.mettreAjourMotsCles(motsClesEnCours) ;	
392
	}
244
			}
393
 
245
		}
394
	/**
246
		
395
	 * Ajoute un mot clé à l'arbre des mots clés local et appelle le DAO qui fait la mise
247
		rafraichirArbreMotsCles(arbreMC) ;
396
	 * à jour de l'arbre des mots clés dans la base
Line 269... Line 418...
269
		}
418
		}
Line 270... Line 419...
270
		
419
		
Line 271... Line 420...
271
		rafraichirArbreMotsCles(arbreMC) ;
420
		rafraichirArbreMotsCles(arbreMC) ;
272
		
421
		
273
		String nouveauMotCle = "&motcle="+motCle+"&id="+id+"&parent="+parentId ;
-
 
274
		MCDao.ajouterBaseDeDonnees(nouveauMotCle) ;
422
		String nouveauMotCle = "&motcle="+motCle+"&id="+id+"&parent="+parentId ;
Line -... Line 423...
-
 
423
		MCDao.ajouterBaseDeDonnees(nouveauMotCle) ;		
-
 
424
	}
-
 
425
 
-
 
426
	/**
-
 
427
	 * Supprime un noeud de l'arbre des mots clés et appelle le DAO qui va supprimer
-
 
428
	 * les mots clés associés dans la base
275
		
429
	 * @param n le noeud à supprimer
-
 
430
	 * @param arbreMC l'arbre des mots clés en cours
Line 276... Line 431...
276
	}
431
	 */
277
 
432
	public void supprimerMotCleDansArbre(TreeNode n, Tree arbreMC) 
Line 278... Line 433...
278
	public void supprimerMotCleDansArbre(TreeNode n, Tree arbreMC) {
433
	{
Line 288... Line 443...
288
		
443
		
Line 289... Line 444...
289
		MCDao.supprimerBaseDeDonnees(id) ;
444
		MCDao.supprimerBaseDeDonnees(id) ;
Line -... Line 445...
-
 
445
		
-
 
446
	}
-
 
447
 
-
 
448
	/**
-
 
449
	 * Modifie le noeud donné dans l'arbre des mots clés en cours et appelle le DAO
-
 
450
	 * qui synchronise la modification dans la base de données
290
		
451
	 * @param n le noeud modifié
-
 
452
	 * @param arbreMC l'arbre des mots clés en cours
Line 291... Line 453...
291
	}
453
	 */
292
 
454
	public void modifierMotCleDansArbre(TreeNode n, Tree arbreMC) 
Line 293... Line 455...
293
	public void modifierMotCleDansArbre(TreeNode n, Tree arbreMC) {
455
	{
294
		
456
		
295
		MotsClesAsynchroneDAO MCDao = new MotsClesAsynchroneDAO() ;
457
		MotsClesAsynchroneDAO MCDao = new MotsClesAsynchroneDAO() ;
296
		MCDao.setIMediateur(getIMediateur()) ;
458
		MCDao.setIMediateur(getIMediateur()) ;
297
		
459
		
298
		String[] usObj = (String[])n.getUserObject() ;
460
		String[] usObj = (String[])n.getUserObject() ;
299
		String motCle = usObj[0] ;
461
		String motCle = usObj[0] ;
300
		String id = usObj[1] ;
462
		String id = usObj[1] ;
301
		String parentId = ""
463
		String parentId = "" ;
302
 ;		
464
		
Line 310... Line 472...
310
			parentId = "racine" ;
472
			parentId = "racine" ;
311
		}
473
		}
Line 312... Line 474...
312
		
474
		
Line 313... Line 475...
313
		rafraichirArbreMotsCles(arbreMC) ;
475
		rafraichirArbreMotsCles(arbreMC) ;
314
		
-
 
315
		String motCleModifie = "&motcle="+motCle+"&id="+id+"&parent="+parentId ;
476
		
Line 316... Line 477...
316
		
477
		String motCleModifie = "&motcle="+motCle+"&id="+id+"&parent="+parentId ;	
Line -... Line 478...
-
 
478
		MCDao.modifierBaseDeDonnees(motCleModifie) ;
-
 
479
		
-
 
480
	}
-
 
481
	
-
 
482
	/**
-
 
483
	 * Deplace un noeud dans l'arbre des mots cles et appelle le DAO qui reorganise l'arbre
317
		MCDao.modifierBaseDeDonnees(motCleModifie) ;
484
	 * dans la base de donnees suivant le changement
318
		
485
	 * @param n le noeud deplace (et son sous arbre associe)
319
	}
486
	 * @param arbreMC l'arbre des mots cles en cours
320
	
487
	 */
Line 321... Line 488...
321
	public void deplacerMotCleDansArbre(TreeNode n, Tree arbreMC)
488
	public void deplacerMotCleDansArbre(TreeNode n, Tree arbreMC)
322
	{
489
	{
323
		MotsClesAsynchroneDAO MCDao = new MotsClesAsynchroneDAO() ;
490
		MotsClesAsynchroneDAO MCDao = new MotsClesAsynchroneDAO() ;
324
		MCDao.setIMediateur(getIMediateur()) ;
491
		MCDao.setIMediateur(getIMediateur()) ;
325
		
-
 
326
		String[] usObj = (String[])n.getUserObject() ;
492
		
327
		String motCle = usObj[0] ;
493
		String[] usObj = (String[])n.getUserObject() ;
328
		String id = usObj[1] ;
494
		String motCle = usObj[0] ;
329
		String parentId = ""
495
		String id = usObj[1] ;
330
 ;		
496
		String parentId = "" ;		
Line 338... Line 504...
338
			parentId = "racine" ;
504
			parentId = "racine" ;
339
		}
505
		}
Line 340... Line 506...
340
		
506
		
Line 341... Line 507...
341
		rafraichirArbreMotsCles(arbreMC) ;
507
		rafraichirArbreMotsCles(arbreMC) ;
342
		
-
 
343
		String motCleModifie = "&motcle="+motCle+"&id="+id+"&parent="+parentId ;
508
		
344
		
509
		String motCleModifie = "&motcle="+motCle+"&id="+id+"&parent="+parentId ;		
Line 345... Line 510...
345
		MCDao.deplacerBaseDeDonnees(motCleModifie) ;
510
		MCDao.deplacerBaseDeDonnees(motCleModifie) ;