Author: fdesbois Date: 2010-04-12 17:05:24 +0000 (Mon, 12 Apr 2010) New Revision: 442 Log: - Ano #2242 : Change of observer when editing a contact (not same id compared) - Problem with initialize filter -> add initizalize method in WaoPage called in Layout for global initialization (used for abstract page) Modified: trunk/changelog.txt trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterImpl.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/WaoPage.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/FeedBack.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/Layout.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Administration.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/BoatActivityCalendar.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ExceptionReport.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Index.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowForm.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowHistoric.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SamplingPlan.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Synthesis.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/UserProfile.java Modified: trunk/changelog.txt =================================================================== --- trunk/changelog.txt 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/changelog.txt 2010-04-12 17:05:24 UTC (rev 442) @@ -9,20 +9,22 @@ Evolutions ++++++++++ -- [fdesbois] Evo #2244 : Ajout infos CNIL dans le pied de page +- [fdesbois] Evo #2244 : Ajout infos CNIL dans le pied de page. - [fdesbois] Evo #2060 : Dans la partie contact des informations privées du - navire, ajouter les champs Adresse (code postal + ville + adresse) et N° SIRET + navire, ajouter les champs Adresse (code postal + ville + adresse) et N° SIRET. - [fdesbois] Evo #2069 : Role admin : Ajouter la visibilité réduite sur les - contacts et le plan d'échantillonnage -- [fdesbois] Evo #2059 : Filtres sur tableau plan échantillonnage + contacts et le plan d'échantillonnage. +- [fdesbois] Evo #2059 : Filtres sur tableau plan échantillonnage. - [fdesbois] Evo #2241 : Revoir chargement des observateurs lorsqu'un - utilisateur (observateur/coordinateur) est connecté + utilisateur (observateur/coordinateur) est connecté. Anomalies +++++++++ +- [fdesbois] Ano #2242 : Changement du nom de l'observateur lors de l'édition + d'une ligne de contact. - [fdesbois] Ano #2245 : Erreur création ligne du plan : le chargement des - colonnes des mois en fonction de la période ne fonctionne pas + colonnes des mois en fonction de la période ne fonctionne pas. Dépendances +++++++++++ @@ -30,6 +32,8 @@ - **Nuiton-utils** 1.2.1 -> 1.2.2 [http://maven-site.nuiton.org/nuiton-utils] - **EUGene** 2.0 -> 2.0.1 [http://maven-site.nuiton.org/eugene] - **ToPIA** 2.3.2.1 -> 2.3.3 [http://maven-site.nuiton.org/topia] +- **mavenpom4labs** 2.0.7 -> 2.1 [http://maven-site.nuiton.org/mavenpom/mavenpom4labs] + TODO 1.1.1 (patch) ------------- Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterImpl.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterImpl.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/bean/SamplingFilterImpl.java 2010-04-12 17:05:24 UTC (rev 442) @@ -49,7 +49,7 @@ * FishingZone {@code main} alias for the query. * * @param query to prepare with fishingZone filters (facadeName, sectorName) - * @param main alias of the fishingZone in the query + * @param sampleRow alias of the fishingZone in the query * @return the query with elements added * @since 1.1.2 */ @@ -74,7 +74,7 @@ * alias to set SampleRow properties. * * @param query to prepare with sampleRow filters - * @param main alias for sampleRow entity in the query + * @param sampleRow alias for sampleRow entity in the query * @return the query with filtered elements added */ @Override @@ -89,7 +89,7 @@ * the query already have the fishingZone. * * @param query to prepare with sampleRow filters - * @param main alias for sampleRow entity in the query + * @param sampleRow alias for sampleRow entity in the query * @param zoneAlias for fishingZone entity in the query (can be null) * @return the query with filtered elements added */ Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/AbstractFilteredPage.java 2010-04-12 17:05:24 UTC (rev 442) @@ -80,7 +80,7 @@ * Mise a jour: $Date$ * par : $Author$ */ -public abstract class AbstractFilteredPage { +public abstract class AbstractFilteredPage implements WaoPage { @Inject private Logger log; @@ -135,15 +135,33 @@ @Persist private boolean programSelect; + /** + * Need to be call in setupRender of the page which inherits this abstract + * class. + */ + @Override + public void initialize() { + // Very very important to do that at beginning + if (!user.isAdmin()) { + if (log.isDebugEnabled()) { + log.debug("Company filtered : " + user.getCompany().getName()); + } + getFilter().setCompany(user.getCompany()); + } + } + + /** * Initialize all select for filters. By default, only facade, sector and * sampleRow selects will be initialized. * * @param companySelect if true, company select will be initialized * @param observerSelect if true, observer select will be initialized + * @param programSelect * @throws WaoException */ - protected void initSelectFilters(boolean companySelect, boolean observerSelect, boolean programSelect) throws WaoException { + protected void initSelectFilters(boolean companySelect, + boolean observerSelect, boolean programSelect) throws WaoException { this.observerSelect = observerSelect; this.programSelect = programSelect; @@ -159,12 +177,13 @@ if (getFilter().getCompany() != null) { companyId = getFilter().getCompany().getTopiaId(); } - } else if (!user.isAdmin()) { - if (log.isDebugEnabled()) { - log.debug("Company filtered : " + user.getCompany()); - } - getFilter().setCompany(user.getCompany()); } +// else if (!user.isAdmin()) { +// if (log.isDebugEnabled()) { +// log.debug("Company filtered : " + user.getCompany()); +// } +// getFilter().setCompany(user.getCompany()); +// } if (observerSelect) { observerSelectModel = null; Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/WaoPage.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/WaoPage.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/base/WaoPage.java 2010-04-12 17:05:24 UTC (rev 442) @@ -34,6 +34,16 @@ */ public interface WaoPage { + /** + * Used to determine if the page has to be displayed (depends on user right) + * + * @return true if the page has to be displayed + */ boolean canDisplay(); + /** + * Used to initialize data in renderer of Layout component + */ + void initialize(); + } Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/FeedBack.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/FeedBack.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/FeedBack.java 2010-04-12 17:05:24 UTC (rev 442) @@ -146,7 +146,6 @@ return reload; } - @Log public void clearErrors() { errorMessages.clear(); reload = false; Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/Layout.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/Layout.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/components/Layout.java 2010-04-12 17:05:24 UTC (rev 442) @@ -104,6 +104,10 @@ contentFeedback.addError("Vous n'êtes pas autorisé à accéder" + " à cette page !"); } + if (logger.isDebugEnabled()) { + logger.debug("Initialize page from Layout"); + } + page.initialize(); } boolean afterRender() { Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Administration.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Administration.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Administration.java 2010-04-12 17:05:24 UTC (rev 442) @@ -73,6 +73,11 @@ return currentUser.isAdmin() && !currentUser.getReadOnly(); } + @Override + public void initialize() { + + } + @Inject private Logger log; Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/BoatActivityCalendar.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/BoatActivityCalendar.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/BoatActivityCalendar.java 2010-04-12 17:05:24 UTC (rev 442) @@ -65,7 +65,12 @@ public boolean canDisplay() { return true; } + + @Override + public void initialize() { + } + @Inject private Logger log; Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Boats.java 2010-04-12 17:05:24 UTC (rev 442) @@ -42,7 +42,6 @@ import fr.ifremer.wao.ui.base.AbstractFilteredPage; import fr.ifremer.wao.ui.data.BusinessUtils; import fr.ifremer.wao.ui.base.GenericSelectModel; -import fr.ifremer.wao.ui.base.WaoPage; import fr.ifremer.wao.ui.components.FeedBack; import fr.ifremer.wao.ui.components.Layout; import fr.ifremer.wao.ui.data.BoatDataSource; @@ -91,7 +90,7 @@ * par : $Author$ */ @IncludeStylesheet("context:css/boats.css") -public class Boats extends AbstractFilteredPage implements WaoPage { +public class Boats extends AbstractFilteredPage { /** * No restriction to display this page. @@ -103,6 +102,10 @@ return true; } + @Override + public void initialize() { + } + @Inject private Logger log; Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Contacts.java 2010-04-12 17:05:24 UTC (rev 442) @@ -41,7 +41,6 @@ import fr.ifremer.wao.ui.data.ContactDataSource; import fr.ifremer.wao.ui.data.BusinessUtils; import fr.ifremer.wao.ui.base.GenericSelectModel; -import fr.ifremer.wao.ui.base.WaoPage; import fr.ifremer.wao.ui.components.Layout; import fr.ifremer.wao.ui.data.ExportStreamResponse; import fr.ifremer.wao.ui.services.ContactModelFactory; @@ -86,7 +85,7 @@ * par : $Author$ */ @IncludeStylesheet("context:css/contacts.css") -public class Contacts extends AbstractFilteredPage implements WaoPage { +public class Contacts extends AbstractFilteredPage { /** * No restriction to display this page. @@ -128,9 +127,9 @@ if (isFiltersVisible()) { initSelectFilters(true, false, true); } - // Initialize fullView to true for amdmin user - if (fullView == null && user.isAdmin()) { - fullView = true; + // Initialize fullView to true for admin user + if (fullView == null) { + fullView = user.isAdmin(); } } @@ -517,18 +516,22 @@ } } + @Log void onSelectedFromEditContact(String contactId) throws WaoException { if (log.isDebugEnabled()) { log.debug("Edit contact : " + contactId); + log.debug("Contact : " + getContacts().get(contactId)); + log.debug("Set observerId : " + getContacts().get(contactId).getObserver()); } contactEdited = getContacts().get(contactId); //prepareContactEdited(contactId); - contactUserId = contactEdited.getObserver().getTopiaId(); + contactUserId = contactEdited.getObserver().getId(); //contactEditedId = contactId; contactSelectedId = contactId; oldComment = contactEdited.getComment(); edited = true; } + @Log void onSelectedFromDeleteContact(String contactId) throws WaoException { if (log.isDebugEnabled()) { log.debug("Delete contact : " + contactId); @@ -537,9 +540,11 @@ deleted = true; } + @Log void onSelectedFromSaveContact(String contactId) throws WaoException { if (log.isDebugEnabled()) { log.debug("Save contact : " + contactId); + log.debug("Observer Id : " + contactUserId); } // ContactEdited is in session, previously set by Edit action // contactEdited.setState(contactState.toString()); Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ExceptionReport.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ExceptionReport.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/ExceptionReport.java 2010-04-12 17:05:24 UTC (rev 442) @@ -54,6 +54,10 @@ return true; } + @Override + public void initialize() { + } + @InjectComponent private Layout layout; Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Index.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Index.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Index.java 2010-04-12 17:05:24 UTC (rev 442) @@ -66,6 +66,10 @@ return true; } + @Override + public void initialize() { + } + @Inject private ServiceNews serviceNews; Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowForm.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowForm.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowForm.java 2010-04-12 17:05:24 UTC (rev 442) @@ -92,6 +92,10 @@ return user.isAdmin() && !user.getReadOnly(); } + @Override + public void initialize() { + } + @Inject private Logger log; Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowHistoric.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowHistoric.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SampleRowHistoric.java 2010-04-12 17:05:24 UTC (rev 442) @@ -67,6 +67,10 @@ return true; } + @Override + public void initialize() { + } + @Inject private Logger log; Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SamplingPlan.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SamplingPlan.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/SamplingPlan.java 2010-04-12 17:05:24 UTC (rev 442) @@ -36,7 +36,6 @@ import fr.ifremer.wao.service.ServiceReferential; import fr.ifremer.wao.service.ServiceSampling; import fr.ifremer.wao.ui.base.AbstractFilteredPage; -import fr.ifremer.wao.ui.base.WaoPage; import fr.ifremer.wao.ui.components.Layout; import fr.ifremer.wao.ui.data.ExportStreamResponse; import java.io.IOException; @@ -46,7 +45,6 @@ import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; -import org.apache.commons.lang.time.DurationFormatUtils; import org.apache.tapestry5.StreamResponse; import org.apache.tapestry5.annotations.IncludeStylesheet; import org.apache.tapestry5.annotations.InjectComponent; @@ -75,7 +73,7 @@ * par : $Author$ */ @IncludeStylesheet("context:css/sampling.css") -public class SamplingPlan extends AbstractFilteredPage implements WaoPage { +public class SamplingPlan extends AbstractFilteredPage { /** * No restriction to display this page. @@ -115,9 +113,6 @@ * Page initialization */ void setupRender() { - if (log.isDebugEnabled()) { - log.debug("Data is null ? : " + (data == null)); - } if (isFiltersVisible()) { // Initialize filters initSelectFilters(true, false, true); Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Synthesis.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Synthesis.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/Synthesis.java 2010-04-12 17:05:24 UTC (rev 442) @@ -75,7 +75,7 @@ * par : $Author$ */ @IncludeStylesheet("context:css/synthesis.css") -public class Synthesis extends AbstractFilteredPage implements WaoPage { +public class Synthesis extends AbstractFilteredPage { /** * No restriction to display this page. Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/UserProfile.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/UserProfile.java 2010-04-12 14:21:11 UTC (rev 441) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/pages/UserProfile.java 2010-04-12 17:05:24 UTC (rev 442) @@ -61,6 +61,10 @@ return true; } + @Override + public void initialize() { + } + @Inject private Logger log;