Example usage for org.apache.wicket.ajax.markup.html.form AjaxCheckBox AjaxCheckBox

List of usage examples for org.apache.wicket.ajax.markup.html.form AjaxCheckBox AjaxCheckBox

Introduction

In this page you can find the example usage for org.apache.wicket.ajax.markup.html.form AjaxCheckBox AjaxCheckBox.

Prototype

public AjaxCheckBox(final String id, final IModel<Boolean> model) 

Source Link

Document

Construct.

Usage

From source file:com.asptt.plongee.resa.wicket.page.admin.palanque.PalanqueForm.java

@SuppressWarnings("serial")
public PalanqueForm(String id, NavigationOriginePage originePage, final Palanque palanqueUpdate, Date dateMin,
        Date dateMax, final FeedbackPanel feedback) {

    super(id);//from   ww w.j a  va  2 s. com
    feedback.setOutputMarkupId(true);
    dateMini = dateMin;
    dateMaxi = dateMax;
    origPage = originePage;

    //Rcupration de la fiche de securite dans la session
    fs = ResaSession.get().getFicheSecurite();

    //init de la palanque
    if (null == palanqueUpdate) {
        this.palanque = new Palanque();
        this.palanque.setDatePlongee(fs.getDatePlongee());
        this.palanque.setNumero(fs.getNbPalanques() + 1);
    } else {
        this.palanque = palanqueUpdate;
        //methode pour initialiser les ChoiceRenderPlongeur de la palanque
        initPalanque(palanqueUpdate);
    }

    //initialisation des plongeurs  inscrire pour ne pas allez la chercher  chaque fois
    //        listPlongeursAInscrireForpalanque = ResaSession.get().getPlongeeService().initListPlongeursAInscrire(fs);
    listPlongeursAInscrireForpalanque = ResaSession.get().getListPlongeursAInscrire();

    //sauvegarde de la palanque en cas d'annulation de modification
    //TODO - se servir de l'implementation de la methode clone
    final Palanque palanqueSAV = new Palanque(palanque);

    //sauvegarde des plongeursAInscrire en cas d'annulation de modification
    final List<ChoiceRenderPlongeur> plongeursAInscrireSAV = new ArrayList<ChoiceRenderPlongeur>();
    if (null != ResaSession.get().getListPlongeursAInscrire()) {
        plongeursAInscrireSAV.addAll(ResaSession.get().getListPlongeursAInscrire());
    }

    final CompoundPropertyModel<Palanque> modelPalanque = new CompoundPropertyModel<Palanque>(palanque);
    setModel(modelPalanque);

    add(new Label("messageNumPalanque", new StringResourceModel(
            CatalogueMessages.SAISIE_PALANQUE_MSG_NUM_PALANQUE, this, new Model<Palanque>(palanque))));

    // Ajout de la checkbox Bapteme
    AjaxCheckBox checkBox = new AjaxCheckBox("bapteme", new PropertyModel(modelPalanque, "isBapteme")) {

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            //                getIsBapteme = this.getModelObject();
            //                logger.info("value of getIsBapteme = "+this.getModelObject().toString());
            //                throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
        }
    };
    add(checkBox);

    //----------------------Le Choix des plongeurs ------------------------
    final IModel<ChoiceRenderPlongeur> ddcModel = new PropertyModel<ChoiceRenderPlongeur>(this,
            "selectedPlongeur");
    final DropDownChoice ddc = new DropDownChoice<ChoiceRenderPlongeur>("listPlongeurs",
            //                new PropertyModel(this, "selectedPlongeur"),
            ddcModel, listPlongeursAInscrireForpalanque, new PlongeurChoiceRenderer("value", "key")) {
        @Override
        protected boolean wantOnSelectionChangedNotifications() {
            return true;
        }

        @Override
        protected void onSelectionChanged(ChoiceRenderPlongeur newSelection) {
            setSelectedPlongeur(ddcModel.getObject());
        }
    };

    ddc.add(new AjaxFormComponentUpdatingBehavior("onchange") {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
        }
    });
    ddc.setOutputMarkupId(true);
    add(ddc);

    //--------------GUIGE----------------------- 
    final Label labelGuide = new Label("nomGuide", new PropertyModel(modelPalanque, "nomCompletGuide"));
    labelGuide.setOutputMarkupId(true);
    add(labelGuide);
    add(new IndicatingAjaxLink("valideGuide") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getGuide() != null) {
                //on a dja un guide de saisi, donc erreur et on fait rien
                error("Le guide  dj t saisi : " + getGuide().getValue()
                        + " Impossible d'en saisir un autre");
            } else if (null == getSelectedPlongeur()) {
                error("Vous devez d'abord slectionner un plongeur");
            } else {
                setGuide(getSelectedPlongeur());
                suppEntreeListPlongeursAInscrire(getGuide());
                setSelectedPlongeur(null);
                target.addComponent(labelGuide);
                target.addComponent(ddc);
            }
        }
    });
    final MarkupContainer containAptGuide = new WebMarkupContainer("containGuide");
    Label labelAptGuide = new Label("labelAptGuide", Model.of(new String("aptitude")));
    labelAptGuide.setOutputMarkupId(true);
    containAptGuide.add(labelAptGuide);
    TextField<String> valueAptPlongeur = new TextField<String>("aptitudePlongeur");
    valueAptPlongeur.setOutputMarkupId(true);
    containAptGuide.add(valueAptPlongeur);
    containAptGuide.add(new AjaxButton("validAptGuide") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            Palanque pp = (Palanque) form.getModelObject();
            if (null != pp.getAptitudePlongeur()) {
                ChoiceRenderPlongeur oldGuide = getSelectedPlongeur();
                Adherent adh = ResaSession.get().getAdherentService()
                        .rechercherAdherentParIdentifiantTous(getGuide().getKey());
                String key = adh.getNumeroLicense();
                String value = adh.getNom() + "  " + adh.getPrenom() + "  " + pp.getAptitudePlongeur();
                ChoiceRenderPlongeur newGuide = new ChoiceRenderPlongeur(key, value);
                //on met le plongeur modifi comme guide
                setGuide(newGuide);
                //On supprime "ancien" et "nouveau" plongeur des plongeurs  inscrire
                listPlongeursAInscrireForpalanque.remove(oldGuide);
                listPlongeursAInscrireForpalanque.remove(newGuide);
                //On redonne le choix dans la selection du plongeur
                setSelectedPlongeur(null);
                // on remet aptitudePlongeur  null pour la prochaine fois
                pp.setAptitudePlongeur(null);
            }
            containAptGuide.setVisible(!containAptGuide.isVisible());
            target.addComponent(labelGuide);
            target.addComponent(containAptGuide);
            target.addComponent(ddc);
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            target.addComponent(feedback);
        }
    });
    containAptGuide.setVisible(false);
    containAptGuide.setOutputMarkupId(true);
    containAptGuide.setOutputMarkupPlaceholderTag(true);
    add(containAptGuide);
    add(new IndicatingAjaxLink("modifierGuide") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getGuide() == null) {
                error("Le guide n'est pas saisi ");
            } else {
                containAptGuide.setVisible(!containAptGuide.isVisible());
                target.addComponent(labelGuide);
                target.addComponent(containAptGuide);
                target.addComponent(ddc);
            }
        }
    });
    add(new IndicatingAjaxLink("annulerGuide") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getGuide() == null) {
                error("Le guide n'est pas saisi ");
            } else {
                addEntreeListPlongeursAInscrire(getGuide());
                setGuide(null);
                setSelectedPlongeur(null);
                target.addComponent(labelGuide);
                target.addComponent(ddc);
            }
        }
    });
    //--------------PLONGEUR1----------------------- 
    final Label labelPlongeur1 = new Label("nomPlongeur1",
            new PropertyModel(modelPalanque, "nomCompletPlongeur1"));
    labelPlongeur1.setOutputMarkupId(true);
    add(labelPlongeur1);
    add(new IndicatingAjaxLink("validePlongeur1") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getPlongeur1() != null) {
                //on a dja un Plongeur1 de saisi, donc erreur et on fait rien
                error("Le Plongeur1  dj t saisi : " + getPlongeur1().getValue()
                        + " Impossible d'en saisir un autre");
            } else if (null == getSelectedPlongeur()) {
                error("Vous devez d'abord slectionner un plongeur");
            } else {
                setPlongeur1(getSelectedPlongeur());
                suppEntreeListPlongeursAInscrire(getPlongeur1());
                setSelectedPlongeur(null);
                target.addComponent(labelPlongeur1);
                target.addComponent(ddc);
            }
        }
    });
    final MarkupContainer containAptPlongeur1 = new WebMarkupContainer("containPlongeur1");
    Label labelAptPlongeur1 = new Label("labelAptPlongeur1", Model.of(new String("aptitude")));
    labelAptPlongeur1.setOutputMarkupId(true);
    containAptPlongeur1.add(labelAptPlongeur1);
    TextField<String> valueAptPlongeur1 = new TextField<String>("aptitudePlongeur");
    valueAptPlongeur1.setOutputMarkupId(true);
    containAptPlongeur1.add(valueAptPlongeur1);
    containAptPlongeur1.add(new AjaxButton("validAptPlongeur1") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            Palanque pp = (Palanque) form.getModelObject();
            if (null != pp.getAptitudePlongeur()) {
                ChoiceRenderPlongeur oldPlongeur1 = getSelectedPlongeur();
                Adherent adh = ResaSession.get().getAdherentService()
                        .rechercherAdherentParIdentifiantTous(getPlongeur1().getKey());
                String key = adh.getNumeroLicense();
                String value = adh.getNom() + "  " + adh.getPrenom() + "  " + pp.getAptitudePlongeur();
                ChoiceRenderPlongeur newPlongeur1 = new ChoiceRenderPlongeur(key, value);
                //on met le plongeur modifi 
                setPlongeur1(newPlongeur1);
                //On supprime "ancien" et "nouveau" plongeur des plongeurs  inscrire
                listPlongeursAInscrireForpalanque.remove(oldPlongeur1);
                listPlongeursAInscrireForpalanque.remove(newPlongeur1);
                //On redonne le choix dans la selection du plongeur
                setSelectedPlongeur(null);
                // on remet aptitudePlongeur  null pour la prochaine fois
                pp.setAptitudePlongeur(null);
            }
            containAptPlongeur1.setVisible(!containAptPlongeur1.isVisible());
            target.addComponent(labelPlongeur1);
            target.addComponent(containAptPlongeur1);
            target.addComponent(ddc);
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            target.addComponent(feedback);
        }
    });
    containAptPlongeur1.setVisible(false);
    containAptPlongeur1.setOutputMarkupId(true);
    containAptPlongeur1.setOutputMarkupPlaceholderTag(true);
    add(containAptPlongeur1);

    add(new IndicatingAjaxLink("modifierPlongeur1") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getPlongeur1() == null) {
                error("Le plongeur1 n'est pas saisi ");
            } else {
                containAptPlongeur1.setVisible(!containAptPlongeur1.isVisible());
                target.addComponent(labelPlongeur1);
                target.addComponent(containAptPlongeur1);
                target.addComponent(ddc);
            }
        }
    });
    add(new IndicatingAjaxLink("annulerPlongeur1") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getPlongeur1() == null) {
                error("Le Plongeur1 n'est pas saisi ");
            } else {
                addEntreeListPlongeursAInscrire(getPlongeur1());
                setPlongeur1(null);
                setSelectedPlongeur(null);
                target.addComponent(labelPlongeur1);
                target.addComponent(ddc);
            }
        }
    });
    //--------------PLONGEUR2----------------------- 
    final Label labelPlongeur2 = new Label("nomPlongeur2",
            new PropertyModel(modelPalanque, "nomCompletPlongeur2"));
    labelPlongeur2.setOutputMarkupId(true);
    add(labelPlongeur2);
    add(new IndicatingAjaxLink("validePlongeur2") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getPlongeur2() != null) {
                //on a dja un Plongeur2 de saisi, donc erreur et on fait rien
                error("Le Plongeur2  dj t saisi : " + getPlongeur2().getValue()
                        + " Impossible d'en saisir un autre");
            } else if (null == getSelectedPlongeur()) {
                error("Vous devez d'abord slectionner un plongeur");
            } else {
                setPlongeur2(getSelectedPlongeur());
                suppEntreeListPlongeursAInscrire(getPlongeur2());
                setSelectedPlongeur(null);
                target.addComponent(labelPlongeur2);
                target.addComponent(ddc);
            }
        }
    });
    final MarkupContainer containAptPlongeur2 = new WebMarkupContainer("containPlongeur2");
    Label labelAptPlongeur2 = new Label("labelAptPlongeur2", Model.of(new String("aptitude")));
    labelAptPlongeur2.setOutputMarkupId(true);
    containAptPlongeur2.add(labelAptPlongeur2);
    TextField<String> valueAptPlongeur2 = new TextField<String>("aptitudePlongeur");
    valueAptPlongeur2.setOutputMarkupId(true);
    containAptPlongeur2.add(valueAptPlongeur2);
    containAptPlongeur2.add(new AjaxButton("validAptPlongeur2") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            Palanque pp = (Palanque) form.getModelObject();
            if (null != pp.getAptitudePlongeur()) {
                ChoiceRenderPlongeur oldPlongeur2 = getSelectedPlongeur();
                Adherent adh = ResaSession.get().getAdherentService()
                        .rechercherAdherentParIdentifiantTous(getPlongeur2().getKey());
                String key = adh.getNumeroLicense();
                String value = adh.getNom() + "  " + adh.getPrenom() + "  " + pp.getAptitudePlongeur();
                ChoiceRenderPlongeur newPlongeur2 = new ChoiceRenderPlongeur(key, value);
                //on met le plongeur modifi
                setPlongeur2(newPlongeur2);
                //On supprime "ancien" et "nouveau" plongeur des plongeurs  inscrire
                listPlongeursAInscrireForpalanque.remove(oldPlongeur2);
                listPlongeursAInscrireForpalanque.remove(newPlongeur2);
                //On redonne le choix dans la selection du plongeur
                setSelectedPlongeur(null);
                // on remet aptitudePlongeur  null pour la prochaine fois
                pp.setAptitudePlongeur(null);
            }
            containAptPlongeur2.setVisible(!containAptPlongeur2.isVisible());
            target.addComponent(labelPlongeur2);
            target.addComponent(containAptPlongeur2);
            target.addComponent(ddc);
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            target.addComponent(feedback);
        }
    });
    containAptPlongeur2.setVisible(false);
    containAptPlongeur2.setOutputMarkupId(true);
    containAptPlongeur2.setOutputMarkupPlaceholderTag(true);
    add(containAptPlongeur2);

    add(new IndicatingAjaxLink("modifierPlongeur2") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getPlongeur2() == null) {
                error("Le plongeur2 n'est pas saisi ");
            } else {
                containAptPlongeur2.setVisible(!containAptPlongeur2.isVisible());
                target.addComponent(labelPlongeur2);
                target.addComponent(containAptPlongeur2);
                target.addComponent(ddc);
            }
        }
    });
    add(new IndicatingAjaxLink("annulerPlongeur2") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getPlongeur2() == null) {
                error("Le Plongeur2 n'est pas saisi ");
            } else {
                addEntreeListPlongeursAInscrire(getPlongeur2());
                setPlongeur2(null);
                setSelectedPlongeur(null);
                target.addComponent(labelPlongeur2);
                target.addComponent(ddc);
            }
        }
    });
    //--------------PLONGEUR3----------------------- 
    final Label labelPlongeur3 = new Label("nomPlongeur3",
            new PropertyModel(modelPalanque, "nomCompletPlongeur3"));
    labelPlongeur3.setOutputMarkupId(true);
    add(labelPlongeur3);
    add(new IndicatingAjaxLink("validePlongeur3") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getPlongeur3() != null) {
                //on a dja un Plongeur3 de saisi, donc erreur et on fait rien
                error("Le Plongeur3  dj t saisi : " + getPlongeur3().getValue()
                        + " Impossible d'en saisir un autre");
            } else if (null == getSelectedPlongeur()) {
                error("Vous devez d'abord slectionner un plongeur");
            } else {
                setPlongeur3(getSelectedPlongeur());
                suppEntreeListPlongeursAInscrire(getPlongeur3());
                setSelectedPlongeur(null);
                target.addComponent(labelPlongeur3);
                target.addComponent(ddc);
            }
        }
    });
    final MarkupContainer containAptPlongeur3 = new WebMarkupContainer("containPlongeur3");
    Label labelAptPlongeur3 = new Label("labelAptPlongeur3", Model.of(new String("aptitude")));
    labelAptPlongeur3.setOutputMarkupId(true);
    containAptPlongeur3.add(labelAptPlongeur3);
    TextField<String> valueAptPlongeur3 = new TextField<String>("aptitudePlongeur");
    valueAptPlongeur3.setOutputMarkupId(true);
    containAptPlongeur3.add(valueAptPlongeur3);
    containAptPlongeur3.add(new AjaxButton("validAptPlongeur3") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            Palanque pp = (Palanque) form.getModelObject();
            if (null != pp.getAptitudePlongeur()) {
                ChoiceRenderPlongeur oldPlongeur3 = getSelectedPlongeur();
                Adherent adh = ResaSession.get().getAdherentService()
                        .rechercherAdherentParIdentifiantTous(getPlongeur3().getKey());
                String key = adh.getNumeroLicense();
                String value = adh.getNom() + "  " + adh.getPrenom() + "  " + pp.getAptitudePlongeur();
                ChoiceRenderPlongeur newPlongeur3 = new ChoiceRenderPlongeur(key, value);
                //on met le plongeur modifi
                setPlongeur3(newPlongeur3);
                //On supprime "ancien" et "nouveau" plongeur des plongeurs  inscrire
                listPlongeursAInscrireForpalanque.remove(oldPlongeur3);
                listPlongeursAInscrireForpalanque.remove(newPlongeur3);
                //On redonne le choix dans la selection du plongeur
                setSelectedPlongeur(null);
                // on remet aptitudePlongeur  null pour la prochaine fois
                pp.setAptitudePlongeur(null);
            }
            containAptPlongeur3.setVisible(!containAptPlongeur3.isVisible());
            target.addComponent(labelPlongeur3);
            target.addComponent(containAptPlongeur3);
            target.addComponent(ddc);
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            target.addComponent(feedback);
        }
    });
    containAptPlongeur3.setVisible(false);
    containAptPlongeur3.setOutputMarkupId(true);
    containAptPlongeur3.setOutputMarkupPlaceholderTag(true);
    add(containAptPlongeur3);

    add(new IndicatingAjaxLink("modifierPlongeur3") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getPlongeur3() == null) {
                error("Le plongeur3 n'est pas saisi ");
            } else {
                containAptPlongeur3.setVisible(!containAptPlongeur3.isVisible());
                target.addComponent(labelPlongeur3);
                target.addComponent(containAptPlongeur3);
                target.addComponent(ddc);
            }
        }
    });
    add(new IndicatingAjaxLink("annulerPlongeur3") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getPlongeur3() == null) {
                error("Le Plongeur3 n'est pas saisi ");
            } else {
                addEntreeListPlongeursAInscrire(getPlongeur3());
                setPlongeur3(null);
                setSelectedPlongeur(null);
                target.addComponent(labelPlongeur3);
                target.addComponent(ddc);
            }
        }
    });
    //--------------PLONGEUR4----------------------- 
    final Label labelPlongeur4 = new Label("nomPlongeur4",
            new PropertyModel(modelPalanque, "nomCompletPlongeur4"));
    labelPlongeur4.setOutputMarkupId(true);
    add(labelPlongeur4);
    add(new IndicatingAjaxLink("validePlongeur4") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getPlongeur4() != null) {
                //on a dja un Plongeur4 de saisi, donc erreur et on fait rien
                error("Le Plongeur4  dj t saisi : " + getPlongeur4().getValue()
                        + " Impossible d'en saisir un autre");
            } else if (null == getSelectedPlongeur()) {
                error("Vous devez d'abord slectionner un plongeur");
            } else {
                setPlongeur4(getSelectedPlongeur());
                suppEntreeListPlongeursAInscrire(getPlongeur4());
                setSelectedPlongeur(null);
                target.addComponent(labelPlongeur4);
                target.addComponent(ddc);
            }
        }
    });
    final MarkupContainer containAptPlongeur4 = new WebMarkupContainer("containPlongeur4");
    Label labelAptPlongeur4 = new Label("labelAptPlongeur4", Model.of(new String("aptitude")));
    labelAptPlongeur4.setOutputMarkupId(true);
    containAptPlongeur4.add(labelAptPlongeur4);
    TextField<String> valueAptPlongeur4 = new TextField<String>("aptitudePlongeur");
    valueAptPlongeur4.setOutputMarkupId(true);
    containAptPlongeur4.add(valueAptPlongeur4);
    containAptPlongeur4.add(new AjaxButton("validAptPlongeur4") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            Palanque pp = (Palanque) form.getModelObject();
            if (null != pp.getAptitudePlongeur()) {
                ChoiceRenderPlongeur oldPlongeur4 = getSelectedPlongeur();
                Adherent adh = ResaSession.get().getAdherentService()
                        .rechercherAdherentParIdentifiantTous(getPlongeur4().getKey());
                String key = adh.getNumeroLicense();
                String value = adh.getNom() + "  " + adh.getPrenom() + "  " + pp.getAptitudePlongeur();
                ChoiceRenderPlongeur newPlongeur4 = new ChoiceRenderPlongeur(key, value);
                //on met le plongeur modifi comme guide
                setPlongeur4(newPlongeur4);
                //On supprime "ancien" et "nouveau" plongeur des plongeurs  inscrire
                listPlongeursAInscrireForpalanque.remove(oldPlongeur4);
                listPlongeursAInscrireForpalanque.remove(newPlongeur4);
                //On redonne le choix dans la selection du plongeur
                setSelectedPlongeur(null);
                // on remet aptitudePlongeur  null pour la prochaine fois
                pp.setAptitudePlongeur(null);
            }
            containAptPlongeur4.setVisible(!containAptPlongeur4.isVisible());
            target.addComponent(labelPlongeur4);
            target.addComponent(containAptPlongeur4);
            target.addComponent(ddc);
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            target.addComponent(feedback);
        }
    });
    containAptPlongeur4.setVisible(false);
    containAptPlongeur4.setOutputMarkupId(true);
    containAptPlongeur4.setOutputMarkupPlaceholderTag(true);
    add(containAptPlongeur4);
    add(new IndicatingAjaxLink("modifierPlongeur4") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getPlongeur4() == null) {
                error("Le plongeur4 n'est pas saisi ");
            } else {
                containAptPlongeur4.setVisible(!containAptPlongeur4.isVisible());
                target.addComponent(labelPlongeur4);
                target.addComponent(containAptPlongeur4);
                target.addComponent(ddc);
            }
        }
    });

    add(new IndicatingAjaxLink("annulerPlongeur4") {
        @Override
        public void onClick(AjaxRequestTarget target) {
            target.addComponent(feedback);
            if (getPlongeur4() == null) {
                error("Le Plongeur4 n'est pas saisi ");
            } else {
                addEntreeListPlongeursAInscrire(getPlongeur4());
                setPlongeur4(null);
                setSelectedPlongeur(null);
                target.addComponent(labelPlongeur4);
                target.addComponent(ddc);
            }
        }
    });
    //-----------------Profondeur Maxi--------------------------
    TextField pMaxPrevu = new TextField<Integer>("profondeurMaxPrevue", Integer.class);
    pMaxPrevu.add(new MaximumValidator<Integer>(60));
    pMaxPrevu.add(new MinimumValidator<Integer>(0));
    add(pMaxPrevu);
    TextField pMaxRea = new TextField<Integer>("profondeurMaxRea", Integer.class);
    pMaxRea.add(new MaximumValidator<Integer>(60));
    pMaxRea.add(new MinimumValidator<Integer>(0));
    add(pMaxRea);
    //-----------------Dure de la plonge--------------------------
    TextField dureePrevu = new TextField<Integer>("dureeTotalePrevue", Integer.class);
    add(dureePrevu);
    TextField dureeRea = new TextField<Integer>("dureeTotaleRea", Integer.class);
    add(dureeRea);
    //-----------------Paliers--------------------------
    TextField palier3 = new TextField<Integer>("palier3m", Integer.class);
    palier3.add(new MinimumValidator<Integer>(0));
    add(palier3);
    TextField palier6 = new TextField<Integer>("palier6m", Integer.class);
    palier6.add(new MinimumValidator<Integer>(0));
    add(palier6);
    TextField palier9 = new TextField<Integer>("palier9m", Integer.class);
    palier9.add(new MinimumValidator<Integer>(0));
    add(palier9);
    TextField palierP = new TextField<Integer>("palierProfond", Integer.class);
    palierP.add(new MinimumValidator<Integer>(0));
    add(palierP);
    //-----------------Heure de sortie
    TextField heureSortie = new TextField<Integer>("hhSortie", Integer.class);
    heureSortie.add(new MaximumValidator<Integer>(24));
    heureSortie.add(new MinimumValidator<Integer>(0));
    add(heureSortie);
    TextField minuteSortie = new TextField<Integer>("mnSortie", Integer.class);
    minuteSortie.add(new MaximumValidator<Integer>(60));
    minuteSortie.add(new MinimumValidator<Integer>(0));
    add(minuteSortie);
    //------------------- Validation de la palanquee
    AjaxButton b_validerPalanque = new AjaxButton("validerPalanque") {
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            Palanque palanqueForm = (Palanque) form.getModelObject();
            boolean formatAptitude = true;
            if (palanqueForm.getListPlongeursPalanque().size() > 0) {
                for (ChoiceRenderPlongeur crp : palanqueForm.getListPlongeursPalanque()) {
                    if (crp.getValue().contains("/")) {
                        formatAptitude = false;
                    } else {
                        error("Vrifier les aptitudes des plongeurs");
                    }
                }
            }
            if (formatAptitude) {
                if (palanqueForm.getListPlongeursPalanque().size() > 0) {
                    //init de l'heure de sortie avec les champs
                    palanqueForm.setHeureSortie(palanqueForm.getHhSortie(), palanqueForm.getMnSortie());
                    //suppression des plongeurs de la palanque dans les plongeurs  inscrire
                    suppPlongeursAInscrire(palanqueForm.getListPlongeursPalanque());

                    fs.getPalanques().remove(palanque);
                    fs.getPalanques().add(palanqueForm);

                    if (palanqueForm.getIsBapteme()) {
                        // c'est un Bapteme on remet le guide dans la liste des plongeurs  inscrire
                        // pour pouvoir le re-inscrire sur une autre palanque
                        if (!listPlongeursAInscrireForpalanque.contains(getGuide())) {
                            listPlongeursAInscrireForpalanque.add(getGuide());
                        }
                    }
                    //mise  jour des plongeurs  inscrire en session
                    ResaSession.get().setListPlongeursAInscrire(listPlongeursAInscrireForpalanque);
                    //Retour sur la feuille de saisie pour d'autres palanques eventuelles
                    setResponsePage(new SaisieFicheSecurite(origPage, dateMini, dateMaxi));
                } else {
                    error("Cette palanque ne contient aucun plongeur !");
                }
            }
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            target.addComponent(feedback);
        }
    };

    b_validerPalanque.setOutputMarkupId(true);
    add(b_validerPalanque);

    // bouton retour saisie Fiche de securite en reprennant les sauvegardes
    add(new Link("cancel") {
        @Override
        public void onClick() {
            for (Palanque ps : fs.getPalanques()) {
                if (ps.getNumero() == palanqueSAV.getNumero()) {
                    fs.getPalanques().set(fs.getPalanques().indexOf(ps), palanqueSAV);
                    break;
                }
            }
            ResaSession.get().setListPlongeursAInscrire(plongeursAInscrireSAV);
            setResponsePage(new SaisieFicheSecurite(origPage, dateMini, dateMaxi));
        }
    });

}

