dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #34994
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 17956: Implemented maintenance function for removing expired user account invitations. Improved period d...
------------------------------------------------------------
revno: 17956
committer: Lars Helge Overland <larshelge@xxxxxxxxx>
branch nick: dhis2
timestamp: Tue 2015-01-13 16:01:23 +0100
message:
Implemented maintenance function for removing expired user account invitations. Improved period deletion handling.
modified:
dhis-2/dhis-api/src/main/java/org/hisp/dhis/chart/ChartService.java
dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/AnalyticalObjectStore.java
dhis-2/dhis-api/src/main/java/org/hisp/dhis/maintenance/MaintenanceService.java
dhis-2/dhis-api/src/main/java/org/hisp/dhis/mapping/MappingService.java
dhis-2/dhis-api/src/main/java/org/hisp/dhis/reporttable/ReportTableService.java
dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/UserQueryParams.java
dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/maintenance/DefaultMaintenanceService.java
dhis-2/dhis-services/dhis-service-administration/src/main/resources/META-INF/dhis/beans.xml
dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/common/hibernate/HibernateAnalyticalObjectStore.java
dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/mapping/DefaultMappingService.java
dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/mapping/MapViewDeletionHandler.java
dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/user/hibernate/HibernateUserStore.java
dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/chart/ChartDeletionHandler.java
dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/chart/impl/DefaultChartService.java
dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/ReportTableDeletionHandler.java
dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/impl/DefaultReportTableService.java
dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/util/PageRange.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/maintenance/PerformMaintenanceAction.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/org/hisp/dhis/dataadmin/i18n_module.properties
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/javascript/maintenance.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/maintenanceForm.vm
--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk
Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/chart/ChartService.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/chart/ChartService.java 2015-01-07 18:22:38 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/chart/ChartService.java 2015-01-13 15:01:23 +0000
@@ -118,6 +118,8 @@
int countDataElementCharts( DataElement dataElement );
+ int countPeriodCharts( Period period );
+
int countOrganisationUnitCharts( OrganisationUnit organisationUnit );
int countCategoryOptionGroups( CategoryOptionGroup categoryOptionGroup );
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/AnalyticalObjectStore.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/AnalyticalObjectStore.java 2015-01-07 18:22:38 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/AnalyticalObjectStore.java 2015-01-13 15:01:23 +0000
@@ -33,6 +33,7 @@
import org.hisp.dhis.dataset.DataSet;
import org.hisp.dhis.indicator.Indicator;
import org.hisp.dhis.organisationunit.OrganisationUnit;
+import org.hisp.dhis.period.Period;
/**
* @author Morten Olav Hansen <mortenoh@xxxxxxxxx>
@@ -46,6 +47,8 @@
int countDataElementAnalyticalObject( DataElement dataElement );
+ int countPeriodAnalyticalObject( Period period );
+
int countOrganisationUnitAnalyticalObject( OrganisationUnit organisationUnit );
int countCategoryOptionGroupAnalyticalObject( CategoryOptionGroup categoryOptionGroup );
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/maintenance/MaintenanceService.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/maintenance/MaintenanceService.java 2014-04-16 15:03:22 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/maintenance/MaintenanceService.java 2015-01-13 15:01:23 +0000
@@ -48,4 +48,9 @@
* Deletes periods which do not have data values associated with them.
*/
void prunePeriods();
+
+ /**
+ * Deletes user accounts representing expired account invitations.
+ */
+ void removeExpiredInvitations();
}
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/mapping/MappingService.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/mapping/MappingService.java 2014-04-28 11:24:08 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/mapping/MappingService.java 2015-01-13 15:01:23 +0000
@@ -32,6 +32,7 @@
import org.hisp.dhis.dataset.DataSet;
import org.hisp.dhis.indicator.Indicator;
import org.hisp.dhis.organisationunit.OrganisationUnit;
+import org.hisp.dhis.period.Period;
import java.util.Collection;
import java.util.List;
@@ -174,6 +175,8 @@
int countDataElementMapViews( DataElement dataElement );
+ int countPeriodMapViews( Period period );
+
int countOrganisationUnitMapViews( OrganisationUnit organisationUnit );
int countMapLegendSetMapViews( MapLegendSet mapLegendSet );
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/reporttable/ReportTableService.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/reporttable/ReportTableService.java 2015-01-07 18:22:38 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/reporttable/ReportTableService.java 2015-01-13 15:01:23 +0000
@@ -35,6 +35,7 @@
import org.hisp.dhis.i18n.I18nFormat;
import org.hisp.dhis.indicator.Indicator;
import org.hisp.dhis.organisationunit.OrganisationUnit;
+import org.hisp.dhis.period.Period;
import java.util.Collection;
import java.util.Date;
@@ -156,6 +157,8 @@
int countDataElementReportTables( DataElement dataElement );
+ int countPeriodReportTables( Period period );
+
int countOrganisationUnitReportTables( OrganisationUnit organisationUnit );
int countCategoryOptionGroups( CategoryOptionGroup categoryOptionGroup );
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/UserQueryParams.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/UserQueryParams.java 2015-01-13 10:16:41 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/user/UserQueryParams.java 2015-01-13 15:01:23 +0000
@@ -90,6 +90,7 @@
return MoreObjects.toStringHelper( this ).
add( "query", query ).
add( "phone number", phoneNumber ).
+ add( "user", user != null ? user.getUsername() : null ).
add( "can manage", canManage ).
add( "auth subset", authSubset ).
add( "disjoint roles", disjointRoles ).
@@ -98,6 +99,7 @@
add( "inactive months", inactiveMonths ).
add( "self registered", selfRegistered ).
add( "invitation status", invitationStatus ).
+ add( "organisation unit", organisationUnit != null ? organisationUnit.getUid() : null ).
add( "first", first ).
add( "max", max ).toString();
}
=== modified file 'dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/maintenance/DefaultMaintenanceService.java'
--- dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/maintenance/DefaultMaintenanceService.java 2014-10-16 06:17:19 +0000
+++ dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/maintenance/DefaultMaintenanceService.java 2015-01-13 15:01:23 +0000
@@ -1,10 +1,18 @@
package org.hisp.dhis.maintenance;
+import java.util.Collections;
+import java.util.List;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.hisp.dhis.common.DeleteNotAllowedException;
import org.hisp.dhis.period.Period;
import org.hisp.dhis.period.PeriodService;
+import org.hisp.dhis.system.util.PageRange;
+import org.hisp.dhis.user.User;
+import org.hisp.dhis.user.UserInvitationStatus;
+import org.hisp.dhis.user.UserQueryParams;
+import org.hisp.dhis.user.UserService;
/*
* Copyright (c) 2004-2014, University of Oslo
@@ -36,13 +44,12 @@
/**
* @author Lars Helge Overland
- * @version $Id$
*/
public class DefaultMaintenanceService
implements MaintenanceService
{
private static final Log log = LogFactory.getLog( DefaultMaintenanceService.class );
-
+
// -------------------------------------------------------------------------
// Dependencies
// -------------------------------------------------------------------------
@@ -61,6 +68,13 @@
this.periodService = periodService;
}
+ private UserService userService;
+
+ public void setUserService( UserService userService )
+ {
+ this.userService = userService;
+ }
+
// -------------------------------------------------------------------------
// MaintenanceService implementation
// -------------------------------------------------------------------------
@@ -90,4 +104,40 @@
}
}
}
+
+ @Override
+ public void removeExpiredInvitations()
+ {
+ UserQueryParams params = new UserQueryParams();
+ params.setInvitationStatus( UserInvitationStatus.EXPIRED );
+
+ int count = userService.getUserCount( params );
+
+ PageRange range = new PageRange( count ).setPageSize( 200 );
+ List<int[]> pages = range.getPages();
+ Collections.reverse( pages ); // Iterate from end since users are deleted
+
+ log.info( "Pages: " + pages );
+
+ for ( int[] page : pages )
+ {
+ params.setFirst( page[0] );
+ params.setMax( range.getPageSize() );
+ List<User> users = userService.getUsers( params );
+
+ log.info( "Users: " + users.size() );
+
+ for ( User user : users )
+ {
+ try
+ {
+ userService.deleteUser( user );
+ }
+ catch ( DeleteNotAllowedException ex )
+ {
+ log.info( "Could not delete user " + user.getUsername() );
+ }
+ }
+ }
+ }
}
=== modified file 'dhis-2/dhis-services/dhis-service-administration/src/main/resources/META-INF/dhis/beans.xml'
--- dhis-2/dhis-services/dhis-service-administration/src/main/resources/META-INF/dhis/beans.xml 2014-12-04 06:39:46 +0000
+++ dhis-2/dhis-services/dhis-service-administration/src/main/resources/META-INF/dhis/beans.xml 2015-01-13 15:01:23 +0000
@@ -47,6 +47,7 @@
<bean id="org.hisp.dhis.maintenance.MaintenanceService" class="org.hisp.dhis.maintenance.DefaultMaintenanceService">
<property name="maintenanceStore" ref="org.hisp.dhis.maintenance.MaintenanceStore" />
<property name="periodService" ref="org.hisp.dhis.period.PeriodService" />
+ <property name="userService" ref="org.hisp.dhis.user.UserService" />
</bean>
<!-- Statistics -->
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/common/hibernate/HibernateAnalyticalObjectStore.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/common/hibernate/HibernateAnalyticalObjectStore.java 2015-01-07 18:22:38 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/common/hibernate/HibernateAnalyticalObjectStore.java 2015-01-13 15:01:23 +0000
@@ -36,6 +36,7 @@
import org.hisp.dhis.dataset.DataSet;
import org.hisp.dhis.indicator.Indicator;
import org.hisp.dhis.organisationunit.OrganisationUnit;
+import org.hisp.dhis.period.Period;
/**
* @author Morten Olav Hansen <mortenoh@xxxxxxxxx>
@@ -71,6 +72,15 @@
}
@Override
+ public int countPeriodAnalyticalObject( Period period )
+ {
+ Query query = getQuery( "select count(distinct c) from " + clazz.getName() + " c where :period in elements(c.periods)" );
+ query.setEntity( "period", period );
+
+ return ((Long) query.uniqueResult()).intValue();
+ }
+
+ @Override
public int countOrganisationUnitAnalyticalObject( OrganisationUnit organisationUnit )
{
Query query = getQuery( "select count(distinct c) from " + clazz.getName() + " c where :organisationUnit in elements(c.organisationUnits)" );
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/mapping/DefaultMappingService.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/mapping/DefaultMappingService.java 2014-10-16 06:17:19 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/mapping/DefaultMappingService.java 2015-01-13 15:01:23 +0000
@@ -516,6 +516,12 @@
}
@Override
+ public int countPeriodMapViews( Period period )
+ {
+ return mapViewStore.countPeriodAnalyticalObject( period );
+ }
+
+ @Override
public int countOrganisationUnitMapViews( OrganisationUnit organisationUnit )
{
return mapViewStore.countOrganisationUnitAnalyticalObject( organisationUnit );
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/mapping/MapViewDeletionHandler.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/mapping/MapViewDeletionHandler.java 2014-04-28 11:24:08 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/mapping/MapViewDeletionHandler.java 2015-01-13 15:01:23 +0000
@@ -32,6 +32,7 @@
import org.hisp.dhis.dataset.DataSet;
import org.hisp.dhis.indicator.Indicator;
import org.hisp.dhis.organisationunit.OrganisationUnit;
+import org.hisp.dhis.period.Period;
import org.hisp.dhis.system.deletion.DeletionHandler;
/**
@@ -81,6 +82,12 @@
}
@Override
+ public String allowDeletePeriod( Period period )
+ {
+ return mappingService.countPeriodMapViews( period ) == 0 ? null : ERROR;
+ }
+
+ @Override
public String allowDeleteDataElement( DataElement dataElement )
{
return mappingService.countDataElementMapViews( dataElement ) == 0 ? null : ERROR;
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/user/hibernate/HibernateUserStore.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/user/hibernate/HibernateUserStore.java 2015-01-01 15:54:26 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/user/hibernate/HibernateUserStore.java 2015-01-13 15:01:23 +0000
@@ -133,7 +133,11 @@
if ( UserInvitationStatus.EXPIRED.equals( params.getInvitationStatus() ) )
{
- hql += hlp.whereAnd() + " uc.invitation = true and uc.restoreExpiry < current_timestamp() ";
+ hql += hlp.whereAnd() + " uc.invitation = true " +
+ "and uc.restoreToken is not null " +
+ "and uc.restoreCode is not null " +
+ "and uc.restoreExpiry is not null " +
+ "and uc.restoreExpiry < current_timestamp() ";
}
if ( params.getOrganisationUnit() != null )
=== modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/chart/ChartDeletionHandler.java'
--- dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/chart/ChartDeletionHandler.java 2015-01-07 18:22:38 +0000
+++ dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/chart/ChartDeletionHandler.java 2015-01-13 15:01:23 +0000
@@ -33,6 +33,7 @@
import org.hisp.dhis.dataset.DataSet;
import org.hisp.dhis.indicator.Indicator;
import org.hisp.dhis.organisationunit.OrganisationUnit;
+import org.hisp.dhis.period.Period;
import org.hisp.dhis.system.deletion.DeletionHandler;
/**
@@ -80,6 +81,12 @@
{
return chartService.countDataElementCharts( dataElement ) == 0 ? null : ERROR;
}
+
+ @Override
+ public String allowDeletePeriod( Period period )
+ {
+ return chartService.countPeriodCharts( period ) == 0 ? null : ERROR;
+ }
@Override
public String allowDeleteOrganisationUnit( OrganisationUnit organisationUnit )
=== modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/chart/impl/DefaultChartService.java'
--- dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/chart/impl/DefaultChartService.java 2015-01-07 18:22:38 +0000
+++ dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/chart/impl/DefaultChartService.java 2015-01-13 15:01:23 +0000
@@ -1024,6 +1024,12 @@
{
return chartStore.countDataElementAnalyticalObject( dataElement );
}
+
+ @Override
+ public int countPeriodCharts( Period period )
+ {
+ return chartStore.countPeriodAnalyticalObject( period );
+ }
@Override
public int countOrganisationUnitCharts( OrganisationUnit organisationUnit )
=== modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/ReportTableDeletionHandler.java'
--- dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/ReportTableDeletionHandler.java 2015-01-07 18:22:38 +0000
+++ dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/ReportTableDeletionHandler.java 2015-01-13 15:01:23 +0000
@@ -33,6 +33,7 @@
import org.hisp.dhis.dataset.DataSet;
import org.hisp.dhis.indicator.Indicator;
import org.hisp.dhis.organisationunit.OrganisationUnit;
+import org.hisp.dhis.period.Period;
import org.hisp.dhis.system.deletion.DeletionHandler;
/**
@@ -81,6 +82,12 @@
}
@Override
+ public String allowDeletePeriod( Period period )
+ {
+ return reportTableService.countPeriodReportTables( period ) == 0 ? null : ERROR;
+ }
+
+ @Override
public String allowDeleteOrganisationUnit( OrganisationUnit organisationUnit )
{
return reportTableService.countOrganisationUnitReportTables( organisationUnit ) == 0 ? null : ERROR;
=== modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/impl/DefaultReportTableService.java'
--- dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/impl/DefaultReportTableService.java 2015-01-07 18:22:38 +0000
+++ dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/impl/DefaultReportTableService.java 2015-01-13 15:01:23 +0000
@@ -44,6 +44,7 @@
import org.hisp.dhis.indicator.Indicator;
import org.hisp.dhis.organisationunit.OrganisationUnit;
import org.hisp.dhis.organisationunit.OrganisationUnitService;
+import org.hisp.dhis.period.Period;
import org.hisp.dhis.report.ReportService;
import org.hisp.dhis.reporttable.ReportTable;
import org.hisp.dhis.reporttable.ReportTableService;
@@ -259,6 +260,12 @@
{
return reportTableStore.countDataElementAnalyticalObject( dataElement );
}
+
+ @Override
+ public int countPeriodReportTables( Period period )
+ {
+ return reportTableStore.countPeriodAnalyticalObject( period );
+ }
@Override
public int countOrganisationUnitReportTables( OrganisationUnit organisationUnit )
=== modified file 'dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/util/PageRange.java'
--- dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/util/PageRange.java 2015-01-13 14:27:02 +0000
+++ dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/util/PageRange.java 2015-01-13 15:01:23 +0000
@@ -139,7 +139,14 @@
return toIndex;
}
-
+ /**
+ * Returns the page size.
+ */
+ public int getPageSize()
+ {
+ return pageSize;
+ }
+
/**
* Returns a list of all pages. Each item is an array where index 0 holds the
* from index and index 1 holds the to index. Resets the page.
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/maintenance/PerformMaintenanceAction.java'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/maintenance/PerformMaintenanceAction.java 2014-10-16 06:17:19 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/maintenance/PerformMaintenanceAction.java 2015-01-13 15:01:23 +0000
@@ -155,6 +155,13 @@
this.prunePeriods = prunePeriods;
}
+ private boolean removeExpiredInvitations;
+
+ public void setRemoveExpiredInvitations( boolean removeExpiredInvitations )
+ {
+ this.removeExpiredInvitations = removeExpiredInvitations;
+ }
+
private boolean updateCategoryOptionCombos;
public void setUpdateCategoryOptionCombos( boolean updateCategoryOptionCombos )
@@ -227,6 +234,13 @@
log.info( "'" + username + "': Pruned periods" );
}
+ if ( removeExpiredInvitations )
+ {
+ maintenanceService.removeExpiredInvitations();
+
+ log.info( "'" + username + "': Removed expired invitations" );
+ }
+
if ( updateCategoryOptionCombos )
{
categoryService.updateAllOptionCombos();
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/org/hisp/dhis/dataadmin/i18n_module.properties'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/org/hisp/dhis/dataadmin/i18n_module.properties 2015-01-07 14:30:52 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/org/hisp/dhis/dataadmin/i18n_module.properties 2015-01-13 15:01:23 +0000
@@ -365,4 +365,5 @@
next_year = Next year
update_the_data_elements_and_option_combos_in_expression = Update the data elements and option combos in expression
org_unit_group_does_not_exist=Org unit group does not exist
-duplicate_periods=Duplicate periods
\ No newline at end of file
+duplicate_periods=Duplicate periods
+remove_expired_invitations=Remove expired invitations
\ No newline at end of file
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/javascript/maintenance.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/javascript/maintenance.js 2014-08-29 08:45:54 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/javascript/maintenance.js 2015-01-13 15:01:23 +0000
@@ -1,15 +1,17 @@
function performMaintenance()
{
- var clearAnalytics = document.getElementById( "clearAnalytics" ).checked;
- var clearDataMart = document.getElementById( "clearDataMart" ).checked;
- var dataMartIndex = document.getElementById( "dataMartIndex" ).checked;
- var zeroValues = document.getElementById( "zeroValues" ).checked;
- var dataSetCompleteness = document.getElementById( "dataSetCompleteness" ).checked;
- var prunePeriods = document.getElementById( "prunePeriods" ).checked;
- var updateCategoryOptionCombos = document.getElementById( "updateCategoryOptionCombos" ).checked;
+ var clearAnalytics = $( "#clearAnalytics" ).is( ":checked" );
+ var clearDataMart = $( "#clearDataMart" ).is( ":checked" );
+ var dataMartIndex = $( "#dataMartIndex" ).is( ":checked" );
+ var zeroValues = $( "#zeroValues" ).is( ":checked" );
+ var dataSetCompleteness = $( "#dataSetCompleteness" ).is( ":checked" );
+ var prunePeriods = $( "#prunePeriods" ).is( ":checked" );
+ var removeExpiredInvitations = $( "#removeExpiredInvitations" ).is( ":checked" );
+ var updateCategoryOptionCombos = $( "#updateCategoryOptionCombos" ).is( ":checked" );
- if ( clearAnalytics || clearDataMart || dataMartIndex || zeroValues || dataSetCompleteness || prunePeriods || updateCategoryOptionCombos )
+ if ( clearAnalytics || clearDataMart || dataMartIndex || zeroValues ||
+ dataSetCompleteness || prunePeriods || removeExpiredInvitations || updateCategoryOptionCombos )
{
setHeaderWaitMessage( i18n_performing_maintenance );
@@ -19,6 +21,7 @@
"&zeroValues=" + zeroValues +
"&dataSetCompleteness=" + dataSetCompleteness +
"&prunePeriods=" + prunePeriods +
+ "&removeExpiredInvitations=" + removeExpiredInvitations +
"&updateCategoryOptionCombos=" + updateCategoryOptionCombos;
$.ajax({
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/maintenanceForm.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/maintenanceForm.vm 2014-08-29 08:45:54 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/maintenanceForm.vm 2015-01-13 15:01:23 +0000
@@ -37,6 +37,11 @@
</p>
<p>
+ <input type="checkbox" id="removeExpiredInvitations"/>
+ <label for="removeExpiredInvitations">$i18n.getString( "remove_expired_invitations" )</label>
+</p>
+
+<p>
<input type="checkbox" id="updateCategoryOptionCombos"/>
<label for="updateCategoryOptionCombos">$i18n.getString( "update_category_option_combos" )</label>
</p>