source: geisa/web/initGeisa_script.jsp @ 527

Last change on this file since 527 was 527, checked in by npipsl, 12 years ago

Délai d'attente pour tracer les graphes 15/06/2012

File size: 59.4 KB
Line 
1<%@ page import="com.ether.Controller" %>
2<script type="text/javascript">
3
4
5
6//permet de deselectionner la molecule quand on deselectionne un isotope (toutes les options sauf lst)
7/*function decliquemol( name )
8{
9
10    var inputs = document.getElementsByTagName( 'input' );
11    var count = inputs.length;
12    for( i = 0; i < count; i++ )
13    {
14        input = inputs.item( i );
15        if( input.type == 'checkbox' && input.id == (name + '-all') && input.checked == true )
16        {
17            input.checked = false;
18        }
19    }
20} */
21
22
23var InterfaceInit = Class.create( {
24
25            initialize: function()
26            {
27                /** *********** CONTAINERS *********** **/
28                this.containerFormSpectralRangeLower = $( "#spectralRangeLower" );
29                this.containerFormSpectralRangeUpper = $( "#spectralRangeUpper" );
30                this.containerFormIntensityLower = $( "#intensityLower" );
31                this.containerFormIntensityUpper = $( "#intensityUpper" );
32                this.containerFormMeanValue1 = $( "#meanValue1" );
33                this.containerDownload = $( "#downloadContainer" );
34
35                /** *********** VARIABLE *********** **/
36                <%--this.pathImg = <%=Controller.PATH_IMAGES%>;--%>
37
38                this.initializeMolecules();
39                this.createForm();
40
41                var downloadButton = new Button( {value:"Download", parent:$( "#downloadContainer" ), id:"button_submit_2", className: "red_button", classNameText:"red_button_text", onClick:jQuery.proxy( this.onClickDownload, this )} );
42            },
43
44            initializeMolecules: function()
45            {
46                this.arrayGeisa2011 = new Array();
47                this.arrayGeisa2003 = new Array();
48                this.arrayGeisaIasi2011 = new Array();
49                this.arrayGeisaIasi2003 = new Array();
50
51                var molecule = new Object();
52                molecule.id="h2o";
53                molecule.name="H<sub>2</sub>O";
54                molecule.isotopesArray = ["161", "162", "171", "181", "182", "172"];
55                this.arrayGeisa2011.push(molecule);
56                this.arrayGeisa2003.push(molecule);
57                this.arrayGeisaIasi2011.push(molecule);
58                this.arrayGeisaIasi2003.push(molecule);
59
60                var molecule = new Object();
61                molecule.id="co2";
62                molecule.name="CO<sub>2</sub>";
63                molecule.isotopesArray = ["626", "627", "628", "636", "637", "638", "728", "828", "838"];
64                this.arrayGeisa2003.push(molecule);
65                this.arrayGeisa2011.push(molecule);
66                this.arrayGeisaIasi2011.push(molecule);
67                this.arrayGeisaIasi2003.push(molecule);
68
69                var molecule = new Object();
70                molecule.id="o3";
71                molecule.name="O<sub>3</sub>";
72                molecule.isotopesArray = ["666", "668", "686", "667", "676"];
73                this.arrayGeisa2003.push(molecule);
74                this.arrayGeisa2011.push(molecule);
75                this.arrayGeisaIasi2011.push(molecule);
76                this.arrayGeisaIasi2003.push(molecule);
77
78                var molecule = new Object();
79                molecule.id="n2o";
80                molecule.name="N<sub>2</sub>O";
81                molecule.isotopesArray = ["446", "447", "448", "456","458", "546", "548", "556"];
82                this.arrayGeisa2011.push(molecule);
83                this.arrayGeisaIasi2011.push(molecule);
84
85                var molecule = new Object();
86                molecule.id="n2o";
87                molecule.name="N<sub>2</sub>O";
88                molecule.isotopesArray = ["446", "447", "448", "456", "546"];
89                this.arrayGeisa2003.push(molecule);
90                this.arrayGeisaIasi2003.push(molecule);
91
92                var molecule = new Object();
93                molecule.id="co";
94                molecule.name="CO";
95                molecule.isotopesArray = ["26", "36", "28", "27", "38", "37"];
96                this.arrayGeisa2011.push(molecule);
97                this.arrayGeisa2003.push(molecule);
98                this.arrayGeisaIasi2011.push(molecule);
99                this.arrayGeisaIasi2003.push(molecule);
100
101                var molecule = new Object();
102                molecule.id="ch4";
103                molecule.name="CH<sub>4</sub>";
104                molecule.isotopesArray = ["211", "311"];
105                this.arrayGeisa2011.push(molecule);
106                this.arrayGeisa2003.push(molecule);
107
108                var molecule = new Object();
109                molecule.id="ch4";
110                molecule.name="CH<sub>4</sub>";
111                molecule.isotopesArray = ["211", "311", "212", "312"];
112                this.arrayGeisaIasi2011.push(molecule);
113
114                var molecule = new Object();
115                molecule.id="ch4";
116                molecule.name="CH<sub>4</sub>";
117                molecule.isotopesArray = ["211", "311", "212"];
118                this.arrayGeisaIasi2003.push(molecule);
119
120                var molecule = new Object();
121                molecule.id="o2";
122                molecule.name="O<sub>2</sub>";
123                molecule.isotopesArray = ["66", "67", "68"];
124                this.arrayGeisa2011.push(molecule);
125                this.arrayGeisa2003.push(molecule);
126
127                var molecule = new Object();
128                molecule.id="o2";
129                molecule.name="O<sub>2</sub>";
130                molecule.isotopesArray = ["66"];
131                this.arrayGeisaIasi2011.push(molecule);
132                this.arrayGeisaIasi2003.push(molecule);
133
134                var molecule = new Object();
135                molecule.id="no";
136                molecule.name="NO";
137                molecule.isotopesArray = ["46", "48", "56"];
138                this.arrayGeisa2011.push(molecule);
139                this.arrayGeisa2003.push(molecule);
140                this.arrayGeisaIasi2011.push(molecule);
141                this.arrayGeisaIasi2003.push(molecule);
142
143                var molecule = new Object();
144                molecule.id="so2";
145                molecule.name="SO<sub>2</sub>";
146                molecule.isotopesArray = ["626", "646"];
147                this.arrayGeisa2011.push(molecule);
148                this.arrayGeisa2003.push(molecule);
149                this.arrayGeisaIasi2011.push(molecule);
150                this.arrayGeisaIasi2003.push(molecule);
151
152                var molecule = new Object();
153                molecule.id="no2";
154                molecule.name="NO<sub>2</sub>";
155                molecule.isotopesArray = ["646"];
156                this.arrayGeisa2011.push(molecule);
157                this.arrayGeisa2003.push(molecule);
158                this.arrayGeisaIasi2011.push(molecule);
159                this.arrayGeisaIasi2003.push(molecule);
160
161                var molecule = new Object();
162                molecule.id="nh3";
163                molecule.name="NH<sub>3</sub>";
164                molecule.isotopesArray = ["411", "511" ];
165                this.arrayGeisa2011.push(molecule);
166                this.arrayGeisa2003.push(molecule);
167                this.arrayGeisaIasi2011.push(molecule);
168
169                var molecule = new Object();
170                molecule.id="ph3";
171                molecule.name="PH<sub>3</sub>";
172                molecule.isotopesArray = ["131" ];
173                this.arrayGeisa2011.push(molecule);
174                this.arrayGeisa2003.push(molecule);
175
176                var molecule = new Object();
177                molecule.id="hno3";
178                molecule.name="HNO<sub>3</sub>";
179                molecule.isotopesArray = ["146" ];
180                this.arrayGeisa2011.push(molecule);
181                this.arrayGeisa2003.push(molecule);
182                this.arrayGeisaIasi2011.push(molecule);
183                this.arrayGeisaIasi2003.push(molecule);
184
185                var molecule = new Object();
186                molecule.id="oh";
187                molecule.name="OH";
188                molecule.isotopesArray = ["61", "62", "81" ];
189                this.arrayGeisa2011.push(molecule);
190                this.arrayGeisa2003.push(molecule);
191
192                var molecule = new Object();
193                molecule.id="hf";
194                molecule.name="HF";
195                molecule.isotopesArray = ["19" ];
196                this.arrayGeisa2011.push(molecule);
197                this.arrayGeisa2003.push(molecule);
198
199                var molecule = new Object();
200                molecule.id="hcl";
201                molecule.name="HCL";
202                molecule.isotopesArray = ["15", "17" ];
203                this.arrayGeisa2011.push(molecule);
204                this.arrayGeisa2003.push(molecule);
205
206                var molecule = new Object();
207                molecule.id="hbr";
208                molecule.name="HBR";
209                molecule.isotopesArray = ["11", "19" ];
210                this.arrayGeisa2011.push(molecule);
211                this.arrayGeisa2003.push(molecule);
212
213                var molecule = new Object();
214                molecule.id="hi";
215                molecule.name="HI";
216                molecule.isotopesArray = ["17" ];
217                this.arrayGeisa2011.push(molecule);
218                this.arrayGeisa2003.push(molecule);
219
220                var molecule = new Object();
221                molecule.id="clo";
222                molecule.name="CLO";
223                molecule.isotopesArray = ["56", "76" ];
224                this.arrayGeisa2011.push(molecule);
225                this.arrayGeisa2003.push(molecule);
226
227                var molecule = new Object();
228                molecule.id="ocs";
229                molecule.name="OCS";
230                molecule.isotopesArray = ["622", "624", "632", "623", "822", "634"];
231                this.arrayGeisa2011.push(molecule);
232                this.arrayGeisa2003.push(molecule);
233                this.arrayGeisaIasi2011.push(molecule);
234                this.arrayGeisaIasi2003.push(molecule);
235
236                var molecule = new Object();
237                molecule.id="h2co";
238                molecule.name="H<sub>2</sub>CO";
239                molecule.isotopesArray = ["126", "128", "136"];
240                this.arrayGeisa2011.push(molecule);
241                this.arrayGeisa2003.push(molecule);
242
243                var molecule = new Object();
244                molecule.id="h2co";
245                molecule.name="H<sub>2</sub>CO";
246                molecule.isotopesArray = ["126"];
247                this.arrayGeisaIasi2011.push(molecule);
248
249                var molecule = new Object();
250                molecule.id="c2h6";
251                molecule.name="C<sub>2</sub>H<sub>6</sub>";
252                molecule.isotopesArray = ["226", "236"];
253                this.arrayGeisa2011.push(molecule);
254                this.arrayGeisa2003.push(molecule);
255
256                var molecule = new Object();
257                molecule.id="ch3d";
258                molecule.name="CH<sub>3</sub>D";
259                molecule.isotopesArray = ["212", "312"];
260                this.arrayGeisa2011.push(molecule);
261
262                var molecule = new Object();
263                molecule.id="ch3d";
264                molecule.name="CH<sub>3</sub>D";
265                molecule.isotopesArray = ["212"];
266                this.arrayGeisa2003.push(molecule);
267
268                var molecule = new Object();
269                molecule.id="c2h2";
270                molecule.name="C<sub>2</sub>H<sub>2</sub>";
271                molecule.isotopesArray = ["221", "231"];
272                this.arrayGeisa2011.push(molecule);
273                this.arrayGeisa2003.push(molecule);
274                this.arrayGeisaIasi2011.push(molecule);
275                this.arrayGeisaIasi2003.push(molecule);
276
277                var molecule = new Object();
278                molecule.id="c2h4";
279                molecule.name="C<sub>2</sub>H<sub>4</sub>";
280                molecule.isotopesArray = ["211", "311"];
281                this.arrayGeisa2011.push(molecule);
282                this.arrayGeisa2003.push(molecule);
283                this.arrayGeisaIasi2011.push(molecule);
284
285                var molecule = new Object();
286                molecule.id="geh4";
287                molecule.name="GeH<sub>4</sub>";
288                molecule.isotopesArray = ["411"];
289                this.arrayGeisa2011.push(molecule);
290                this.arrayGeisa2003.push(molecule);
291
292                var molecule = new Object();
293                molecule.id="hcn";
294                molecule.name="HCN";
295                molecule.isotopesArray = ["124", "125", "134", "224"];
296                this.arrayGeisa2011.push(molecule);
297                this.arrayGeisaIasi2011.push(molecule);
298
299                var molecule = new Object();
300                molecule.id="hcn";
301                molecule.name="HCN";
302                molecule.isotopesArray = ["124", "125", "134"];
303                this.arrayGeisa2003.push(molecule);
304
305                var molecule = new Object();
306                molecule.id="c3h8";
307                molecule.name="C<sub>3</sub>H<sub>8</sub>";
308                molecule.isotopesArray = ["221"];
309                this.arrayGeisa2011.push(molecule);
310                this.arrayGeisa2003.push(molecule);
311
312                var molecule = new Object();
313                molecule.id="c2n2";
314                molecule.name="C<sub>2</sub>N<sub>2</sub>";
315                molecule.isotopesArray = ["224"];
316                this.arrayGeisa2011.push(molecule);
317                this.arrayGeisa2003.push(molecule);
318
319                var molecule = new Object();
320                molecule.id="c4h2";
321                molecule.name="C<sub>4</sub>H<sub>2</sub>";
322                molecule.isotopesArray = ["211"];
323                this.arrayGeisa2011.push(molecule);
324                this.arrayGeisa2003.push(molecule);
325
326                var molecule = new Object();
327                molecule.id="hc3n";
328                molecule.name="HC<sub>3</sub>N";
329                molecule.isotopesArray = ["124"];
330                this.arrayGeisa2011.push(molecule);
331                this.arrayGeisa2003.push(molecule);
332
333                var molecule = new Object();
334                molecule.id="hocl";
335                molecule.name="HOCl";
336                molecule.isotopesArray = ["165", "167"];
337                this.arrayGeisa2011.push(molecule);
338                this.arrayGeisa2003.push(molecule);
339
340                var molecule = new Object();
341                molecule.id="n2";
342                molecule.name="N<sub>2</sub>";
343                molecule.isotopesArray = ["44"];
344                this.arrayGeisa2011.push(molecule);
345                this.arrayGeisa2003.push(molecule);
346                this.arrayGeisaIasi2011.push(molecule);
347                this.arrayGeisaIasi2003.push(molecule);
348
349                var molecule = new Object();
350                molecule.id="ch3cl";
351                molecule.name="CH<sub>3</sub>Cl";
352                molecule.isotopesArray = ["215", "217"];
353                this.arrayGeisa2011.push(molecule);
354                this.arrayGeisa2003.push(molecule);
355
356                var molecule = new Object();
357                molecule.id="h2o2";
358                molecule.name="H<sub>2</sub>O<sub>2</sub>";
359                molecule.isotopesArray = ["166"];
360                this.arrayGeisa2011.push(molecule);
361                this.arrayGeisa2003.push(molecule);
362
363                var molecule = new Object();
364                molecule.id="h2s";
365                molecule.name="H<sub>2</sub>S";
366                molecule.isotopesArray = ["121", "141", "131"];
367                this.arrayGeisa2011.push(molecule);
368                this.arrayGeisa2003.push(molecule);
369
370                var molecule = new Object();
371                molecule.id="hcooh";
372                molecule.name="HCOOH";
373                molecule.isotopesArray = ["261"];
374                this.arrayGeisa2011.push(molecule);
375                this.arrayGeisa2003.push(molecule);
376                this.arrayGeisaIasi2011.push(molecule);
377
378                var molecule = new Object();
379                molecule.id="cof2";
380                molecule.name="COF<sub>2</sub>";
381                molecule.isotopesArray = ["269"];
382                this.arrayGeisa2011.push(molecule);
383                this.arrayGeisa2003.push(molecule);
384
385                var molecule = new Object();
386                molecule.id="sf6";
387                molecule.name="SF<sub>6</sub>";
388                molecule.isotopesArray = ["29"];
389                this.arrayGeisa2011.push(molecule);
390                this.arrayGeisa2003.push(molecule);
391
392                var molecule = new Object();
393                molecule.id="c3h4";
394                molecule.name="C<sub>3</sub>H<sub>4</sub>";
395                molecule.isotopesArray = ["341"];
396                this.arrayGeisa2011.push(molecule);
397                this.arrayGeisa2003.push(molecule);
398
399                var molecule = new Object();
400                molecule.id="ho2";
401                molecule.name="HO<sub>2</sub>";
402                molecule.isotopesArray = ["166"];
403                this.arrayGeisa2011.push(molecule);
404                this.arrayGeisa2003.push(molecule);
405
406                var molecule = new Object();
407                molecule.id="clono2";
408                molecule.name="CLONO<sub>2</sub>";
409                molecule.isotopesArray = ["564", "764"];
410                this.arrayGeisa2011.push(molecule);
411                this.arrayGeisa2003.push(molecule);
412
413                var molecule = new Object();
414                molecule.id="ch3br";
415                molecule.name="CH<sub>3</sub>Br";
416                molecule.isotopesArray = ["79", "81"];
417                this.arrayGeisa2011.push(molecule);
418
419                var molecule = new Object();
420                molecule.id="ch3oh";
421                molecule.name="CH<sub>3</sub>OH";
422                molecule.isotopesArray = ["216"];
423                this.arrayGeisa2011.push(molecule);
424                this.arrayGeisaIasi2011.push(molecule);
425
426                var molecule = new Object();
427                molecule.id="noplus";
428                molecule.name="NO<sup>+</sup>";
429                molecule.isotopesArray = ["46"];
430                this.arrayGeisa2011.push(molecule);
431
432                var molecule = new Object();
433                molecule.id="hnc";
434                molecule.name="HNC";
435                molecule.isotopesArray = ["142"];
436                this.arrayGeisa2011.push(molecule);
437
438                var molecule = new Object();
439                molecule.id="c6h6";
440                molecule.name="C<sub>6</sub>H<sub>6</sub>";
441                molecule.isotopesArray = ["266"];
442                this.arrayGeisa2011.push(molecule);
443
444                var molecule = new Object();
445                molecule.id="c2hd";
446                molecule.name="C<sub>2</sub>HD";
447                molecule.isotopesArray = ["122"];
448                this.arrayGeisa2011.push(molecule);
449
450                var molecule = new Object();
451                molecule.id="cf4";
452                molecule.name="CF<sub>4</sub>";
453                molecule.isotopesArray = ["291"];
454                this.arrayGeisa2011.push(molecule);
455
456                var molecule = new Object();
457                molecule.id="ch3cn";
458                molecule.name="CH<sub>3</sub>CN";
459                molecule.isotopesArray = ["234"];
460                this.arrayGeisa2011.push(molecule);
461                this.arrayGeisaIasi2011.push(molecule);
462                this.arrayGeisaIasi2003.push(molecule);
463
464
465
466
467
468            },
469
470// CREATES ********************************************************
471            createForm: function()
472            {
473                //Titre de la page
474                var titlePage = document.createTextNode("Graphic vizualisation of the  GEISA  database");
475                document.getElementById("titlePage").appendChild(titlePage);
476
477                // Create menu deroulant  choix de la base
478                var paramDatabase = new Object();
479                paramDatabase.id = "selectDatabase";
480                paramDatabase.parent = $("#database1");
481                this.selectDatabase = new Select( paramDatabase );
482                this.selectDatabase.add( 'GEISA-11', "GEISA 2011", jQuery.proxy(this.onClickSelectDatabase, this) );
483                this.selectDatabase.add( 'GEISA-IASI-11', "GEISA-IASI 2011", jQuery.proxy(this.onClickSelectDatabase, this) );
484                this.selectDatabase.add( 'GEISA-03', "GEISA 2003", jQuery.proxy(this.onClickSelectDatabase, this) );
485                this.selectDatabase.add( 'GEISA-IASI-03', "GEISA-IASI 2003", jQuery.proxy(this.onClickSelectDatabase, this) );
486                this.selectDatabase.selectFirst( false );
487
488                //Zone texte  SpectralRange
489                //Titre
490                var titleSpectralRangeLower = document.createTextNode("Lower Bound :");
491                document.getElementById("spectralRangeLower").appendChild(titleSpectralRangeLower);
492                var titleSpectralRangeUpper = document.createTextNode("Upper Bound :");
493                document.getElementById("spectralRangeUpper").appendChild(titleSpectralRangeUpper);
494                //zone texte  SpectralRangeLower
495                var inputSpectralRangeLower = $( document.createElement( "input" ) );
496                inputSpectralRangeLower.attr( {id:"RangeLower", class:"styleInputs"} );
497                inputSpectralRangeLower.val(0);
498                this.containerFormSpectralRangeLower.append( inputSpectralRangeLower );
499                //zone texte   SpectralRangeUpper
500                var inputSpectralRangeUpper = $( document.createElement( "input" ) );
501                inputSpectralRangeUpper.attr( {id:"RangeUpper"} );
502                inputSpectralRangeUpper.val(800);
503                this.containerFormSpectralRangeUpper.append( inputSpectralRangeUpper );
504
505
506                // Create menu deroulant  transition upper
507                var paramSelectTransitionUpper = new Object();
508                paramSelectTransitionUpper.id = "transition1";
509                paramSelectTransitionUpper.parent = $("#transitionUpper");
510                this.selectTransitionUpper = new Select( paramSelectTransitionUpper );
511                this.selectTransitionUpper.add( 'transi1', "transi1" );
512                this.selectTransitionUpper.add( 'transi2', "transi2" );
513                this.selectTransitionUpper.selectFirst( false );
514                // Create menu deroulant  transition lower
515                var paramSelectTransitionLower = new Object();
516                paramSelectTransitionLower.id = "transition2";
517                paramSelectTransitionLower.parent = $("#transitionLower");
518                this.selectTransitionLower = new Select( paramSelectTransitionLower );
519                this.selectTransitionLower.add( 'transi1', "transi1" );
520                this.selectTransitionLower.add( 'transi2', "transi2" );
521                this.selectTransitionLower.selectFirst( false );
522
523                //Zone texte Intensity
524                //Titre
525                var titleIntensityLower = document.createTextNode("Lower Bound :");
526                document.getElementById("intensityLower").appendChild(titleIntensityLower);
527                var titleIntensityUpper = document.createTextNode("Upper Bound :");
528                document.getElementById("intensityUpper").appendChild(titleIntensityUpper);
529                //zone texte    IntensityLower
530                var inputIntensityLower = $( document.createElement( "input" ) );
531                inputIntensityLower.attr( {id:"intensityLo", class:"styleInputs"} );
532                inputIntensityLower.val(0);
533                this.containerFormIntensityLower.append( inputIntensityLower );
534                //zone texte    IntensityUpper
535                var inputIntensityUpper = $( document.createElement( "input" ) );
536                inputIntensityUpper.attr( {id:"intensityUp"} );
537                inputIntensityUpper.val(1e-19);
538                this.containerFormIntensityUpper.append( inputIntensityUpper );
539
540                //Zone text Mean Value
541                //Titre
542                var titleMeanValue = document.createTextNode("Step :");
543                document.getElementById("meanValue1").appendChild(titleMeanValue);
544                //champ input
545                var inputMeanValue = $( document.createElement( "input" ) );
546                inputMeanValue.attr( {id:"meanValue2"} );
547                inputMeanValue.val(0);
548                this.containerFormMeanValue1.append( inputMeanValue );
549                inputMeanValue.bind( 'blur', this, jQuery.proxy( this.onBlurInputMeanValue, this ));
550
551                // Create menu deroulant  type de graphe
552                var paramNbCourbes = new Object();
553                paramNbCourbes.id = "SelectNbCourbes";
554                paramNbCourbes.parent = $("#NbCourbes");
555                this.SelectNbCourbes = new Select( paramNbCourbes );
556                this.SelectNbCourbes.add( 'ca', "One curve for all selection", jQuery.proxy(this.onClickSelectNbCourbes, this ) );
557                this.SelectNbCourbes.add( 'cm', "One curve for each molecule selected", jQuery.proxy(this.onClickSelectNbCourbes, this ) );
558                this.SelectNbCourbes.add( 'ci', "One curve for each isotopologue selected", jQuery.proxy(this.onClickSelectNbCourbes, this ) );
559                this.SelectNbCourbes.add( 'gm', "One graph for each molecule selected", jQuery.proxy(this.onClickSelectNbCourbes, this ) );
560                this.SelectNbCourbes.add( 'gi', "One graph for each isotopologue selected", jQuery.proxy(this.onClickSelectNbCourbes, this ) );
561                this.SelectNbCourbes.selectFirst( false );
562
563                // Create menu deroulant  1er choix axe des y
564                //Titre
565                var titleAxeY1 = document.createTextNode("Choose the first vertical axis");
566                document.getElementById("axeY1").appendChild(titleAxeY1);
567                var spaceBr = document.createElement ("br");
568                document.getElementById("axeY1").appendChild(spaceBr);
569                //menu déroulant
570                var paramSelectAxeY1 = new Object();
571                paramSelectAxeY1.id = "selectAxeY1";
572                paramSelectAxeY1.parent = $("#axeY1");
573                this.selectTraceAxeY1 = new Select( paramSelectAxeY1 );
574                this.selectTraceAxeY1.add( 'B', "Intensity", jQuery.proxy(this.onClickSelectTraceAxeY1, this ));
575                this.selectTraceAxeY1.add( 'C', "Air broadening pressure halfwidth", jQuery.proxy(this.onClickSelectTraceAxeY1, this ) );
576                this.selectTraceAxeY1.add( 'D', "Energy of the lower transition level", jQuery.proxy(this.onClickSelectTraceAxeY1, this ) );
577                this.selectTraceAxeY1.add( 'F', "Temperature dependence coefficient n of the air broadening halfwidth ", jQuery.proxy(this.onClickSelectTraceAxeY1, this ) );
578                this.selectTraceAxeY1.add( 'N', "Self broadening pressure halfwidth (HWHM)", jQuery.proxy(this.onClickSelectTraceAxeY1, this ) );
579                this.selectTraceAxeY1.add( 'O', "Air pressure shift of the line transition", jQuery.proxy(this.onClickSelectTraceAxeY1, this ) );
580                this.selectTraceAxeY1.add( 'R', "Temperature dependence coefficient of the air pressure shift ", jQuery.proxy(this.onClickSelectTraceAxeY1, this ) );
581                this.selectTraceAxeY1.selectFirst( false );
582
583                // Create menu deroulant  type d'échelle linéaire ou logarithmique  pour le choix y1
584                //Titre
585                var titleScaleY1 = document.createTextNode("Select the type of Scale (if intensity is choosen)");
586                document.getElementById("scaleY1Titre").appendChild(titleScaleY1);
587                //menu déroulant
588                var paramSelectScaleY1 = new Object();
589                paramSelectScaleY1.id = "SelectScaleY1";
590                paramSelectScaleY1.parent = $("#scaleY1");
591                this.selectScaleY1 = new Select( paramSelectScaleY1 );
592                this.selectScaleY1.add( 'l', "Linear" );
593                this.selectScaleY1.add( '-log_scale', "Logarithmic" );
594                this.selectScaleY1.selectFirst( false );
595
596                // Create menu deroulant  style de tracer   Y1
597                //Titre
598                var titleTypeTrace = document.createTextNode("Select the type of plot");
599                document.getElementById("typePlotY1").appendChild(titleTypeTrace);
600                var spaceBr = document.createElement ("br");
601                document.getElementById("typePlotY1").appendChild(spaceBr);
602                //menu déroulant
603                var paramSelectTypeTraceY1 = new Object();
604                paramSelectTypeTraceY1.id = "SelectTypePlotY1";
605                paramSelectTypeTraceY1.parent = $("#typePlotY1");
606                this.selectTypeTraceY1 = new Select( paramSelectTypeTraceY1 );
607                this.selectTypeTraceY1.add( 'l', "Lines" );
608                this.selectTypeTraceY1.add( 'p', "Dots" );
609                this.selectTypeTraceY1.add( 'i', "Peaks" );
610                this.selectTypeTraceY1.add( 'lp', "Lines and Dots" );
611                this.selectTypeTraceY1.selectFirst( false );
612
613
614                // Create menu deroulant  2eme choix axe des y
615                //Titre
616                var titleAxeY2 = document.createTextNode("Choose the second vertical axis");
617                document.getElementById("axeY2Titre").appendChild(titleAxeY2);
618                //menu déroulant
619                var paramSelectAxeY2 = new Object();
620                paramSelectAxeY2.id = "selectAxeY2";
621                paramSelectAxeY2.parent = $("#axeY2");
622                this.selectTraceAxeY2 = new Select( paramSelectAxeY2 );
623                this.selectTraceAxeY2.add( 'no', "None", jQuery.proxy(this.onClickSelectTraceAxeY2, this ) );
624                this.selectTraceAxeY2.add( 'B', "Intensity", jQuery.proxy(this.onClickSelectTraceAxeY2, this ) );
625                this.selectTraceAxeY2.add( 'C', "Air broadening pressure halfwidth", jQuery.proxy(this.onClickSelectTraceAxeY2, this ) );
626                this.selectTraceAxeY2.add( 'D', "Energy of the lower transition level", jQuery.proxy(this.onClickSelectTraceAxeY2, this ) );
627                this.selectTraceAxeY2.add( 'F', "Temperature dependence coefficient n of the air broadening halfwidth ", jQuery.proxy(this.onClickSelectTraceAxeY2, this ) );
628                this.selectTraceAxeY2.add( 'N', "Self broadening pressure halfwidth (HWHM)", jQuery.proxy(this.onClickSelectTraceAxeY2, this ) );
629                this.selectTraceAxeY2.add( 'O', "Air pressure shift of the line transition", jQuery.proxy(this.onClickSelectTraceAxeY2, this ) );
630                this.selectTraceAxeY2.add( 'R', "Temperature dependence coefficient of the air pressure shift ", jQuery.proxy(this.onClickSelectTraceAxeY2, this ) );
631                this.selectTraceAxeY2.selectFirst( false );
632
633                // Create menu deroulant  type d'échelle linéaire ou logarithmique  pour le choix y2
634                //Titre
635                var titleScaleY2 = document.createTextNode("Select the type of Scale (if intensity is choosen)");
636                document.getElementById("scaleY2Titre").appendChild(titleScaleY2);
637                //menu déroulant
638                var paramSelectScaleY2 = new Object();
639                paramSelectScaleY2.id = "SelectScaleY2";
640                paramSelectScaleY2.parent = $("#scaleY2");
641                this.selectScaleY2 = new Select( paramSelectScaleY2 );
642                this.selectScaleY2.add( 'l', "Linear" );
643                this.selectScaleY2.add( '-log_scale2', "Logarithmic" );
644                this.selectScaleY2.selectFirst( false );
645                //est inactif par defaut car selectTraceAxeY2 est positionne a none par defaut
646                document.getElementById("scaleY2Titre").className = "notActiveText";
647                this.selectScaleY2.disable();
648
649                // Create menu deroulant  style de tracer       Y2
650                //Titre
651                var titleTypeTrace = document.createTextNode("Select the type of plot");
652                document.getElementById("typePlotY2Titre").appendChild(titleTypeTrace);
653                //menu déroulant
654                var paramSelectTypeTraceY2 = new Object();
655                paramSelectTypeTraceY2.id = "SelectTypePlotY2";
656                paramSelectTypeTraceY2.parent = $("#typePlotY2");
657                this.selectTypeTraceY2 = new Select( paramSelectTypeTraceY2 );
658                this.selectTypeTraceY2.add( 'l', "Lines" );
659                this.selectTypeTraceY2.add( 'p', "Dots" );
660                this.selectTypeTraceY2.add( 'i', "Peaks" );
661                this.selectTypeTraceY2.add( 'lp', "Lines and Dots" );
662                this.selectTypeTraceY2.selectFirst( false );
663                //est inactif par defaut car selectTraceAxeY2 est positionne a none par defaut
664                document.getElementById("typePlotY2Titre").className = "notActiveText";
665                this.selectTypeTraceY2.disable();
666
667
668                this.createMolecules($('#BDD-GEISA-11'), this.arrayGeisa2011, "GEISA-11");
669                this.createMolecules($('#BDD-GEISA-03'), this.arrayGeisa2003, "GEISA-03");
670                this.createMolecules($('#BDD-GEISA-IASI-11'), this.arrayGeisaIasi2011, "GEISA-IASI-11");
671                this.createMolecules($('#BDD-GEISA-IASI-03'), this.arrayGeisaIasi2003, "GEISA-IASI-03");
672
673
674                // var submitButton = new Button( {value:"Submit", parent:$( "#boutonSubmit" ), id:"button_submit_3", className: "red_button", classNameText:"red_button_text", onClick:jQuery.proxy( this.onClickSubmit, this )} );
675                var submitButton = new Button( {value:"Submit", parent:$( "#boutonSubmit" ), id:"button_submit_3", className: "positive", onClick:jQuery.proxy( this.onClickSubmit, this )} );
676            },
677
678
679
680
681            /**
682             * This method creates the case to check for the moles
683             * create cases à cocher pour les molécules
684             * @param container
685             * @param moleculesArray
686             */
687            //createMolecules: function(container, moleculesArray)
688            createMolecules: function(container, moleculesArray, BddVersion)
689            {
690                var table = $(document.createElement("table"));
691                container.append(table);
692               // var tr = $(document.createElement("tr"));
693               // tr.attr({valign: "top"});
694               // table.append(tr);
695                var i=0;
696                //nombre de molecules par ligne
697                var l=10;
698                //taille du tableau
699                //alert("l" +moleculesArray.length);
700               // parseInt : partie entiÚre
701               // var res =  parseInt(8/3);
702                //alert("res="+res);
703
704                $.each(moleculesArray, jQuery.proxy( function(index, moleculeElement )
705                {
706
707
708                    //this.tr et non var tr pour que tr existe encore à la sortie du if
709                    if ( index == (i*l))
710                    {
711                        //alert(index);
712                        this.tr = $(document.createElement("tr"));
713                        this.tr.attr({valign: "top"});
714                        table.append(this.tr);
715                        i=i+1;
716
717                    }
718                    var td = $(document.createElement("td"));
719                    this.tr.append(td);
720
721                    var span= $(document.createElement("span"));
722                    span.addClass("molecule");
723                    td.append(span);
724
725                    var input = $(document.createElement("input"));
726                    input.attr({type:"checkbox", id:"all-"+moleculeElement.id+"-"+BddVersion});
727                    input.bind( 'click', this, jQuery.proxy( this.cliquetout, [this, moleculeElement.id, BddVersion ] ));
728                    span.append(input);
729
730                    var a = $(document.createElement("a"));
731                    a.html("<b>"+moleculeElement.name+"</b>");
732
733                    a.bind( 'click', this, jQuery.proxy( this.visibilite, [this,"Cache-"+ moleculeElement.id] ));
734                    span.append(a);
735
736                    var div= $(document.createElement("div"));
737                    div.addClass("divViolet");
738                    div.attr({id:"Cache-"+moleculeElement.id, style: "display:none"});
739                    td.append(div);
740
741                    var spanIsotopes= $(document.createElement("span"));
742                    spanIsotopes.addClass("isotope");
743                    spanIsotopes.attr({id:moleculeElement.id+"Isotope"+BddVersion});
744                    div.append(spanIsotopes);
745
746
747                    this.createIsotopes($("#"+moleculeElement.id+"Isotope"+BddVersion), moleculeElement.isotopesArray, moleculeElement.id, BddVersion);
748
749
750                }, this) );
751
752
753            },
754
755            createIsotopes: function(container, isotopesArray, moleculeElement, BddVersion )
756            {
757
758
759                $.each(isotopesArray, jQuery.proxy( function( index, isotopeElement )
760                {
761                    container.append("&nbsp;&nbsp;&nbsp;");
762                    var inputIsotopes = $(document.createElement("input"));
763                    inputIsotopes.attr({type:"checkbox", id:"chk-"+moleculeElement+"_"+isotopeElement+"-"+BddVersion, name:"moles", value:moleculeElement+"_"+isotopeElement});
764                    inputIsotopes.bind( 'click', this, jQuery.proxy( this.cliqueIsotope, [this, moleculeElement+"_"+isotopeElement, BddVersion ] ));
765                    container.append(inputIsotopes);
766                    container.append(isotopeElement);
767                    var br = $(document.createElement("br"));
768                    container.append(br);
769
770                }, this) );
771            },
772
773            // <table><tr><td>
774            // <span class="molecule"><input type=checkbox id=all-ch3cn-GEISA-11 onclick="cliquetout('this, ch3cn, GEISA-11');">
775            //          <a href="javascript:visibilite('this, Cache-ch3cn');"><B>CH<sub>3</sub>CN</a></B>
776            // </span>
777            // <div class="divViolet" id="Cache-ch3cn" style="display:none;">
778            //          <span class="isotope" id="ch3cnIsotopeGEISA-11">&nbsp;&nbsp;&nbsp;<input type=checkbox id=chk-ch3cn_234-GEISA-11 name=moles value=ch3cn_234 onclick="cliqueIsotope('this, ch3cn_234, GEISA-11');">234<br></span>
779            // </div>
780            // </td></tr></table>
781
782// REQUESTS ********************************************************
783            requestGeisa: function()
784            {
785
786                // var parameters = "&valselectTraceAxeY1="+this.selectTraceAxeY1.getValue()+"&valselectTraceAxeY2="+this.selectTraceAxeY2.getValue()+
787                //        "&inputSpectralRangeLower="+$("#spectralRangeLower").val()+ "&inputSpectralRangeUpper="+$("#spectralRangeUpper").val()+
788                 //      "&inputIntensityLower="+$("#intensityLower").val()+"&inputIntensityUpper="+$("#intensityUpper").val()+
789                 //       "&valselectTypeTraceY1="+this.selectTypeTraceY1.getValue();
790
791                //molécules
792                //récupération des molécules sélectionnées
793                var inputs = document.getElementsByTagName( 'input' );
794                var count = inputs.length;
795                var molName ="";
796                alert(this.selectDatabase.getValue());
797                var i=0;
798                this.nbIsotopes = 0;
799                this.nbMolecules = 0;
800                for( i = 0; i < count; i++ )
801                {
802                    var input = inputs.item( i );
803                    //ne prendre que les isotopes sélectionnés dans la base de données sélectionnée  (rechercher des id du type :  "chk-ch3cn-GEISA-11")
804                    if( input.type == 'checkbox' && input.checked == true && input.id.indexOf("chk-")!= -1 && input.id.indexOf(this.selectDatabase.getValue())!= -1)
805                    {
806                        //nombre d'isotopes sélectionnés
807                        this.nbIsotopes =  this.nbIsotopes + 1;
808
809                        var molN=input.value;
810                        var molN1=molN.replace("_", ":");
811                        // exemple : -moleisotEEEh2o:161EEE-moleisotEEEh2o:162EEE-moleisotEEEco2:626EEE-moleisotEEEco2:627EEE-moleisotEEEo3:666EEE-moleisotEEEo3:668
812                        molName = molName+"-moleisotEEE"+molN1+"EEE";
813                    }
814                    //récupération du nombre de molécules sélectionnées
815                    if( input.type == 'checkbox' && input.checked == true && input.id.indexOf("all-")!= -1 && input.id.indexOf(this.selectDatabase.getValue())!= -1)
816                    {
817                        //nombre d'isotopes sélectionnés
818                        this.nbMolecules =  this.nbMolecules + 1;
819                    }
820                }
821
822
823
824                //sélection du type d'échelle pour le parametre Y1 (il y a une valeur pour ce champ que si logaritmic est choisi et si l'option est activée)
825                if  (this.selectScaleY1.getValue() == '-log_scale' && this.selectScaleY1.isDisable == false)
826                {
827                    var logScale = this.selectScaleY1.getValue();
828                }
829                else
830                {
831                    var logScale = ""
832                }
833
834                //sélection du nombre de courbes ou de graphs
835
836                var nbCourbes = "";
837                switch (this.SelectNbCourbes.getValue()) {
838                    case 'cm':
839                        nbCourbes = "EEE-separate_molEEE-same_graphEEE";
840                        this.nbGraph = 1;
841                        this.nbCourbe =  this.nbMolecules;
842                        if (this.nbCourbe > 8) {
843                            alert("Too much molecules selected to draw one curve for each molecule selected");
844                            return;
845                        }
846                        break;
847                    case 'ci':
848                        nbCourbes = "EEE-separate_isoEEE-same_graphEEE";
849                        this.nbGraph = 1;
850                        this.nbCourbe =  this.nbIsotopes;
851                        if (this.nbCourbe > 8) {alert("Too much isotopologues selected to draw one curve for each isotopologues selected");}
852                        break;
853                    case 'gm':
854                        nbCourbes = "EEE-separate_molEEE";
855                        this.nbGraph = this.nbMolecules;
856                        if (this.nbGraph > 20) {alert("Too much molecules selected to draw one graph for each molecules selected");}
857                        break;
858                    case 'gi':
859                        nbCourbes = "EEE-separate_isoEEE";
860                        this.nbGraph = this.nbIsotopes;
861                        if (this.nbGraph > 20) {alert("Too much isotopologues selected to draw one graph for each isotopologues selected");}
862                        break;
863                    default:
864                        nbCourbes = "";
865                        this.nbGraph = 1;
866                        break;
867                }
868
869
870                //sélection ou non d'un 2eme choix pour l'axe des Y   (pas de valeur pour ce champ si choix none ou si l'option n'est pas activée)
871                if  (this.selectTraceAxeY2.getValue() == 'no' ||  this.selectTraceAxeY2.isDisable == true)
872                {
873                    var field2 = "";
874                }
875                else
876                {
877                    var field2 = "-field2EEE"+this.selectTraceAxeY2.getValue();
878                }
879
880                //sélection du type d'échelle pour le parametre Y2 (il y a une valeur pour ce champ que si logaritmic est choisi et si l'option est activée)
881                if  (this.selectScaleY2.getValue() == '-log_scale2' && this.selectScaleY2.isDisable == false)
882                {
883                    var logScale2 =this.selectScaleY2.getValue();
884                }
885                else
886                {
887                    var logScale2 = "";
888                }
889
890
891                //sélection du type de tracé pour Y2  (pas de valeur  si l'option n'est pas activée)
892                if  ( this.selectTypeTraceY2.isDisable == true)
893                {
894                    var lineType = "";
895                }
896                else
897                {
898                    var lineType = "-line_type2EEE"+this.selectTypeTraceY2.getValue();
899                }
900
901                //Valeur de mean value (a faire test sur la valeur à ne prendre que si val >=0 sinon afficher message)
902                    var meanValue = "EEE-stepEEE"+$("#meanValue2").val();
903
904
905
906                //construction de la requête Fortran
907                var parameters2 = "&fortranRequest="+molName+"EEE-wavenb_minEEE"+$("#RangeLower").val()+"EEE-wavenb_maxEEE"+$("#RangeUpper").val()+"EEE-int_minEEE"+$("#intensityLo").val()+"EEE-int_maxEEE"+$("#intensityUp").val()+
908                                   meanValue+nbCourbes+"EEE-fieldEEE"+this.selectTraceAxeY1.getValue()+"EEE"+logScale+"EEE-line_typeEEE"+this.selectTypeTraceY1.getValue()+"EEE"+field2+"EEE"+logScale2+"EEE"+lineType;
909
910                alert(parameters2);
911
912                $.ajax( {
913                            url: "project?methodName=createUserRequest&"+parameters2+"&nbGraph="+ this.nbGraph,
914                            success:jQuery.proxy( this.handleGeisa, this )
915                        } );
916            },
917
918 // HANDLES ******************************************************** = retours ajax
919
920
921            handleGeisa: function( result )
922            {
923
924
925                // var bob = jQuery.parseJSON( result ).resultAjax;
926                //chemin de l'image
927//                this.pathImg = jQuery.parseJSON( result ).pathImg;
928                this.pathImg = "<%=Controller.PATH_IMAGES%>";
929                //alert("this.pathImg="+this.pathImg);
930                //numéro unique pour le nom du graph
931                this.nb = jQuery.parseJSON( result ).nb;
932                alert("this.nb="+this.nb);
933                //nom de l'image
934                //this.nameImg = jQuery.parseJSON( result ).nameImg;
935
936                //Pour tracer le bon nombre de graphe et de bouton download
937                var i=1;
938                var content = '';
939                    for (i=1; i<this.nbGraph+1; i++) {
940                        content = content + '<img src=' + this.pathImg + "graph" + this.nb +"-"+i+ ".png"+ ' /><a href="project?methodName=downloadFile&fileName='  + "graph" + this.nb+"-"+i + ".png"+ '"><button class="dataProtocolDownloadButton">Download</button></a>';
941                    }
942
943
944               //to do
945               // if( !this.pathImg )
946               //     setTimeout( jQuery.proxy( this.displayWindow, this ), 1000 );
947               // else
948                   this.displayWindow(content);
949
950              // window.setTimeout(function() {
951               //      alert("Hello World!");
952               //     jQuery.proxy( this.displayWindow(content), this );
953               //  }, 2000);
954
955            },
956
957 // EVENTS ********************************************************
958
959
960            //affichage du bloc des molecules en fonction de la base de donnees selectionnee
961            onClickSelectDatabase: function(value)
962            {
963
964                if  ('GEISA-11' == value)
965                {
966                    document.getElementById( "BDD-GEISA-11" ).style.display = "";
967                    document.getElementById( "BDD-GEISA-IASI-11" ).style.display = "none";
968                    document.getElementById( "BDD-GEISA-03" ).style.display = "none";
969                    document.getElementById( "BDD-GEISA-IASI-03" ).style.display = "none";
970                }
971
972                if  ('GEISA-IASI-11' == value)
973                {
974                    document.getElementById( "BDD-GEISA-11" ).style.display = "none";
975                    document.getElementById( "BDD-GEISA-IASI-11" ).style.display = "";
976                    document.getElementById( "BDD-GEISA-03" ).style.display = "none";
977                    document.getElementById( "BDD-GEISA-IASI-03" ).style.display = "none";
978                }
979
980                if  ('GEISA-03' == value)
981                {
982                    document.getElementById( "BDD-GEISA-11" ).style.display = "none";
983                    document.getElementById( "BDD-GEISA-IASI-11" ).style.display = "none";
984                    document.getElementById( "BDD-GEISA-03" ).style.display = "";
985                    document.getElementById( "BDD-GEISA-IASI-03" ).style.display = "none";
986                }
987                if  ('GEISA-IASI-03' == value)
988                {
989                    document.getElementById( "BDD-GEISA-11" ).style.display = "none";
990                    document.getElementById( "BDD-GEISA-IASI-11" ).style.display = "none";
991                    document.getElementById( "BDD-GEISA-03" ).style.display = "none";
992                    document.getElementById( "BDD-GEISA-IASI-03" ).style.display = "";
993                }
994            },
995
996
997
998            cliquetout: function()
999            {
1000                var context = this[0];
1001                // exemple :moleculeName = ch3ch
1002                var moleculeName = this[1];
1003                var bddVersion = this[2];
1004                var inputs = document.getElementsByTagName( 'input' );
1005                var count = inputs.length;
1006                for( i = 0; i < count; i++ )
1007                {
1008                   var  input = inputs.item( i );
1009                    //cliquer toutes les molécules et isotopes du meme nom dans toutes les bases
1010                    //if( input.type == 'checkbox' && ( input.id == ('chk-' + name + '-GEISA-11') || input.id == ('chk-' + name + '-GEISA-03') || input.id == ('chk-' + name + '-GEISA-IASI-11') || input.id == ('chk-' + name + '-GEISA-IASI-03')
1011                                                  // || input.id == (name + '-all-GEISA-03') || input.id == (name + '-all-GEISA-11') || input.id == (name + '-all-GEISA-IASI-03') || input.id == (name + '-all-GEISA-IASI-11')))
1012
1013                    if( input.type == 'checkbox' && ( input.id.indexOf('chk-' + moleculeName + '_') != -1 || input.id.indexOf('all-'+moleculeName+'-')!= -1 ))
1014
1015                    {
1016                        input.checked = document.getElementById( 'all-'+ moleculeName + '-' + bddVersion ).checked;
1017                    }
1018                }
1019            },
1020
1021            cliqueIsotope: function()
1022            {
1023                var context = this[0];
1024                var isotopeName = this[1];
1025                var bddVersion = this[2];
1026                var inputs = document.getElementsByTagName( 'input' );
1027                var count = inputs.length;
1028                for( i = 0; i < count; i++ )
1029                {
1030                    input = inputs.item( i );
1031                    //name=ch3cn_134
1032                    //cliquer ou decliquer le meme isotope dans toutes les bases
1033                    if( input.type == 'checkbox' &&  input.id.indexOf('chk-' + isotopeName) != -1)
1034                    {
1035                        input.checked = document.getElementById( 'chk-' + isotopeName + '-' + bddVersion ).checked;
1036
1037                    }
1038                }
1039            },
1040
1041            decliquemol : function( name )
1042            {
1043
1044                var inputs = document.getElementsByTagName( 'input' );
1045                var count = inputs.length;
1046                var i = 0;
1047                for( i = 0; i < count; i++ )
1048                {
1049                    input = inputs.item( i );
1050                    if( input.type == 'checkbox' && input.id == (name + '-all') && input.checked == true )
1051                    {
1052                        input.checked = false;
1053                    }
1054                }
1055            },
1056
1057            visibilite: function(  )
1058            {
1059                var context = this[0];
1060                var thingId = this[1];
1061                var divs = document.getElementsByTagName( 'div' );
1062                var count = divs.length;
1063                var i = 0;
1064                for( i = 0; i < count; i++ )
1065                {
1066                   var div = divs.item( i );
1067
1068
1069                    if  (  div.id ==   thingId)
1070                    {
1071                        if( div.style.display == "none" )
1072                        {
1073                            div.style.display = "";
1074                        }
1075                        else
1076                        {
1077                            div.style.display = "none";
1078                        }
1079                    }
1080                }
1081            },
1082
1083
1084            onBlurInputMeanValue: function()
1085            {
1086                //si step est sup a 0,   ajout d'une ligne Z aux parametres Y1 et y2
1087                if  ($("#meanValue2").val() > 0)
1088                {
1089                    this.selectTraceAxeY1.add( 'Z', "Number of lines ", jQuery.proxy(this.onClickSelectTraceAxeY1, this ) );
1090                    this.selectTraceAxeY2.add( 'Z', "Number of lines ", jQuery.proxy(this.onClickSelectTraceAxeY2, this ) );
1091                }
1092                //si step = a 0     et autres valeurs (a faire) , retrait de la ligne Z aux parametres Y1 et y2
1093                if  ($("#meanValue2").val() == 0)
1094                {
1095                    //alert($("#meanValue2").val());
1096                    this.selectTraceAxeY1.remove( 'Z', "Number of lines ", jQuery.proxy(this.onClickSelectTraceAxeY1, this ) );
1097                    this.selectTraceAxeY2.remove( 'Z', "Number of lines ", jQuery.proxy(this.onClickSelectTraceAxeY2, this ) );
1098                }
1099            },
1100
1101            onClickSelectNbCourbes: function(value)
1102            {
1103
1104                //si plusieurs courbes ou graphe choisis pour les isotopes et ou molecules, les choix pour Y2 sont inactifs
1105                if  ('ca' != value)
1106                {
1107                    //transformer le texte en gris
1108                    document.getElementById("axeY2Titre").className = "notActiveText";
1109                    document.getElementById("scaleY2Titre").className = "notActiveText";
1110                    document.getElementById("typePlotY2Titre").className = "notActiveText";
1111                    //pour rendre le menu déroulant inactif
1112                    this.selectTraceAxeY2.disable();
1113                    this.selectScaleY2.disable();
1114                    this.selectTypeTraceY2.disable();
1115                }
1116                //si une seule courbe choisie pour les isotopes et ou molecules, les choix pour Y2 sont actifs
1117                if  ('ca' == value)
1118                {
1119                    //remet le texte en couleur active
1120                    document.getElementById("axeY2Titre").className = "activeText";
1121                    //rendre actif l'echelle que si l'intensite est choisie dans les parametres
1122                    if (this.selectTraceAxeY2.getValue() == 'B')
1123                    {
1124                        document.getElementById("scaleY2Titre").className = "activeText";
1125                    }
1126                    //rendre actif le type de plot si ce n'est pas la valeur none qui est choisie
1127                    if (this.selectTraceAxeY2.getValue() != 'no')
1128                    {
1129                        document.getElementById("typePlotY2Titre").className = "activeText";
1130                    }
1131                    //pour rendre les menu déroulant actifs
1132                    this.selectTraceAxeY2.enable();
1133                    //rendre actif l'echelle que si l'intensite est choisie dans les parametres
1134                    if (this.selectTraceAxeY2.getValue() == 'B')
1135                    {
1136                        this.selectScaleY2.enable();
1137                    }
1138                    //rendre actif le type de plot si ce n'est pas la valeur none qui est choisie
1139                    if (this.selectTraceAxeY2.getValue() != 'no')
1140                    {
1141                        this.selectTypeTraceY2.enable();
1142                    }
1143                }
1144            },
1145
1146
1147            onClickSelectTraceAxeY1: function(value)
1148            {
1149                //si intensite n'est pas choisi pour Y1, le type d'échelle est inactif
1150                if  (this.selectTraceAxeY1.getValue() != 'B')
1151                {
1152                    //transformer le texte en gris
1153                    document.getElementById("scaleY1Titre").className = "notActiveText";
1154                    //pour rendre le menu déroulant inactif
1155                    this.selectScaleY1.disable();
1156                }
1157                //si intensite est  choisi pour Y1, le type d'échelle est actif
1158                if  (this.selectTraceAxeY1.getValue() == 'B')
1159                {
1160                    //transformer le texte en gris
1161                    document.getElementById("scaleY1Titre").className = "activeText";
1162                    //pour rendre le menu déroulant inactif
1163                    this.selectScaleY1.enable();
1164                }
1165            },
1166
1167            onClickSelectTraceAxeY2: function(value)
1168            {
1169                //si intensite n'est pas choisi pour Y2, le type d'échelle est inactif
1170                if  (this.selectTraceAxeY2.getValue() != 'B')
1171                {
1172                    //transformer le texte en gris
1173                    document.getElementById("scaleY2Titre").className = "notActiveText";
1174                    //pour rendre le menu déroulant inactif
1175                    this.selectScaleY2.disable();
1176                }
1177                //si intensite est  choisi pour Y2, le type d'échelle est actif
1178                if  (this.selectTraceAxeY2.getValue() == 'B')
1179                {
1180                    //transformer le texte en gris
1181                    document.getElementById("scaleY2Titre").className = "activeText";
1182                    //pour rendre le menu déroulant inactif
1183                    this.selectScaleY2.enable();
1184                }
1185               //si aucun parametre est  choisi pour Y2, le type de plot est inactif
1186                if  (this.selectTraceAxeY2.getValue() == 'no')
1187                {
1188                    //transformer le texte en gris
1189                    document.getElementById("typePlotY2Titre").className = "notActiveText";
1190                    //pour rendre le menu déroulant inactif
1191                    this.selectTypeTraceY2.disable();
1192                }
1193                //si un parametre est  choisi pour Y2, le type de plot est actif
1194                if  (this.selectTraceAxeY2.getValue() != 'no')
1195                {
1196                    //transformer le texte en gris
1197                    document.getElementById("typePlotY2Titre").className = "activeText";
1198                    //pour rendre le menu déroulant inactif
1199                    this.selectTypeTraceY2.enable();
1200                }
1201
1202            },
1203
1204              onClickSubmit: function()
1205            {
1206                this.requestGeisa();
1207            },
1208
1209            displayWindow: function(content)
1210            {
1211                // var content = '<img src=' + this.pathImg + ' /><a href="project?methodName=downloadFile&fileName='  + this.nameImg + '"><button class="dataProtocolDownloadButton">Download</button></a>';
1212
1213                //alert(content);
1214                var $dialog = $( '<div></div>' )
1215
1216                        .html( content )
1217
1218                        .dialog( {
1219                            autoOpen: false,
1220                            title: "GEISA : spectroscopic database",
1221                            //minHeight: 500,
1222                            // minWidth: 660,
1223                            height: 560,
1224                            width:700,
1225                            //Exemple de  valeurs possible pour position : "middle", "top",  [200, 100]
1226                            position: "middle"
1227
1228                        } );
1229                $dialog.dialog( 'open' )
1230            },
1231
1232            // displayWindow: function(coordinate)
1233            //{
1234                //var content = '<img src=' + this.pathImg + ' /><a href="project?methodName=downloadFile&fileName=bib.txt"><button class="dataProtocolDownloadButton">Download</button></a>';
1235               // var content = '<img src=' + this.pathImg + ' /><a href="project?methodName=downloadFile&fileName='  + this.nameImg + '"><button class="dataProtocolDownloadButton">Download</button></a>';
1236
1237                //alert(content);
1238               // var $dialog = $( '<div></div>' )
1239                       // .html( content + content1 )
1240
1241                       // .dialog( {
1242                        //    autoOpen: false,
1243                        //    title: "GEISA : spectroscopic database",
1244                        //    minHeight: 500,
1245                        //    minWidth: 660,
1246
1247                            //coordonnee y y
1248                         //   position:coordinate
1249
1250                       // } );
1251               // $dialog.dialog( 'open' )
1252            //},
1253
1254
1255              onClickDownload: function()
1256            {
1257                document.location.href = "project?methodName=downloadFile&fileName=bib.txt";
1258            }
1259
1260
1261        } );
1262
1263</script>
Note: See TracBrowser for help on using the repository browser.