From source file:com.doculibre.constellio.wicket.panels.admin.connectorTypeMeta.ConnectorTypeMetaMappingListPanel.java

License:Open Source License

private IColumn getAjaxCheckboxColumn(final String propertyName) {
    return new AbstractColumn(new StringResourceModel(propertyName, this, null)) {
        @Override//from   w  w w.  ja  va 2s . c  o  m
        public void populateItem(Item cellItem, String componentId, IModel rowModel) {
            ConnectorTypeMetaMapping metaMapping = (ConnectorTypeMetaMapping) rowModel.getObject();

            final ReloadableEntityModel<ConnectorTypeMetaMapping> entityModel = new ReloadableEntityModel<ConnectorTypeMetaMapping>(
                    metaMapping);
            cellItem.setModel(new CompoundPropertyModel(entityModel));

            cellItem.add(new CheckBoxHolder(componentId) {
                @Override
                protected WebMarkupContainer newInput(String id) {
                    return new AjaxCheckBox(id, new PropertyModel(entityModel, propertyName)) {
                        @Override
                        protected void onUpdate(AjaxRequestTarget target) {
                            ConnectorTypeMetaMapping metaMapping = entityModel.getObject();
                            updateMetaMapping(metaMapping, target);
                        }

                        @Override
                        public void detachModels() {
                            entityModel.detach();
                            super.detachModels();
                        }
                    };
                }
            });
        }
    };
}

