r480 - in trunk: echobase-services/src/main/java/fr/ifremer/echobase/services echobase-services/src/main/resources/i18n echobase-ui/src/main/webapp/WEB-INF/jsp
Author: tchemit Date: 2012-04-03 16:03:47 +0200 (Tue, 03 Apr 2012) New Revision: 480 Url: http://forge.codelutin.com/repositories/revision/echobase/480 Log: fixes #1051: Les dates lors d'un imports d'une table sont marqu?\195?\169es comme modifi?\195?\169es + utilisation i18n Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DbEditorService.java trunk/echobase-services/src/main/resources/i18n/echobase-services_en_GB.properties trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/modificationLogs.jsp Modified: trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DbEditorService.java =================================================================== --- trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DbEditorService.java 2012-04-03 14:03:20 UTC (rev 479) +++ trunk/echobase-services/src/main/java/fr/ifremer/echobase/services/DbEditorService.java 2012-04-03 14:03:47 UTC (rev 480) @@ -42,6 +42,7 @@ import org.nuiton.topia.framework.TopiaQuery; import org.nuiton.topia.persistence.TopiaDAO; import org.nuiton.topia.persistence.TopiaEntity; +import org.nuiton.topia.persistence.TopiaFilterPagerUtil; import org.nuiton.util.PagerUtil; import org.nuiton.util.beans.BeanMonitor; import org.nuiton.util.beans.PropertyDiff; @@ -51,12 +52,14 @@ import org.nuiton.util.csv.ImportableColumn; import org.nuiton.util.decorator.Decorator; import org.nuiton.util.decorator.JXPathDecorator; -import org.nuiton.web.struts2.FilterPagerUtil; import java.util.Collection; import java.util.List; +import java.util.Locale; import java.util.Map; +import static org.nuiton.i18n.I18n.l_; + /** * Service to edit the database. * @@ -92,7 +95,7 @@ //TODO Use an object to filter datas public Map<?, ?>[] getDatas(EchoBaseEntityEnum entityType, - FilterPagerUtil.FilterPagerBean pager, + TopiaFilterPagerUtil.FilterPagerBean pager, String sidx, Boolean ascendantOrder) { @@ -119,7 +122,7 @@ } public <E extends TopiaEntity> List<E> getEntities(TableMeta tableMeta, - FilterPagerUtil.FilterPagerBean pager, + TopiaFilterPagerUtil.FilterPagerBean pager, String sidx, Boolean ascendantOrder, String extraWhereQuery) { @@ -141,11 +144,11 @@ DecoratorService decoratorService = getDecoratorService(); // prepare the filter hql code - List<FilterPagerUtil.FilterRule> rules = pager.getRules(); + List<TopiaFilterPagerUtil.FilterRule> rules = pager.getRules(); List<String> strFilterRules = Lists.newLinkedList(); long timestamp = System.currentTimeMillis(); int index = 0; - for (FilterPagerUtil.FilterRule rule : rules) { + for (TopiaFilterPagerUtil.FilterRule rule : rules) { String ruleFilter; String field = rule.getField(); @@ -154,7 +157,7 @@ Preconditions.checkNotNull( columnMeta, "no property named " + columnMeta); - FilterPagerUtil.FilterOperation op = rule.getOp(); + TopiaFilterPagerUtil.FilterOperation op = rule.getOp(); String data = rule.getData(); String paramName = field + "_" + timestamp + (index++); String propertyName = "e." + field; @@ -211,7 +214,8 @@ } if (CollectionUtils.isNotEmpty(strFilterRules)) { - FilterPagerUtil.FilterOperationGroup groupOp = pager.getGroupOp(); + TopiaFilterPagerUtil.FilterOperationGroup groupOp = + pager.getGroupOp(); filterHql = StringUtils.join(strFilterRules, groupOp.name()); } } @@ -427,10 +431,12 @@ String topiaId = entity.getTopiaId(); buffer = new StringBuilder(messagePrefix).append('\n'); + Locale l = getLocale(); if (monitor == null) { // no monitor, means this is a creation of an object - buffer.append("Une entité a été crée d'identifiant ").append(topiaId); + buffer.append(l_( + l, "echobase.info.newEntityCreated", topiaId)); } else { PropertyDiff[] propertyDiffs = monitor.getPropertyDiffs(); @@ -444,12 +450,12 @@ } if (length == 1) { - buffer.append("Une propriété a été modifiée :"); + buffer.append(l_(l, "echobase.info.onePropertyModified")); } else { - buffer.append(length).append(" propriétés ont été modifiées :"); + buffer.append( + l_(l, "echobase.info.somePropertiesModified", length)); } - for (int i = 0; i < length; i++) { - PropertyDiff diff = propertyDiffs[i]; + for (PropertyDiff diff : propertyDiffs) { Object sourceValue = diff.getSourceValue(); Object targetValue = diff.getTargetValue(); @@ -461,18 +467,18 @@ // replace by the decorate value if (sourceValue != null) { sourceValue = getDecoratorService().decorate( - getLocale(), sourceValue, null); + l, sourceValue, null); } if (targetValue != null) { targetValue = getDecoratorService().decorate( - getLocale(), targetValue, null); + l, targetValue, null); } } - buffer.append(String.format("\n Propriété '%s', ancienne valeur : '%s', nouvelle valeur : '%s'", - propertyName, - sourceValue, - targetValue - )); + buffer.append("\n "); + buffer.append( + l_(l, "echobase.info.modifiedProperty", propertyName, + sourceValue, + targetValue)); } } @@ -577,10 +583,6 @@ propertyName + "_lib", propertyName, decorator -// EchobaseCsvUtil.newForeignKeyDecoratedValue( -// entityType, -// getDecoratorService(), -// getLocale()) ); } Modified: trunk/echobase-services/src/main/resources/i18n/echobase-services_en_GB.properties =================================================================== --- trunk/echobase-services/src/main/resources/i18n/echobase-services_en_GB.properties 2012-04-03 14:03:20 UTC (rev 479) +++ trunk/echobase-services/src/main/resources/i18n/echobase-services_en_GB.properties 2012-04-03 14:03:47 UTC (rev 480) @@ -43,3 +43,6 @@ echobase.importError.no.voyage.imported= echobase.importError.transect.notfound= echobase.importError.transit.notfound= +echobase.info.modifiedProperty=Property '%s', old value\: '%s', new value\: '%s' +echobase.info.onePropertyModified=One property was modified\: +echobase.info.somePropertiesModified=%s properties were modified\: Modified: trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties =================================================================== --- trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties 2012-04-03 14:03:20 UTC (rev 479) +++ trunk/echobase-services/src/main/resources/i18n/echobase-services_fr_FR.properties 2012-04-03 14:03:47 UTC (rev 480) @@ -43,3 +43,7 @@ echobase.importError.no.voyage.imported=Aucun voyage importé echobase.importError.transect.notfound=Transit non trouvé pour la campagne %s et la date %s et le navire %s (ligne %s) echobase.importError.transit.notfound=Transit non trouvé pour la campagne %s et la date %s (ligne %s) +echobase.info.modifiedProperty=Propriété '%s', ancienne valeur \: '%s', nouvelle valeur \: '%s' +echobase.info.newEntityCreated=Une nouvelle entité a été créée %s +echobase.info.onePropertyModified=Une propriété a été modifiée \: +echobase.info.somePropertiesModified=%s propriétés ont été modifiées \: Modified: trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/modificationLogs.jsp =================================================================== --- trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/modificationLogs.jsp 2012-04-03 14:03:20 UTC (rev 479) +++ trunk/echobase-ui/src/main/webapp/WEB-INF/jsp/modificationLogs.jsp 2012-04-03 14:03:47 UTC (rev 480) @@ -32,10 +32,15 @@ jQuery(document).ready(function () { $.addRowSelectTopic('datas', function (event) { + $('#extraInfos').show(); + var id = $("tr[aria-selected=true] td[aria-describedby='datas_entityId']").text(); + $('#modificationEntityId').html(id); + var text = $("tr[aria-selected=true] td[aria-describedby='datas_modificationText']").text(); $('#modificationTextContainter').html(text); }); $.addClearSelectTopic('datas', function (event) { + $('#extraInfos').hide(); $('#modificationTextContainter').html("${emptySelection}"); }); $.addEvenAndOddClasses('datas'); @@ -71,7 +76,16 @@ <br/> <fieldset> <legend><s:text name="echobase.title.modification.detail"/></legend> - <pre id='modificationTextContainter'></pre> + <div id="extraInfos"> + <s:label key='echobase.common.entityId' value=''/> + <div class="clearBoth"/> + <pre id='modificationEntityId' style="font-weight: bold;"></pre> + <br/> + </div> + <s:label key='echobase.common.modificationText' value=''/> + <div class="clearBoth"/> + <br/> + <pre id='modificationTextContainter' style="font-weight: bold;"></pre> </fieldset>
participants (1)
-
tchemit@users.forge.codelutin.com