Subversion Repositories eFlore/Applications.cel

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
594 aurelien 1
package org.tela_botanica.client.vues;
2
 
3
import org.tela_botanica.client.CarnetEnLigneMediateur;
4
import org.tela_botanica.client.interfaces.Rafraichissable;
5
import org.tela_botanica.client.modeles.Configuration;
6
 
7
import com.google.gwt.event.logical.shared.ValueChangeEvent;
8
import com.google.gwt.event.logical.shared.ValueChangeHandler;
9
import com.google.gwt.user.client.ui.CheckBox;
10
import com.google.gwt.user.client.ui.HTML;
11
import com.google.gwt.user.client.ui.Label;
12
import com.gwtext.client.core.EventObject;
13
import com.gwtext.client.widgets.Button;
14
import com.gwtext.client.widgets.Panel;
15
import com.gwtext.client.widgets.event.ButtonListenerAdapter;
16
import com.gwtext.client.widgets.form.FormPanel;
17
 
18
public class FenetreLicenceVue extends com.gwtext.client.widgets.Window implements Rafraichissable {
19
 
20
		CarnetEnLigneMediateur cm = null;
21
 
22
		private CheckBox accepterLicence = new CheckBox();
23
		private Button validerAcceptationLicence = new Button("Valider");
24
		private Button annulerAcceptationLicence = new Button("Refuser");
25
 
26
		private String licence = "Le \"carnet en ligne\" (CEL) est un service proposé par Tela Botanica dans le but de vous aider à garder la trace de vos observations de terrain afin qu'elles ne restent plus prisonnière de votre \"petit carnet à spirale\"... La saisie des données est rapide, sure et précise et le CEL vous permet de les archiver et de les trier facilement. Si vous les publiez, ce que nous vous invitons vivement à faire, mais sans obligation, elles seront visibles sur les cartes de répartition des espèces du site de Tela Botanica. De même, vous pourrez faire partager vos meilleures photos de plantes avec les autres membres du réseau. Vous pourrez également exporter vos observations saisies dans le CEL dans une table Excel pour les traiter statistiquement ou les transférez à d'autres botanistes ou dans d'autres logiciels.<br>"
27
		+"<br>"
28
		+"Pour cela vous devez accepter les conditions suivantes :<br>"
29
		+"<br>"
30
		+"1. <b>Etre inscrit au réseau Tela Botanica</b> : cette inscription est gratuite et vous trouverez toutes explications à l'adresse <a href=\"http://www.tela-botanica.org/page:rejoindre_reseau\">http://www.tela-botanica.org/page:rejoindre_reseau</a><br>"
31
		+" "
32
		+"<br>"
33
		+"2. <b>En publiant vos observations sur le site de Tela Botanica vous acceptez de céder :</b><br>"
34
		+"- <u>un droit d'usage interne à Tela Botanica</u>, non exclusif, non limité dans le temps et à titre gratuit, sur l’ensemble des données publiées, notamment celui de les détenir, de les dupliquer, de les archiver, de les agréger avec des données provenant d’autres sources et d’effectuer tout type de calcul permettant d’en extraire des informations de niveau général, comme des statistiques par exemple.<br>"
35
		+"- <u>le droit à Tela Botanica de les diffuser librement et gratuitement</u>, sans limite de temps, à condition que le nom de l'auteur de l'observation soient cité ainsi que celui de Tela Botanica. Cependant, dans le cas ou une publication comprendrait plus de 100 auteurs différents, seule la mention \"réseau Tela Botanica\" pourra être mentionnée.<br>"
36
		+"<br>"
37
		+"3. <b>Vous pouvez à tout moment retirer de la publication les données que vous désirez</b>. Dans ce cas les clauses de l'article précédent ne s'appliqueront plus aux données ainsi retirées de la publication, sans toute fois pouvoir revenir sur les droits cédés antérieurement lors de leur publication initiale dans le cas ou ces données ait déjà été utilisées par des tiers. <br>"
38
		+" "
39
		+"<br>"
40
		+"4. <b>En publiant vos photos</b> sur le site de TB lors de la publication de vos observations, vous acceptez de les mettre à disposition de la communauté sous une licence <a href=\"http://www.tela-botanica.org/page:licence\">Creative Commons</a>. Cette mise à disposition sous licence Creative Commons n'est applicable que pour le format réduit de vos clichés présenté sur le site Tela Botanica. Elle ne s'applique pas aux clichés dans leur format original en haute définition dont vous gardez la propriété exclusive.<br>"
41
		+"Selon cette licence <a href=\"http://www.tela-botanica.org/page:licence\">Creative Commons</a> toute personne sera libre de reproduire, modifier, distribuer et communiquer les photos au public selon les conditions suivantes :<br>"
42
		+"- citer le nom de l'auteur original de l'oeuvre ainsi que celui de Tela Botanica qui l'édite,<br>"
43
		+"- s'il y a modification, transformation ou adaptation des oeuvres, vous cédez le droit de distribuer la création qui en résulte que sous un contrat identique à celui-ci,<br>"
44
		+" "
45
		+"- à chaque réutilisation ou distribution, doit apparaître clairement les conditions contractuelles de mise à disposition de cette création,<br>"
46
		+"- chacune de ces conditions peut être levée s'il y a autorisation du titulaire des droits.<br>"
47
		+"<br>"
48
		+"5. <b>En publiant vos données (photos et/ou observations) sur le site de Tela Botanica</b> vous acceptez que les membres du réseau puissent vous contacter via votre adresse électronique pour discuter avec vous de la pertinence de votre détermination, de son lieu d'observation ou de l'intitulé de vos clichés.<br>"
49
		+"<br>"
50
		+"6. <b>Affichage de votre identité et de votre adresse électronique</b>. L'affichage de votre identité pourra apparaître selon les noms et prénoms que vous aurez renseigné lors de votre inscription au réseau Tela Botanica. Seule la partie précédent le signe @ de votre adresse électronique sera affichée afin d'éviter son utilisation par des tiers. Les messages qui vous parviendront seront envoyés par Tela Botanica via un dispositif garantissant le non piratage de votre adresse.<br>"
51
		+"<br/><br/>"
52
		;
53
 
54
 
55
	    public FenetreLicenceVue(CarnetEnLigneMediateur cm) {
56
 
57
	       super();
58
 
59
	       this.cm = cm;
60
 
61
	       setTitle("Acceptation de la licence du carnet en ligne");
62
	       Panel conteneurHtml = new Panel();
63
	       conteneurHtml.setHtml(licence);
64
	       conteneurHtml.setHeight(550);
65
	       conteneurHtml.setAutoScroll(true);
66
	       HTML conteneurLicence = new HTML();
67
	       conteneurHtml.add(conteneurLicence);
68
	       //licence = Configuration.getLicence();
69
 
70
	       conteneurLicence.setHTML(licence);
71
 
72
	       this.add(conteneurHtml);
73
 
74
	       Panel conteneurCheckbox = new Panel();
75
	       conteneurCheckbox.setBorder(false);
76
	       conteneurCheckbox.setHeader(false);
77
 
78
	       Label labelCheckboxAccepterLicence = new Label();
79
	       labelCheckboxAccepterLicence.setStyleName("display:inline");
80
 
81
	       accepterLicence.setText("   J'ai lu et j'accepte la licence");
82
	       accepterLicence.setStyleName("accepter_licence");
83
 
84
	       FormPanel conteneurCheckboxEtValidation = new FormPanel();
85
	       conteneurCheckboxEtValidation.setHeader(false);
86
 
87
	       conteneurCheckboxEtValidation.setHeight(70);
88
 
89
	       conteneurCheckboxEtValidation.add(accepterLicence);
90
	       conteneurCheckboxEtValidation.add(labelCheckboxAccepterLicence);
91
 
92
	       conteneurCheckboxEtValidation.addButton(validerAcceptationLicence);
93
 
94
	       validerAcceptationLicence.setDisabled(true);
95
 
96
	       conteneurCheckboxEtValidation.addButton(annulerAcceptationLicence);
97
 
98
	       this.add(conteneurCheckboxEtValidation);
99
 
100
	       this.setClosable(false);
101
 
102
	       ajouterListenerBoutons();
103
	    }
104
 
105
	    public void ajouterListenerBoutons() {
106
 
107
	    	accepterLicence.addValueChangeHandler(new ValueChangeHandler<Boolean>() {
108
 
109
				public void onValueChange(ValueChangeEvent<Boolean> event) {
110
					validerAcceptationLicence.setDisabled(!event.getValue());
111
				}
112
			});
113
 
114
	    	validerAcceptationLicence.addListener(new ButtonListenerAdapter() {
115
 
116
				public void onClick(Button button, EventObject e) {
117
 
118
					cm.rafraichir("licence_acceptee", false);
119
				}
120
			});
121
 
122
	    	annulerAcceptationLicence.addListener(new ButtonListenerAdapter() {
123
 
124
				public void onClick(Button button, EventObject e) {
125
 
126
					cm.rafraichir("licence_refusee", false);
127
				}
128
			});
129
	    }
130
 
131
		public void rafraichir(Object nouvelleDonnees,
132
				boolean repandreRaffraichissement) {
133
			// TODO Auto-generated method stub
134
 
135
		}
136
}