From source file:com.doculibre.constellio.wicket.panels.admin.indexField.IndexFieldListPanel.java

License:Open Source License

private IColumn getAjaxCheckboxColumn(final String propertyName,
        final AjaxOnUpdateHandler ajaxOnUpdateHandler) {
    return new AbstractColumn(new StringResourceModel(propertyName, this, null)) {
        @Override//from   ww w.  java 2  s  .c  o m
        public void populateItem(Item cellItem, String componentId, IModel rowModel) {
            IndexField indexField = (IndexField) rowModel.getObject();

            final ReloadableEntityModel<IndexField> entityModel = new ReloadableEntityModel<IndexField>(
                    indexField);
            cellItem.setModel(new CompoundPropertyModel(entityModel));

            cellItem.add(new CheckBoxHolder(componentId) {
                @Override
                protected WebMarkupContainer newInput(String id) {
                    return new AjaxCheckBox(id, new PropertyModel(entityModel, propertyName)) {
                        @Override
                        protected void onUpdate(AjaxRequestTarget target) {
                            ajaxOnUpdateHandler.onUpdate(entityModel, target);
                        }

                        @Override
                        public void detachModels() {
                            entityModel.detach();
                            super.detachModels();
                        }

                        @Override
                        public boolean isEnabled() {
                            IndexField indexField = entityModel.getObject();
                            return super.isEnabled() && !indexField.isInternalField();
                        }
                    };
                }
            });
        }
    };
}

