Subversion Repositories eFlore/Applications.cel

Rev

Rev 965 | Rev 1291 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

package org.tela_botanica.client.vues;

import org.tela_botanica.client.CarnetEnLigneMediateur;
import org.tela_botanica.client.interfaces.Rafraichissable;
import org.tela_botanica.client.modeles.objets.Configuration;

import com.google.gwt.event.logical.shared.ValueChangeEvent;
import com.google.gwt.event.logical.shared.ValueChangeHandler;
import com.google.gwt.user.client.ui.CheckBox;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.Label;
import com.gwtext.client.core.EventObject;
import com.gwtext.client.widgets.Button;
import com.gwtext.client.widgets.Panel;
import com.gwtext.client.widgets.event.ButtonListenerAdapter;
import com.gwtext.client.widgets.form.FormPanel;

public class FenetreLicenceVue extends com.gwtext.client.widgets.Window implements Rafraichissable {
        
                CarnetEnLigneMediateur cm = null;
                
                private CheckBox accepterLicence = new CheckBox();
                private Button validerAcceptationLicence = new Button("Valider");
                private Button annulerAcceptationLicence = new Button("Refuser");
                
                // C'est moche mais ça évite de la transmettre du serveur ou de créer un fichier de config pour la licence
                // Todo afficher un texte provenant d'une url
                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>"
                +"<br>"
                +"Pour cela vous devez accepter les conditions suivantes :<br>"
                +"<br>"
                +"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>"
                +" "
                +"<br>"
                +"2. <b>En publiant vos observations sur le site de Tela Botanica vous acceptez de céder :</b><br>"
                +"- <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>"
                +"- <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>"
                +"<br>"
                +"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>"
                +" "
                +"<br>"
                +"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>"
                +"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>"
                +"- citer le nom de l'auteur original de l'oeuvre ainsi que celui de Tela Botanica qui l'édite,<br>"
                +"- 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>"
                +" "
                +"- à chaque réutilisation ou distribution, doit apparaître clairement les conditions contractuelles de mise à disposition de cette création,<br>"
                +"- chacune de ces conditions peut être levée s'il y a autorisation du titulaire des droits.<br>"
                +"<br>"
                +"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>"
                +"<br>"
                +"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>"
                +"<br/><br/>"
                ;
                
           
            public FenetreLicenceVue(CarnetEnLigneMediateur cm) {
                
               super();
               
               this.cm = cm;
               
               setTitle("Acceptation de la licence du carnet en ligne");
               Panel conteneurHtml = new Panel();
               conteneurHtml.setHtml(licence);
               conteneurHtml.setHeight(230);
               conteneurHtml.setAutoScroll(true);
               HTML conteneurLicence = new HTML();
               conteneurHtml.add(conteneurLicence);
               //licence = Configuration.getLicence();
               setConstrain(true);
               
               conteneurLicence.setHTML(licence);
               
               this.add(conteneurHtml);
               
               Panel conteneurCheckbox = new Panel();
               conteneurCheckbox.setBorder(false);
               conteneurCheckbox.setHeader(false);
               
               Label labelCheckboxAccepterLicence = new Label();
               labelCheckboxAccepterLicence.setStyleName("display:inline");
               
               accepterLicence.setText("   J'ai lu et j'accepte la licence");
               accepterLicence.setStyleName("accepter_licence");
               
               FormPanel conteneurCheckboxEtValidation = new FormPanel();
               conteneurCheckboxEtValidation.setHeader(false);
               
               conteneurCheckboxEtValidation.setHeight(70);
               
               conteneurCheckboxEtValidation.add(accepterLicence);
               conteneurCheckboxEtValidation.add(labelCheckboxAccepterLicence);
               
               conteneurCheckboxEtValidation.addButton(validerAcceptationLicence);
               
               validerAcceptationLicence.setDisabled(true);
               
               conteneurCheckboxEtValidation.addButton(annulerAcceptationLicence);
               
               this.add(conteneurCheckboxEtValidation);
               
               this.setClosable(false);
               
               this.setHeight(320);
               
               ajouterListenerBoutons();
            }
            
            public void ajouterListenerBoutons() {
                
                accepterLicence.addValueChangeHandler(new ValueChangeHandler<Boolean>() {
                                
                                public void onValueChange(ValueChangeEvent<Boolean> event) {
                                        validerAcceptationLicence.setDisabled(!event.getValue());
                                }
                        });
                
                validerAcceptationLicence.addListener(new ButtonListenerAdapter() {
                                
                                public void onClick(Button button, EventObject e) {

                                        cm.rafraichir("licence_acceptee", false);
                                }
                        });
                
                annulerAcceptationLicence.addListener(new ButtonListenerAdapter() {
                                
                                public void onClick(Button button, EventObject e) {

                                        cm.rafraichir("licence_refusee", false);
                                }
                        });
            }

                public void rafraichir(Object nouvelleDonnees,
                                boolean repandreRaffraichissement) {
                        // TODO Auto-generated method stub
                        
                }
}