// Charger la zone de modification par les differents elements du formulaire public void chargerFormulaire() { // Vider la zone de modification dans le cas où elle est occupée par un // autre formulaire if (bodyExist) { RootPanel.get("container_principal").clear(); Document.get().getBody().removeChild(bodyForm.getElement()); dualListBox.clear(); enregistrer = new Anchor(); } // Construire la zone de modification bodyForm = new BodyFormulaire(); Document.get().getBody().appendChild(bodyForm.getElement()); // Alimenter la liste des comptes CU et CA alimenterList(); // Ajouter Action au lien "Allocation du formulaire" Anchor link_allocation = Anchor.wrap(bodyForm.getLink_allocation()); link_allocation.addClickHandler( new ClickHandler() { public void onClick(ClickEvent event) { // Afficher le popup contenant la dual liste qui contient la // liste des comptes CA et CU FormulaireController.CreateDialogBoxAllocation(dualListBox, false, null).show(); } }); // Ajouter le button supprimer Formulaire supprimer.setHTML( "<a class='bouton_enregistrer floatRight' style='margin-right:13%; cursor:pointer'>Supprimer</a>"); RootPanel.get("button_Enregistrer").add(supprimer); // RootPanel.get("form_formulaire_allocation").getElement().appendChild(dualListBox.getElement()); RootPanel.get("form_formulaire_creation").getElement().appendChild(form.getElement()); enregistrer.setHTML( "<a class='bouton_enregistrer floatRight' style='margin-right:15px; cursor:pointer'>Enregistrer</a>"); RootPanel.get("button_Enregistrer").add(enregistrer); RootPanel.get("contenu_principal_formulaire").add(new FormulaireBoard()); RootPanel.get("container_principal").insert(FormulaireController.createImageGrid(), 0); bodyExist = true; // Remplir le formulaire nom et commentaire RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, FORMULAIRE_URL + formulaire_id); builder.setHeader("Content-Type", "application/json"); try { builder.sendRequest( null, new RequestCallback() { public void onError(Request request, Throwable exception) {} @SuppressWarnings("deprecation") public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() == Response.SC_OK) { JSONValue formAsJSONValue = JSONParser.parse(response.getText()); formAsJSONObject = formAsJSONValue.isObject(); ((InputElement) form.getForm_nom()) .setValue(formAsJSONObject.get("nom").isString().stringValue()); ((InputElement) form.getForm_comment()) .setValue(formAsJSONObject.get("commentaire").isString().stringValue()); ancienNom = form.getForm_nom().getValue(); // ((InputElement)form.getForm_nom()).setDisabled(true); } } }); } catch (RequestException e) { System.out.println("RequestException"); } // Remplir la zone de création par les elements et les parametres builder = new RequestBuilder( RequestBuilder.GET, ELEMENT_URL + "listerElement/formulaire/" + formulaire_id); builder.setHeader("Content-Type", "application/json"); try { builder.sendRequest( null, new RequestCallback() { public void onError(Request request, Throwable exception) {} @SuppressWarnings("deprecation") public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() == Response.SC_OK) { String elementsAsJSONString = response.getText(); JSONValue elementsAsJSONValue = JSONParser.parse(elementsAsJSONString); JSONArray elementsAsJSONArray = elementsAsJSONValue.isArray(); for (int i = 0; i < elementsAsJSONArray.size(); i++) { JSONValue elementAsJSONValue = elementsAsJSONArray.get(i); JSONObject elementAsJSONObject = elementAsJSONValue.isObject(); elementsAsString += elementAsJSONObject.get("id").isNumber().toString() + "-"; getParamsByElement( Long.parseLong(elementAsJSONObject.get("id").isNumber().toString()), Integer.parseInt(elementAsJSONObject.get("position_y").isNumber().toString()), Integer.parseInt(elementAsJSONObject.get("position_x").isNumber().toString()), elementAsJSONObject.get("type").isString().stringValue()); } } } }); } catch (RequestException e) { System.out.println("RequestException"); } // Action de suppression d'un formulaire supprimer.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { // Supprimer le formulaire RequestBuilder builder = new RequestBuilder( RequestBuilder.PUT, FORMULAIRE_URL + "supprimer/" + formulaire_id); builder.setHeader("Content-Type", "application/json"); try { builder.sendRequest( null, new RequestCallback() { public void onError(Request request, Throwable exception) {} public void onResponseReceived(Request request, Response response) { Window.Location.reload(); } }); } catch (RequestException e) { System.out.println("RequestException"); } } }); // Action de l'enregistrement du formulaire dans la base de données enregistrer.addClickHandler( new ClickHandler() { public void onClick(ClickEvent event) { FormulaireController.recupererElements(choices, options, elements, parametres); // Ajouter les elements regroupés dans la base de données ajouterFormulaire(elements); } }); final Anchor apercu = new Anchor(); // Création du lien de l'aperçu apercu.setHTML( "<a class='bouton_enregistrer floatRight' style='margin-right:15px; cursor:pointer'>Aperçu</a>"); RootPanel.get("button_Enregistrer").add(apercu); apercu.addClickHandler( new ClickHandler() { @SuppressWarnings("rawtypes") public void onClick(ClickEvent event) { choices = new ArrayList(); options = new ArrayList(); elements = new ArrayList(); parametres = new ArrayList(); FormulaireController.recupererElements(choices, options, elements, parametres); bodyapercu = new BodyApercu(); // Passer à l'interface de l'aperçu Document.get().getBody().removeChild(bodyForm.getElement()); Document.get().getBody().appendChild(bodyapercu.getElement()); // Création de la page de l'aperçu FormulaireController.pageApercu( bodyapercu, form.getForm_nom().getValue(), form.getForm_comment().getValue(), elements, parametres, choices, options); Anchor retourAnchor = Anchor.wrap(bodyapercu.getRetour()); retourAnchor.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { choices = new ArrayList(); options = new ArrayList(); elements = new ArrayList(); parametres = new ArrayList(); Document.get().getBody().removeChild(bodyapercu.getElement()); Document.get().getBody().appendChild(bodyForm.getElement()); } }); } }); }
@Override public void onModuleLoad() { /** * Seuls les profils Super Adminisatreur et CA peuvent se connecter à cette page * */ if (Cookies.getCookie("profil") == null) { Window.Location.replace(GWT.getHostPageBaseURL() + "Connexion.html" + Constantes.SUFFIXE_URL); } else if (Cookies.getCookie("client") == null) Window.Location.replace( GWT.getHostPageBaseURL() + "Accueil_superadmin.html" + Constantes.SUFFIXE_URL); else if (Cookies.getCookie("profil").equals("CU")) { Window.Location.replace( GWT.getHostPageBaseURL() + "Accueil_applifit.html" + Constantes.SUFFIXE_URL); } else { // Ajouter le menu à la page MenuForm menu = new MenuForm(Constantes.USER); Document.get().getBody().appendChild(menu.getElement()); /** * action de deconnexion ** */ Anchor deconnexionWrapper = Anchor.wrap(menu.getDeconnexion()); deconnexionWrapper.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { Utils.deconnexion(); } }); /** * action Rubrique accueil ** */ Anchor accueilWrapper = Anchor.wrap(menu.getAccueil()); accueilWrapper.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { if (Cookies.getCookie("profil").equals("SA")) Window.Location.replace( GWT.getHostPageBaseURL() + "Accueil_superadmin.html" + Constantes.SUFFIXE_URL); else Window.Location.replace( GWT.getHostPageBaseURL() + "Accueil_applifit.html" + Constantes.SUFFIXE_URL); } }); /** * action de rubrique formulaire ** */ Anchor formulaireWrapper = Anchor.wrap(menu.getFormulaire()); formulaireWrapper.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { if (Cookies.getCookie("profil").equals("SA") || Cookies.getCookie("profil").equals("CA")) Window.Location.replace( GWT.getHostPageBaseURL() + "Formulaire_menu_applifit.html" + Constantes.SUFFIXE_URL); else Window.Location.replace( GWT.getHostPageBaseURL() + "Formulaire_consulter_applifit.html" + Constantes.SUFFIXE_URL); } }); // Ajouter la zone de recherche à la page Document.get().getBody().insertAfter(recherche.getElement(), menu.getElement()); nativeMethod("datepicker"); // Remplire la liste des formulaires par les formulaires actifs liés // à la société courante FormulaireController.alimenterListeForm( FORMULAIRE_URL + "listerFormulaire/entreprise/" + Cookies.getCookie("client"), recherche); // Ajouter action por le button de recherche Anchor search = Anchor.wrap(recherche.getSearch_link()); search.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { final ListBox lb = ListBox.wrap(recherche.getFormulaire()); // Vider la liste lb.clear(); lb.addItem("Choisir un formulaire...", ""); // Lancer la recherche du formulaire selon le nom et la date // de création FormulaireController.rechercheForm(recherche); // Ajouter action on change de la liste des formulaires , // affichant le formulaire selectionné final ListBox lb2 = ListBox.wrap(recherche.getFormulaire()); lb2.addChangeHandler( new ChangeHandler() { @SuppressWarnings("rawtypes") @Override public void onChange(ChangeEvent event) { elements = new ArrayList(); parametres = new ArrayList(); choices = new ArrayList(); options = new ArrayList(); // Si la ligne selectionnée n'est pas le prompt de // la liste if (lb.getSelectedIndex() != 0) { // Récuperer la valeur selectionnée formulaire_id = Long.parseLong(lb.getValue(lb.getSelectedIndex())); // Récuperer les elements et parametres du // formulaire et les afficher dans la zone de // modification chargerFormulaire(); } } }); } }); // Ajouter action on change de la liste des formulaires , affichant // le formulaire selectionné final ListBox lb = ListBox.wrap(recherche.getFormulaire()); lb.addChangeHandler( new ChangeHandler() { @SuppressWarnings("rawtypes") @Override public void onChange(ChangeEvent event) { elements = new ArrayList(); parametres = new ArrayList(); choices = new ArrayList(); options = new ArrayList(); // Si la ligne selectionnée n'est pas le prompt de la liste if (lb.getSelectedIndex() != 0) { // Récuperer la valeur selectionnée formulaire_id = Long.parseLong(lb.getValue(lb.getSelectedIndex())); // Récuperer les elements et parametres du formulaire et // les afficher dans la zone de modification chargerFormulaire(); } } }); } }