From source file:com.doculibre.constellio.wicket.panels.admin.searchInterface.generalOptions.advancedSearch.AdvancedSearchOptionsPanel.java

License:Open Source License

private AjaxCheckBox getEnabledCheckbox() {
    AjaxCheckBox enabledCheckbox = new AjaxCheckBox("enabled",
            new PropertyModel(collectionModel, "advancedSearchEnabled")) {

        @Override//from   w  ww . j av  a  2 s.c  o m
        protected void onUpdate(AjaxRequestTarget target) {
            EntityManager entityManager = ConstellioPersistenceContext.getCurrentEntityManager();
            if (!entityManager.getTransaction().isActive()) {
                entityManager.getTransaction().begin();
            }
            RecordCollection collection = collectionModel.getObject();
            RecordCollectionServices recordCollectionServices = ConstellioSpringUtils
                    .getRecordCollectionServices();
            recordCollectionServices.merge(collection);
            entityManager.getTransaction().commit();
            target.addComponent(AdvancedSearchOptionsPanel.this);
        }

    };
    return enabledCheckbox;
}

From source file:com.doculibre.constellio.wicket.panels.admin.searchInterface.generalOptions.advancedSearch.AdvancedSearchOptionsPanel.java

License:Open Source License

private ListView getEnabledRulesListView() {

    AutocompleteServices autocompleteServices = ConstellioSpringUtils.getAutocompleteServices();
    final List<String> autoCompleteSupportedFields = new ArrayList<String>();
    for (IndexField indexField : autocompleteServices.getAutoCompleteIndexFields(collectionModel.getObject())) {
        autoCompleteSupportedFields.add(indexField.getName());
    }//from  w w  w .j a v a  2 s . c  o  m
    //      IModel indexFieldsModel = new LoadableDetachableModel() {
    //
    //         @Override
    //         protected Object load() {
    //            RecordCollection collection = collectionModel.getObject();
    //            List<IndexField> indexFields = new ArrayList<IndexField>();
    //            indexFields.addAll(collection.getIndexFields());
    //            Collections.sort(indexFields, new Comparator<IndexField>() {
    //
    //               @Override
    //               public int compare(IndexField o1, IndexField o2) {
    //                  return o1.getName().toLowerCase()
    //                        .compareTo(o2.getName().toLowerCase());
    //               }
    //            });
    //            return indexFields;
    //         }
    //      };
    IModel indexFieldsModel = new CollectionIndexFieldsModel(collectionModel);

    ListView enabledRules = new ListView("enabledRules", indexFieldsModel) {

        @Override
        protected void populateItem(ListItem item) {
            IndexField indexField = (IndexField) item.getModelObject();
            final String indexFieldName = indexField.getName();
            AdvancedSearchEnabledRule rule = null;

            for (AdvancedSearchEnabledRule ruleIt : collectionModel.getObject()
                    .getAdvancedSearchEnabledRules()) {
                if (ruleIt.getIndexField().equals(indexField)) {
                    rule = ruleIt;
                    break;
                }
            }
            final boolean enabled = rule != null;

            item.add(new Label("indexFieldName", indexFieldName));

            AjaxCheckBox enabledCheckBox = new AjaxCheckBox("enabled", new Model(enabled)) {

                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    EntityManager entityManager = ConstellioPersistenceContext.getCurrentEntityManager();
                    if (!entityManager.getTransaction().isActive()) {
                        entityManager.getTransaction().begin();
                    }

                    RecordCollection collection = collectionModel.getObject();

                    AdvancedSearchEnabledRule rule = null;
                    for (AdvancedSearchEnabledRule ruleIt : collection.getAdvancedSearchEnabledRules()) {
                        if (ruleIt.getIndexField().getName().equals(indexFieldName)) {
                            rule = ruleIt;
                            break;
                        }
                    }

                    if (rule == null) {
                        AdvancedSearchEnabledRule enabledRule = new AdvancedSearchEnabledRule();
                        enabledRule.setIndexField(collection.getIndexField(indexFieldName));
                        enabledRule.setRecordCollection(collection);
                        collection.getAdvancedSearchEnabledRules().add(enabledRule);

                    } else {
                        collection.getAdvancedSearchEnabledRules().remove(rule);
                    }
                    RecordCollectionServices recordCollectionServices = ConstellioSpringUtils
                            .getRecordCollectionServices();
                    recordCollectionServices.merge(collection);

                    entityManager.getTransaction().commit();
                    target.addComponent(AdvancedSearchOptionsPanel.this);
                }
            };
            item.add(enabledCheckBox);

            AjaxCheckBox autocompleteCheckBox = new AjaxCheckBox("autocomplete",
                    new Model(indexField.isAutocompleted())) {

                @Override
                protected void onUpdate(AjaxRequestTarget target) {

                    RecordCollection collection = collectionModel.getObject();
                    if (indexFieldName != null) {
                        EntityManager entityManager = ConstellioPersistenceContext.getCurrentEntityManager();
                        if (!entityManager.getTransaction().isActive()) {
                            entityManager.getTransaction().begin();
                        }
                        IndexFieldServices indexFieldServices = ConstellioSpringUtils.getIndexFieldServices();
                        AutocompleteServices autocompleteServices = ConstellioSpringUtils
                                .getAutocompleteServices();
                        IndexField indexField = indexFieldServices.get(indexFieldName, collection);
                        if (indexField.isAutocompleted()) {
                            autocompleteServices.removeAutoCompleteFromField(indexField);
                        } else {
                            autocompleteServices.setAutoCompleteToField(indexField);
                        }
                        //                     RecordCollectionServices recordCollectionServices = ConstellioSpringUtils
                        //                           .getRecordCollectionServices();
                        //                     recordCollectionServices.makePersistent(indexField.getRecordCollection(), true);
                        indexFieldServices.makePersistent(indexField, true);
                        entityManager.getTransaction().commit();
                    }

                    target.addComponent(AdvancedSearchOptionsPanel.this);
                }
            };

            autocompleteCheckBox.setEnabled(enabled);
            item.add(autocompleteCheckBox);

        }

        @Override
        public boolean isVisible() {
            RecordCollection collection = collectionModel.getObject();
            return collection.isAdvancedSearchEnabled();
        }

    };
    return enabledRules;
}

