=== modified file 'dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/action/GetPeriodsAction.java' --- dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/action/GetPeriodsAction.java 2011-09-27 11:21:17 +0000 +++ dhis-2/dhis-web/dhis-web-light/src/main/java/org/hisp/dhis/light/action/GetPeriodsAction.java 2011-09-27 11:56:18 +0000 @@ -28,11 +28,17 @@ import java.util.ArrayList; import java.util.Date; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import org.hisp.dhis.dataset.CompleteDataSetRegistration; +import org.hisp.dhis.dataset.CompleteDataSetRegistrationService; import org.hisp.dhis.dataset.DataSet; import org.hisp.dhis.dataset.DataSetService; import org.hisp.dhis.i18n.I18nFormat; +import org.hisp.dhis.organisationunit.OrganisationUnit; +import org.hisp.dhis.organisationunit.OrganisationUnitService; import org.hisp.dhis.period.CalendarPeriodType; import org.hisp.dhis.period.Period; import org.hisp.dhis.system.filter.PastAndCurrentPeriodFilter; @@ -50,6 +56,13 @@ // Dependencies // ------------------------------------------------------------------------- + private OrganisationUnitService organisationUnitService; + + public void setOrganisationUnitService( OrganisationUnitService organisationUnitService ) + { + this.organisationUnitService = organisationUnitService; + } + private DataSetService dataSetService; public void setDataSetService( DataSetService dataSetService ) @@ -57,6 +70,13 @@ this.dataSetService = dataSetService; } + private CompleteDataSetRegistrationService registrationService; + + public void setRegistrationService( CompleteDataSetRegistrationService registrationService ) + { + this.registrationService = registrationService; + } + private I18nFormat format; public void setFormat( I18nFormat format ) @@ -92,6 +112,13 @@ return dataSetId; } + private Map periodCompletedMap = new HashMap(); + + public Map getPeriodCompletedMap() + { + return periodCompletedMap; + } + private List periods = new ArrayList(); public List getPeriods() @@ -108,15 +135,21 @@ { if ( dataSetId != null ) { + OrganisationUnit organisationUnit = organisationUnitService.getOrganisationUnit( organisationUnitId ); DataSet dataSet = dataSetService.getDataSet( dataSetId ); CalendarPeriodType periodType = (CalendarPeriodType) dataSet.getPeriodType(); periods = periodType.generatePeriods( new Date() ); FilterUtils.filter( periods, new PastAndCurrentPeriodFilter() ); - } - - for ( Period period : periods ) - { - period.setName( format.formatPeriod( period ) ); + + for ( Period period : periods ) + { + period.setName( format.formatPeriod( period ) ); + + CompleteDataSetRegistration registration = registrationService.getCompleteDataSetRegistration( dataSet, + period, organisationUnit ); + + periodCompletedMap.put( period, registration != null ? true : false ); + } } return SUCCESS; === modified file 'dhis-2/dhis-web/dhis-web-light/src/main/resources/META-INF/dhis/beans.xml' --- dhis-2/dhis-web/dhis-web-light/src/main/resources/META-INF/dhis/beans.xml 2011-09-27 10:32:15 +0000 +++ dhis-2/dhis-web/dhis-web-light/src/main/resources/META-INF/dhis/beans.xml 2011-09-27 11:56:18 +0000 @@ -14,7 +14,9 @@ + + === modified file 'dhis-2/dhis-web/dhis-web-light/src/main/webapp/dhis-web-light/selectPeriod.vm' --- dhis-2/dhis-web/dhis-web-light/src/main/webapp/dhis-web-light/selectPeriod.vm 2011-09-23 14:49:23 +0000 +++ dhis-2/dhis-web/dhis-web-light/src/main/webapp/dhis-web-light/selectPeriod.vm 2011-09-27 11:56:18 +0000 @@ -4,7 +4,10 @@