From source file:com.doculibre.constellio.wicket.panels.admin.solrConfig.SolrConfigPanel.java

License:Open Source License

private ListView getPropertiesListView(List<PropertyRow> propertyRows) {
    return new ListView("properties", propertyRows) {

        @Override//from   w w w. ja  v a2 s.c  o  m
        protected void populateItem(final ListItem item) {

            final PropertyRow propertyRow = (PropertyRow) item.getModelObject();
            item.setOutputMarkupId(true);
            item.add(new Label("property",
                    new StringResourceModel(propertyRow.getMessageKey(), SolrConfigPanel.this, null)));
            IModel stateModel = new LoadableDetachableModel() {

                protected Object load() {
                    SolrConfig config = solrConfigModel.getObject();
                    boolean isSet = PropertyResolver.getValue(propertyRow.getProperty(), config) != null;
                    return new StringResourceModel(isSet ? "yes" : "no", SolrConfigPanel.this, null)
                            .getObject();
                }

            };
            item.add(new Label("state", stateModel));
            AjaxLink defaultValueLink = new AjaxLink("defaultValue") {

                @Override
                public void onClick(AjaxRequestTarget target) {
                    SolrConfig config = solrConfigModel.getObject();
                    PropertyResolver.setValue(propertyRow.getProperty(), config, null, null);
                    target.addComponent(item);
                    save();
                }

                @Override
                public boolean isVisible() {
                    SolrConfig config = solrConfigModel.getObject();
                    return PropertyResolver.getValue(propertyRow.getProperty(), config) != null;
                }
            };
            item.add(defaultValueLink);
            IModel titleLabelModel = new LoadableDetachableModel() {

                @Override
                protected Object load() {
                    boolean isServerConfig = solrConfigModel.getObject().getRecordCollection() == null;
                    String resourceKey = isServerConfig ? "defaultValue" : "defaultServerValue";
                    return new StringResourceModel(resourceKey, SolrConfigPanel.this, null).getObject();
                }
            };
            defaultValueLink.add(new Label("label", titleLabelModel));

            if (propertyRow.isModalEdit()) {
                item.add(new ModalImgLinkHolder("editComponent") {
                    @Override
                    public WebMarkupContainer newLink(String id) {
                        return new AjaxLink(id) {
                            @Override
                            public void onClick(AjaxRequestTarget target) {
                                ModalWindow editModal = getModalWindow();
                                editModal.setInitialHeight(MODAL_HEIGHT);
                                editModal.setInitialWidth(MODAL_WIDTH);
                                String editMsg = getLocalizer().getString("edit", SolrConfigPanel.this);
                                editModal.setTitle(editMsg);

                                WebMarkupContainer editContent = propertyRow
                                        .getEditLinkPanel(editModal.getContentId());
                                editModal.setContent(editContent);
                                editModal.show(target);
                                target.addComponent(item);
                            }
                        };
                    }

                    @Override
                    protected Component newImg(String id) {
                        return new NonCachingImage(id,
                                new ResourceReference(BaseConstellioPage.class, "images/ico_crayon.png"));
                    }
                });
            } else if (propertyRow.getType().equals(Boolean.class)) {
                final IModel valueModel = propertyRow.createModel();
                item.add(new CheckBoxHolder("editComponent") {

                    @Override
                    protected WebMarkupContainer newInput(String id) {
                        return new AjaxCheckBox(id, valueModel) {

                            @Override
                            protected void onUpdate(AjaxRequestTarget target) {
                                save();
                                target.addComponent(item);
                            }

                            @Override
                            public void detachModels() {
                                super.detachModels();
                                valueModel.detach();
                            }

                        };
                    }
                });
            } else {
                final IModel valueModel = propertyRow.createModel();
                item.add(new AjaxEditableLabel("editComponent", valueModel) {

                    @Override
                    protected void onSubmit(AjaxRequestTarget target) {
                        super.onSubmit(target);
                        save();
                        target.addComponent(item);
                    }

                    @Override
                    public void detachModels() {
                        super.detachModels();
                        valueModel.detach();
                    }

                });
            }

        }

    };
}

From source file:com.doculibre.constellio.wicket.panels.results.SearchResultsPanel.java

License:Open Source License

public SearchResultsPanel(String id, final SearchResultsDataProvider dataProvider) {
    super(id);//w w w  .  j  a va  2  s.  c  o m
    setOutputMarkupId(true);

    List<TransfertSearchResultsPlugin> plugins = PluginFactory.getPlugins(TransfertSearchResultsPlugin.class);

    this.transfertLink = new AjaxLink("transfertLink") {

        @Override
        public void onClick(AjaxRequestTarget target) {
            transfertPanel.setVisible(true);
            transfertLink.setVisible(false);
            transfertActive = true;
            target.addComponent(SearchResultsPanel.this);
        }
    };
    transfertLink.setVisible(!plugins.isEmpty() && ConstellioSession.get().getUser() != null
            && ConstellioSpringUtils.getIntelliGIDServiceInfo() != null);
    add(transfertLink);

    this.transfertPanel = new WebMarkupContainer("transfertPanel");
    transfertPanel.setOutputMarkupId(true);
    transfertPanel.setVisible(false);
    add(transfertPanel);

    IModel allNoneModel = new Model() {

        @Override
        public Object getObject() {
            return allNone;
        }

        @Override
        public void setObject(Object object) {
            allNone = (Boolean) object;
            if (allNone) {
                Iterator it = dataProvider.iterator(0, dataProvider.size());
                while (it.hasNext()) {
                    SolrDocument document = (SolrDocument) it.next();
                    dataProvider.getSimpleSearch().getSelectedResults()
                            .add(new Long(document.getFieldValue(IndexField.RECORD_ID_FIELD).toString()));
                }
            } else {
                dataProvider.getSimpleSearch().getSelectedResults().clear();
            }
        }

    };

    allNoneCheckbox = new AjaxCheckBox("allNoneCheckbox", allNoneModel) {

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            target.addComponent(SearchResultsPanel.this);
        }
    };
    allNoneCheckbox.setOutputMarkupId(true);
    transfertPanel.add(allNoneCheckbox);

    errorMessageLabel = new Label("errorMessageLabel", new PropertyModel(this, "errorMessage"));
    errorMessageLabel.setOutputMarkupId(true);
    transfertPanel.add(errorMessageLabel);

    transfertPanel.add(new ListView("transfertButtons", plugins) {

        @Override
        protected void populateItem(ListItem item) {
            final TransfertSearchResultsPlugin plugin = ((TransfertSearchResultsPlugin) item.getModelObject());
            AjaxLink link = new AjaxLink("launchTransfertLink") {

                @Override
                public void onClick(AjaxRequestTarget target) {
                    errorMessage = null;
                    List<Record> records = new ArrayList<Record>();
                    SimpleSearch search = dataProvider.getSimpleSearch();
                    RecordCollection collection = ConstellioSpringUtils.getRecordCollectionServices()
                            .get(search.getCollectionName());
                    for (Long recordId : search.getSelectedResults()) {
                        records.add(ConstellioSpringUtils.getRecordServices().get(recordId, collection));
                    }

                    if (!records.isEmpty()) {
                        doTransfert(plugin, target, records);
                    }

                }

                private void doTransfert(final TransfertSearchResultsPlugin plugin, AjaxRequestTarget target,
                        List<Record> records) {
                    List<Record> transferedRecords = new ArrayList<Record>();
                    List<String> ids = new ArrayList<String>();
                    for (Record record : records) {
                        try {
                            ids.add(plugin.transfert(record));
                            transferedRecords.add(record);
                        } catch (Throwable t) {
                            t.printStackTrace();
                            errorMessage = t.getMessage();
                            break;
                        }
                    }
                    if (errorMessage != null) {
                        try {
                            for (int i = 0; i < ids.size(); i++) {
                                plugin.cancel(transferedRecords.get(i), ids.get(i));
                            }
                        } catch (Throwable t) {
                            t.printStackTrace();
                        }
                    } else {
                        plugin.afterTransfert(transferedRecords, ids);
                    }
                    target.addComponent(errorMessageLabel);
                }
            };
            item.add(link);
            link.add(new Label("launchTransfertLabel", plugin.getLabelText()));
        }
    });

    this.dataView = new DataView(DATA_VIEW_ID, dataProvider, dataProvider.getResultsPerPage()) {
        @Override
        protected void populateItem(Item item) {
            SolrDocument doc = (SolrDocument) item.getModelObject();
            final Long id;
            RecordServices recordServices = ConstellioSpringUtils.getRecordServices();

            if (doc.getFieldValue(IndexField.RECORD_ID_FIELD) != null) {
                Record record = recordServices.get(doc);
                id = record.getId();
                if (record != null) {
                    ConnectorInstance connectorInstance = record.getConnectorInstance();

                    final ReloadableEntityModel<ConnectorInstance> connectorInstanceModel = new ReloadableEntityModel<ConnectorInstance>(
                            connectorInstance);
                    ConnectorType connectorType = connectorInstance.getConnectorType();
                    ResourceReference imageResourceReference = new ResourceReference(
                            "connectorType_" + connectorType.getId()) {
                        @Override
                        protected Resource newResource() {
                            ConnectorInstance connectorInstance = (ConnectorInstance) connectorInstanceModel
                                    .getObject();
                            ConnectorType connectorType = connectorInstance.getConnectorType();
                            Resource imageResource;
                            byte[] iconBytes = connectorType.getIconFileContent();
                            // Convert resource path to absolute path relative to base package
                            if (iconBytes != null) {
                                imageResource = new ByteArrayResource("image", iconBytes);
                            } else {
                                imageResource = PackageResource.get(ConnectorListPanel.class,
                                        "default_icon.gif");
                            }
                            return imageResource;
                        }
                    };

                    item.add(new NonCachingImage("icon", imageResourceReference) {
                        @Override
                        public void detachModels() {
                            connectorInstanceModel.detach();
                            super.detachModels();
                        }

                        @Override
                        public boolean isVisible() {
                            boolean visible = super.isVisible();
                            if (visible) {
                                SearchInterfaceConfigServices searchInterfaceConfigServices = ConstellioSpringUtils
                                        .getSearchInterfaceConfigServices();
                                SearchInterfaceConfig searchInterfaceConfig = searchInterfaceConfigServices
                                        .get();
                                visible = searchInterfaceConfig.isUseIconsInSearchResults();
                            }
                            return visible;
                        }
                    });
                } else {
                    item.setVisible(false);
                }
            } else {
                item.add(new WebMarkupContainer("icon").setVisible(false));
                id = null;
            }

            item.add(getSearchResultPanel("searchResultPanel", item, dataProvider));
            item.add(new SearchResultTaggingPanel("taggingPanel", doc, dataProvider));

            newRecordCheckbox(dataProvider, item, id);
        }

        private void newRecordCheckbox(final SearchResultsDataProvider dataProvider, Item item, final Long id) {
            IModel isChecked = new Model() {
                @Override
                public Object getObject() {
                    return id != null && dataProvider.getSimpleSearch().getSelectedResults().contains(id);
                }

                @Override
                public void setObject(Object object) {
                    if (id != null) {
                        Boolean state = (Boolean) object;
                        dataProvider.getSimpleSearch().getSelectedResults().remove(id);
                        if (state) {
                            dataProvider.getSimpleSearch().getSelectedResults().add(id);
                        } else {
                            allNone = false;
                        }
                    }
                }
            };

            item.add(new AjaxCheckBox("checkedResults", isChecked) {

                @Override
                protected void onUpdate(AjaxRequestTarget target) {
                    target.addComponent(allNoneCheckbox);
                }

                @Override
                public boolean isVisible() {
                    return transfertActive;
                }

            });
        }
    };
    add(dataView);
    dataView.setOutputMarkupId(true);
    int page = dataProvider.getSimpleSearch().getPage();
    int pageCount = dataView.getPageCount();
    dataView.setCurrentPage(page == -1 ? pageCount - 1 : page);

    ConstellioPagingNavigator pagingNavigator = new ConstellioPagingNavigator("resultsPN", dataView);
    add(pagingNavigator);

    add(new WebMarkupContainer("noResultsMessage") {
        @Override
        public boolean isVisible() {
            return dataProvider.size() == 0;
        }
    });
}

From source file:com.evolveum.midpoint.gui.api.component.form.CheckBoxPanel.java

License:Apache License

public CheckBoxPanel(String id, IModel<Boolean> checkboxModel, final IModel<Boolean> visibilityModel,
        IModel<String> labelModel, IModel<String> tooltipModel) {
    super(id);/*from   w ww .j  a  v  a2 s. c  om*/

    WebMarkupContainer container = new WebMarkupContainer(ID_CONTAINER);
    add(container);

    AjaxCheckBox check = new AjaxCheckBox(ID_CHECK, checkboxModel) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            CheckBoxPanel.this.onUpdate(target);
        }

        @Override
        protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
            CheckBoxPanel.this.updateAjaxAttributes(attributes);
        }
    };
    check.setOutputMarkupId(true);
    if (visibilityModel != null) {
        check.add(new VisibleEnableBehaviour() {
            private static final long serialVersionUID = 1L;

            @Override
            public boolean isEnabled() {
                return visibilityModel.getObject();
            }
        });
    }
    container.add(check);

    Label label = new Label(ID_LABEL, labelModel);
    label.setRenderBodyOnly(true);
    container.add(label);

    if (tooltipModel != null) {
        container.add(new AttributeModifier("title", tooltipModel));
    }
}

From source file:com.evolveum.midpoint.web.component.assignment.AssignmentEditorPanel.java

License:Apache License

private void initPanelLayout() {
    WebMarkupContainer headerRow = new WebMarkupContainer(ID_HEADER_ROW);
    headerRow.add(AttributeModifier.append("class", createHeaderClassModel(getModel())));
    headerRow.setOutputMarkupId(true);//from w  w w.ja v a2  s.c om
    add(headerRow);

    AjaxCheckBox selected = new AjaxCheckBox(ID_SELECTED,
            new PropertyModel<Boolean>(getModel(), AssignmentEditorDto.F_SELECTED)) {

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            //do we want to update something?
        }
    };
    headerRow.add(selected);

    WebMarkupContainer typeImage = new WebMarkupContainer(ID_TYPE_IMAGE);
    typeImage.add(AttributeModifier.replace("class", createImageTypeModel(
            new PropertyModel<AssignmentEditorDtoType>(getModel(), AssignmentEditorDto.F_TYPE))));
    headerRow.add(typeImage);

    AjaxLink name = new AjaxLink(ID_NAME) {

        @Override
        public void onClick(AjaxRequestTarget target) {
            nameClickPerformed(target);
        }
    };
    headerRow.add(name);

    Label nameLabel = new Label(ID_NAME_LABEL,
            new PropertyModel<String>(getModel(), AssignmentEditorDto.F_NAME));
    name.add(nameLabel);

    Label activation = new Label(ID_ACTIVATION, createActivationModel());
    headerRow.add(activation);

    WebMarkupContainer main = new WebMarkupContainer(ID_MAIN);
    main.setOutputMarkupId(true);
    add(main);

    WebMarkupContainer body = new WebMarkupContainer(ID_BODY);
    body.add(new VisibleEnableBehaviour() {

        @Override
        public boolean isVisible() {
            AssignmentEditorDto editorDto = AssignmentEditorPanel.this.getModel().getObject();
            return !editorDto.isMinimized();
        }
    });
    main.add(body);

    initBodyLayout(body);
}

From source file:com.evolveum.midpoint.web.component.assignment.AssignmentTablePanel.java

License:Apache License

private void initPanelLayout(IModel<String> labelModel) {
    final WebMarkupContainer assignments = new WebMarkupContainer(ID_ASSIGNMENTS);
    assignments.setOutputMarkupId(true);
    add(assignments);/*w  w  w. j  a  v a 2 s.co  m*/

    Label label = new Label(ID_HEADER, labelModel);
    assignments.add(label);

    InlineMenu assignmentMenu = new InlineMenu(ID_MENU, new Model((Serializable) createAssignmentMenu()));
    assignments.add(assignmentMenu);

    ListView<AssignmentEditorDto> list = new ListView<AssignmentEditorDto>(ID_LIST, assignmentModel) {

        @Override
        protected void populateItem(ListItem<AssignmentEditorDto> item) {
            AssignmentEditorPanel editor = new AssignmentEditorPanel(ID_ROW, item.getModel());
            item.add(editor);
        }
    };
    list.setOutputMarkupId(true);
    assignments.add(list);

    AjaxCheckBox checkAll = new AjaxCheckBox(ID_CHECK_ALL, new Model()) {

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            List<AssignmentEditorDto> assignmentEditors = assignmentModel.getObject();

            for (AssignmentEditorDto dto : assignmentEditors) {
                dto.setSelected(this.getModelObject());
            }

            target.add(assignments);
        }
    };
    assignments.add(checkAll);

    initModalWindows();
}