dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #16005
[Branch ~dhis2-devs-core/dhis2/trunk] Rev 5946: added ui for batch deletion of lock exceptions
------------------------------------------------------------
revno: 5946
committer: Morten Olav Hansen <mortenoh@xxxxxxxxx>
branch nick: dhis2
timestamp: Tue 2012-02-14 09:58:08 +0700
message:
added ui for batch deletion of lock exceptions
added:
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/lockexception/BatchRemoveLockExceptionsAction.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/lockexception/PrepareBatchRemovalAction.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/removeLockExceptionBatch.vm
modified:
dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataset/DataSetService.java
dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataset/LockExceptionStore.java
dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataset/DefaultDataSetService.java
dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataset/hibernate/HibernateLockExceptionStore.java
dhis-2/dhis-services/dhis-service-core/src/main/resources/META-INF/dhis/beans.xml
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/lockexception/GetLockExceptionListAction.java
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/META-INF/dhis/beans.xml
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/struts.xml
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/javascript/lockException.js
dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/lockException.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/dataset/DataSetService.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataset/DataSetService.java 2012-02-08 12:39:22 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataset/DataSetService.java 2012-02-14 02:58:08 +0000
@@ -29,6 +29,7 @@
import org.hisp.dhis.dataelement.DataElement;
import org.hisp.dhis.organisationunit.OrganisationUnit;
+import org.hisp.dhis.period.Period;
import org.hisp.dhis.period.PeriodType;
import java.util.Collection;
@@ -284,4 +285,21 @@
* @return Collection of LockExceptions withing the range specified
*/
public Collection<LockException> getLockExceptionsBetween( int first, int max );
+
+ /**
+ * Find all unique dataSet + period combinations
+ * (mainly used for batch removal)
+ *
+ * @return A collection of all unique combinations (only dataSet and period is set)
+ */
+ public Collection<LockException> getLockExceptionCombinations();
+
+ /**
+ * Delete a dataSet + period combination, used for batch removal, e.g. when you
+ * have a lock exception set on 100 OUs with the same dataSet + period combination.
+ *
+ * @param dataSet DataSet part of the combination
+ * @param period Period part of the combination
+ */
+ public void deleteLockExceptionCombination( DataSet dataSet, Period period );
}
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataset/LockExceptionStore.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataset/LockExceptionStore.java 2012-02-05 13:27:40 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataset/LockExceptionStore.java 2012-02-14 02:58:08 +0000
@@ -28,6 +28,9 @@
*/
import org.hisp.dhis.common.GenericStore;
+import org.hisp.dhis.period.Period;
+
+import java.util.Collection;
/**
* @author Morten Olav Hansen <mortenoh@xxxxxxxxx>
@@ -36,4 +39,8 @@
extends GenericStore<LockException>
{
String ID = LockExceptionStore.class.getName();
+
+ Collection<LockException> getCombinations();
+
+ void deleteCombination( DataSet dataSet, Period period );
}
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataset/DefaultDataSetService.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataset/DefaultDataSetService.java 2012-02-08 12:04:46 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataset/DefaultDataSetService.java 2012-02-14 02:58:08 +0000
@@ -34,6 +34,7 @@
import org.hisp.dhis.dataentryform.DataEntryForm;
import org.hisp.dhis.i18n.I18nService;
import org.hisp.dhis.organisationunit.OrganisationUnit;
+import org.hisp.dhis.period.Period;
import org.hisp.dhis.period.PeriodType;
import org.hisp.dhis.system.util.AuditLogUtil;
import org.hisp.dhis.system.util.Filter;
@@ -378,4 +379,16 @@
// FIXME extend lockExceptionStore to include HQL query for this
return getAllLockExceptions();
}
+
+ @Override
+ public Collection<LockException> getLockExceptionCombinations()
+ {
+ return lockExceptionStore.getCombinations();
+ }
+
+ @Override
+ public void deleteLockExceptionCombination( DataSet dataSet, Period period )
+ {
+ lockExceptionStore.deleteCombination( dataSet, period );
+ }
}
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataset/hibernate/HibernateLockExceptionStore.java'
--- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataset/hibernate/HibernateLockExceptionStore.java 2012-02-05 13:27:40 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataset/hibernate/HibernateLockExceptionStore.java 2012-02-14 02:58:08 +0000
@@ -27,9 +27,21 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+import org.hibernate.Query;
+import org.hibernate.Session;
+import org.hisp.dhis.dataset.DataSet;
+import org.hisp.dhis.dataset.DataSetService;
import org.hisp.dhis.dataset.LockException;
import org.hisp.dhis.dataset.LockExceptionStore;
import org.hisp.dhis.hibernate.HibernateGenericStore;
+import org.hisp.dhis.period.Period;
+import org.hisp.dhis.period.PeriodService;
+import org.springframework.jdbc.core.RowCallbackHandler;
+
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.Collection;
/**
* @author Morten Olav Hansen <mortenoh@xxxxxxxxx>
@@ -38,4 +50,70 @@
extends HibernateGenericStore<LockException>
implements LockExceptionStore
{
+ // -------------------------------------------------------------------------
+ // Dependencies
+ // -------------------------------------------------------------------------
+
+ private DataSetService dataSetService;
+
+ public void setDataSetService( DataSetService dataSetService )
+ {
+ this.dataSetService = dataSetService;
+ }
+
+ private PeriodService periodService;
+
+ public void setPeriodService( PeriodService periodService )
+ {
+ this.periodService = periodService;
+ }
+
+ // -------------------------------------------------------------------------
+ // LockExceptionStore Implementation
+ // -------------------------------------------------------------------------
+
+ @Override
+ public Collection<LockException> getCombinations()
+ {
+ final String sql = "SELECT DISTINCT datasetid, periodid FROM LockException";
+
+ final Collection<LockException> lockExceptions = new ArrayList<LockException>();
+
+ jdbcTemplate.query( sql, new RowCallbackHandler()
+ {
+ @Override
+ public void processRow( ResultSet rs ) throws SQLException
+ {
+ int dataSetId = rs.getInt( 1 );
+ int periodId = rs.getInt( 2 );
+
+ LockException lockException = new LockException();
+ Period period = periodService.getPeriod( periodId );
+ DataSet dataSet = dataSetService.getDataSet( dataSetId );
+
+ lockException.setDataSet( dataSet );
+ lockException.setPeriod( period );
+
+ lockExceptions.add( lockException );
+ }
+ } );
+
+ return lockExceptions;
+ }
+
+ @Override
+ public void deleteCombination( DataSet dataSet, Period period )
+ {
+ Session session = sessionFactory.getCurrentSession();
+
+ final String hql = "DELETE FROM LockException WHERE dataSet=:dataSet AND period=:period";
+ Query query = session.createQuery( hql );
+ query.setParameter( "dataSet", dataSet );
+ query.setParameter( "period", period );
+
+ query.executeUpdate();
+
+// final String sql = "DELETE FROM LockException WHERE dataSetId=? AND periodId=?";
+// jdbcTemplate.update( sql, new Object[]{dataSet.getId(), period.getId()} );
+ }
}
=== modified file 'dhis-2/dhis-services/dhis-service-core/src/main/resources/META-INF/dhis/beans.xml'
--- dhis-2/dhis-services/dhis-service-core/src/main/resources/META-INF/dhis/beans.xml 2012-02-08 12:04:46 +0000
+++ dhis-2/dhis-services/dhis-service-core/src/main/resources/META-INF/dhis/beans.xml 2012-02-14 02:58:08 +0000
@@ -88,7 +88,10 @@
<bean id="org.hisp.dhis.dataset.LockExceptionStore" class="org.hisp.dhis.dataset.hibernate.HibernateLockExceptionStore">
<property name="clazz" value="org.hisp.dhis.dataset.LockException" />
<property name="sessionFactory" ref="sessionFactory" />
+ <property name="jdbcTemplate" ref="jdbcTemplate" />
<property name="cacheable" value="true" />
+ <property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
+ <property name="periodService" ref="org.hisp.dhis.period.PeriodService" />
</bean>
<bean id="org.hisp.dhis.dataset.CompleteDataSetRegistrationStore" class="org.hisp.dhis.dataset.hibernate.HibernateCompleteDataSetRegistrationStore">
=== added file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/lockexception/BatchRemoveLockExceptionsAction.java'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/lockexception/BatchRemoveLockExceptionsAction.java 1970-01-01 00:00:00 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/lockexception/BatchRemoveLockExceptionsAction.java 2012-02-14 02:58:08 +0000
@@ -0,0 +1,97 @@
+package org.hisp.dhis.dataadmin.action.lockexception;
+
+/*
+ * Copyright (c) 2004-2012, University of Oslo
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright notice, this
+ * list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ * * Neither the name of the HISP project nor the names of its contributors may
+ * be used to endorse or promote products derived from this software without
+ * specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+import com.opensymphony.xwork2.Action;
+import org.hisp.dhis.dataset.DataSet;
+import org.hisp.dhis.dataset.DataSetService;
+import org.hisp.dhis.period.Period;
+import org.hisp.dhis.period.PeriodService;
+
+/**
+ * @author Morten Olav Hansen <mortenoh@xxxxxxxxx>
+ */
+public class BatchRemoveLockExceptionsAction
+ implements Action
+{
+ // -------------------------------------------------------------------------
+ // Dependencies
+ // -------------------------------------------------------------------------
+
+ private DataSetService dataSetService;
+
+ public void setDataSetService( DataSetService dataSetService )
+ {
+ this.dataSetService = dataSetService;
+ }
+
+ private PeriodService periodService;
+
+ public void setPeriodService( PeriodService periodService )
+ {
+ this.periodService = periodService;
+ }
+
+ // -------------------------------------------------------------------------
+ // Input & Output
+ // -------------------------------------------------------------------------
+
+ private int dataSetId;
+
+ public void setDataSetId( int dataSetId )
+ {
+ this.dataSetId = dataSetId;
+ }
+
+ private int periodId;
+
+ public void setPeriodId( int periodId )
+ {
+ this.periodId = periodId;
+ }
+
+ // -------------------------------------------------------------------------
+ // Action Implementation
+ // -------------------------------------------------------------------------
+
+ @Override
+ public String execute() throws Exception
+ {
+ DataSet dataSet = dataSetService.getDataSet( dataSetId );
+ Period period = periodService.getPeriod( periodId );
+
+ if ( dataSet == null || period == null )
+ {
+ return ERROR;
+ }
+
+ dataSetService.deleteLockExceptionCombination( dataSet, period );
+
+ return SUCCESS;
+ }
+}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/lockexception/GetLockExceptionListAction.java'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/lockexception/GetLockExceptionListAction.java 2012-02-08 12:04:46 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/lockexception/GetLockExceptionListAction.java 2012-02-14 02:58:08 +0000
@@ -102,6 +102,8 @@
lockExceptions = lockExceptions.subList( paging.getStartPos(), paging.getEndPos() );
}
+ dataSetService.getLockExceptionCombinations();
+
return SUCCESS;
}
}
=== added file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/lockexception/PrepareBatchRemovalAction.java'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/lockexception/PrepareBatchRemovalAction.java 1970-01-01 00:00:00 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/java/org/hisp/dhis/dataadmin/action/lockexception/PrepareBatchRemovalAction.java 2012-02-14 02:58:08 +0000
@@ -0,0 +1,90 @@
+package org.hisp.dhis.dataadmin.action.lockexception;
+
+/*
+ * Copyright (c) 2004-2012, University of Oslo
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ * * Redistributions of source code must retain the above copyright notice, this
+ * list of conditions and the following disclaimer.
+ * * Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ * * Neither the name of the HISP project nor the names of its contributors may
+ * be used to endorse or promote products derived from this software without
+ * specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+import com.opensymphony.xwork2.Action;
+import org.hisp.dhis.dataset.DataSetService;
+import org.hisp.dhis.dataset.LockException;
+import org.hisp.dhis.i18n.I18nFormat;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author Morten Olav Hansen <mortenoh@xxxxxxxxx>
+ */
+public class PrepareBatchRemovalAction
+ implements Action
+{
+ // -------------------------------------------------------------------------
+ // Dependencies
+ // -------------------------------------------------------------------------
+
+ private DataSetService dataSetService;
+
+ public void setDataSetService( DataSetService dataSetService )
+ {
+ this.dataSetService = dataSetService;
+ }
+
+ private I18nFormat format;
+
+ public void setFormat( I18nFormat format )
+ {
+ this.format = format;
+ }
+
+ // -------------------------------------------------------------------------
+ // Input & Output
+ // -------------------------------------------------------------------------
+
+ private List<LockException> lockExceptions;
+
+ public List<LockException> getLockExceptions()
+ {
+ return lockExceptions;
+ }
+
+ // -------------------------------------------------------------------------
+ // Action Implementation
+ // -------------------------------------------------------------------------
+
+ @Override
+ public String execute() throws Exception
+ {
+ lockExceptions = new ArrayList<LockException>( dataSetService.getLockExceptionCombinations() );
+
+ for ( LockException lockException : lockExceptions )
+ {
+ lockException.getPeriod().setName( format.formatPeriod( lockException.getPeriod() ) );
+
+ }
+
+ return SUCCESS;
+ }
+}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/META-INF/dhis/beans.xml'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/META-INF/dhis/beans.xml 2012-02-13 04:51:23 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/META-INF/dhis/beans.xml 2012-02-14 02:58:08 +0000
@@ -1,24 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="
+ xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd">
<!-- Locking -->
- <bean id="org.hisp.dhis.dataadmin.action.lock.GetPeriodTypesAction" class="org.hisp.dhis.dataadmin.action.lock.GetPeriodTypesAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.lock.GetPeriodTypesAction"
+ class="org.hisp.dhis.dataadmin.action.lock.GetPeriodTypesAction"
+ scope="prototype">
<property name="periodService" ref="org.hisp.dhis.period.PeriodService" />
<property name="selectionTreeManager" ref="org.hisp.dhis.oust.manager.SelectionTreeManager" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.lock.GetDataSetsForPeriodTypeAction" class="org.hisp.dhis.dataadmin.action.lock.GetDataSetsForPeriodTypeAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.lock.GetDataSetsForPeriodTypeAction"
+ class="org.hisp.dhis.dataadmin.action.lock.GetDataSetsForPeriodTypeAction"
+ scope="prototype">
<property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
<property name="periodService" ref="org.hisp.dhis.period.PeriodService" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.lock.CollectiveDataLockingAction" class="org.hisp.dhis.dataadmin.action.lock.CollectiveDataLockingAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.lock.CollectiveDataLockingAction"
+ class="org.hisp.dhis.dataadmin.action.lock.CollectiveDataLockingAction"
+ scope="prototype">
<property name="periodService" ref="org.hisp.dhis.period.PeriodService" />
<property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
<property name="dataSetLockService" ref="org.hisp.dhis.datalock.DataSetLockService" />
@@ -26,73 +29,84 @@
<property name="selectionTreeManager" ref="org.hisp.dhis.oust.manager.SelectionTreeManager" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.lock.GetPeriodsForLockAction" class="org.hisp.dhis.dataadmin.action.lock.GetPeriodsForLockAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.lock.GetPeriodsForLockAction"
+ class="org.hisp.dhis.dataadmin.action.lock.GetPeriodsForLockAction"
+ scope="prototype">
<property name="periodService" ref="org.hisp.dhis.period.PeriodService" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.lock.ValidateCollectiveDataLockingAction" class="org.hisp.dhis.dataadmin.action.lock.ValidateCollectiveDataLockingAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.lock.ValidateCollectiveDataLockingAction"
+ class="org.hisp.dhis.dataadmin.action.lock.ValidateCollectiveDataLockingAction"
+ scope="prototype">
<property name="selectionTreeManager" ref="org.hisp.dhis.oust.manager.SelectionTreeManager" />
</bean>
<!-- Maintenance -->
- <bean id="org.hisp.dhis.dataadmin.action.maintenance.PerformMaintenanceAction" class="org.hisp.dhis.dataadmin.action.maintenance.PerformMaintenanceAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.maintenance.PerformMaintenanceAction"
+ class="org.hisp.dhis.dataadmin.action.maintenance.PerformMaintenanceAction"
+ scope="prototype">
<property name="maintenanceService" ref="org.hisp.dhis.maintenance.MaintenanceService" />
<property name="completenessService" ref="compulsoryDataCompletenessService" />
<property name="aggregatedDataValueService" ref="org.hisp.dhis.aggregation.AggregatedDataValueService" />
- <property name="aggregatedOrgUnitDataValueService" ref="org.hisp.dhis.aggregation.AggregatedOrgUnitDataValueService" />
+ <property name="aggregatedOrgUnitDataValueService"
+ ref="org.hisp.dhis.aggregation.AggregatedOrgUnitDataValueService" />
<property name="periodService" ref="org.hisp.dhis.period.PeriodService" />
</bean>
<!-- Resource table -->
- <bean id="org.hisp.dhis.dataadmin.action.resourcetable.GenerateResourceTableAction" class="org.hisp.dhis.dataadmin.action.resourcetable.GenerateResourceTableAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.resourcetable.GenerateResourceTableAction"
+ class="org.hisp.dhis.dataadmin.action.resourcetable.GenerateResourceTableAction"
+ scope="prototype">
<property name="resourceTableService" ref="org.hisp.dhis.resourcetable.ResourceTableService" />
<property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
</bean>
<!-- Cache -->
- <bean id="org.hisp.dhis.dataadmin.action.cache.ShowCacheAction" class="org.hisp.dhis.dataadmin.action.cache.ShowCacheAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.cache.ShowCacheAction"
+ class="org.hisp.dhis.dataadmin.action.cache.ShowCacheAction"
+ scope="prototype">
<property name="cacheManager" ref="cacheManager" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.cache.ClearCacheAction" class="org.hisp.dhis.dataadmin.action.cache.ClearCacheAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.cache.ClearCacheAction"
+ class="org.hisp.dhis.dataadmin.action.cache.ClearCacheAction"
+ scope="prototype">
<property name="cacheManager" ref="cacheManager" />
</bean>
<!-- Data integrity -->
- <bean id="org.hisp.dhis.dataadmin.action.dataintegrity.GetDataIntegrityAction" class="org.hisp.dhis.dataadmin.action.dataintegrity.GetDataIntegrityAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.dataintegrity.GetDataIntegrityAction"
+ class="org.hisp.dhis.dataadmin.action.dataintegrity.GetDataIntegrityAction"
+ scope="prototype">
<property name="dataIntegrityService" ref="org.hisp.dhis.dataintegrity.DataIntegrityService" />
</bean>
<!-- Statistics -->
- <bean id="org.hisp.dhis.dataadmin.action.statistics.GetStatisticsAction" class="org.hisp.dhis.dataadmin.action.statistics.GetStatisticsAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.statistics.GetStatisticsAction"
+ class="org.hisp.dhis.dataadmin.action.statistics.GetStatisticsAction"
+ scope="prototype">
<property name="statisticsProvider" ref="org.hisp.dhis.statistics.StatisticsProvider" />
<property name="userService" ref="org.hisp.dhis.user.UserService" />
<property name="dataValueService" ref="org.hisp.dhis.datavalue.DataValueService" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.statistics.GetStatisticsChartAction" class="org.hisp.dhis.dataadmin.action.statistics.GetStatisticsChartAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.statistics.GetStatisticsChartAction"
+ class="org.hisp.dhis.dataadmin.action.statistics.GetStatisticsChartAction"
+ scope="prototype">
<property name="statisticsProvider" ref="org.hisp.dhis.statistics.StatisticsProvider" />
<property name="chartService" ref="org.hisp.dhis.chart.ChartService" />
</bean>
<!-- Databrowser Grid -->
- <bean id="org.hisp.dhis.dataadmin.action.databrowser.DataBrowserAction" class="org.hisp.dhis.dataadmin.action.databrowser.DataBrowserAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.databrowser.DataBrowserAction"
+ class="org.hisp.dhis.dataadmin.action.databrowser.DataBrowserAction"
+ scope="prototype">
<property name="dataBrowserGridService" ref="org.hisp.dhis.databrowser.DataBrowserGridService" />
<property name="dataElementService" ref="org.hisp.dhis.dataelement.DataElementService" />
<property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
@@ -102,101 +116,117 @@
<property name="organisationUnitGroupService" ref="org.hisp.dhis.organisationunit.OrganisationUnitGroupService" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.databrowser.GetPeriodTypesAction" class="org.hisp.dhis.dataadmin.action.databrowser.GetPeriodTypesAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.databrowser.GetPeriodTypesAction"
+ class="org.hisp.dhis.dataadmin.action.databrowser.GetPeriodTypesAction"
+ scope="prototype">
<property name="periodService" ref="org.hisp.dhis.period.PeriodService" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.databrowser.ExportResultAction" class="org.hisp.dhis.dataadmin.action.databrowser.ExportResultAction"
- scope="prototype" />
+ <bean id="org.hisp.dhis.dataadmin.action.databrowser.ExportResultAction"
+ class="org.hisp.dhis.dataadmin.action.databrowser.ExportResultAction"
+ scope="prototype" />
<!-- Organisation unit merge -->
- <bean id="org.hisp.dhis.dataadmin.action.organisationunitmerge.MergeOrganisationUnitsAction" class="org.hisp.dhis.dataadmin.action.organisationunitmerge.MergeOrganisationUnitsAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.organisationunitmerge.MergeOrganisationUnitsAction"
+ class="org.hisp.dhis.dataadmin.action.organisationunitmerge.MergeOrganisationUnitsAction"
+ scope="prototype">
<property name="dataMergeService" ref="org.hisp.dhis.datamerge.DataMergeService" />
<property name="organisationUnitService" ref="org.hisp.dhis.organisationunit.OrganisationUnitService" />
</bean>
<!-- Prune Organisation unit -->
- <bean id="org.hisp.dhis.dataadmin.action.dataprune.PruneOrganisationUnitAction" class="org.hisp.dhis.dataadmin.action.dataprune.PruneOrganisationUnitAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.dataprune.PruneOrganisationUnitAction"
+ class="org.hisp.dhis.dataadmin.action.dataprune.PruneOrganisationUnitAction"
+ scope="prototype">
<property name="dataPruneService" ref="org.hisp.dhis.dataprune.DataPruneService" />
<property name="selectionTreeManager" ref="org.hisp.dhis.oust.manager.SelectionTreeManager" />
</bean>
<!-- Duplicate data elimination -->
- <bean id="org.hisp.dhis.dataadmin.action.duplicatedataelimination.EliminateDuplicateDataAction" class="org.hisp.dhis.dataadmin.action.duplicatedataelimination.EliminateDuplicateDataAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.duplicatedataelimination.EliminateDuplicateDataAction"
+ class="org.hisp.dhis.dataadmin.action.duplicatedataelimination.EliminateDuplicateDataAction"
+ scope="prototype">
<property name="dataMergeService" ref="org.hisp.dhis.datamerge.DataMergeService" />
<property name="dataElementService" ref="org.hisp.dhis.dataelement.DataElementService" />
<property name="categoryService" ref="org.hisp.dhis.dataelement.DataElementCategoryService" />
</bean>
<!-- Data Element Zero Value Storage Management -->
- <bean id="org.hisp.dhis.dataadmin.action.zerovaluestorage.OpenDataElementsZeroIsSignificantManagerAction" class="org.hisp.dhis.dataadmin.action.zerovaluestorage.OpenDataElementsZeroIsSignificantManagerAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.zerovaluestorage.OpenDataElementsZeroIsSignificantManagerAction"
+ class="org.hisp.dhis.dataadmin.action.zerovaluestorage.OpenDataElementsZeroIsSignificantManagerAction"
+ scope="prototype">
<property name="dataElementService" ref="org.hisp.dhis.dataelement.DataElementService" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.zerovaluestorage.UpdateZeroIsSignificantForDataElementsAction" class="org.hisp.dhis.dataadmin.action.zerovaluestorage.UpdateZeroIsSignificantForDataElementsAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.zerovaluestorage.UpdateZeroIsSignificantForDataElementsAction"
+ class="org.hisp.dhis.dataadmin.action.zerovaluestorage.UpdateZeroIsSignificantForDataElementsAction"
+ scope="prototype">
<property name="dataElementService" ref="org.hisp.dhis.dataelement.DataElementService" />
</bean>
<!-- Data archive -->
- <bean id="org.hisp.dhis.dataadmin.action.dataarchive.ArchiveDataAction" class="org.hisp.dhis.dataadmin.action.dataarchive.ArchiveDataAction"
- scope="prototype">
- <property name="dataArchiveService" ref="org.hisp.dhis.dataarchive.DataArchiveService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.dataarchive.ArchivePatientDataAction" class="org.hisp.dhis.dataadmin.action.dataarchive.ArchivePatientDataAction"
- scope="prototype">
- <property name="dataArchiveService" ref="org.hisp.dhis.dataarchive.DataArchiveService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.dataarchive.GetNumberOfOverlapsAction" class="org.hisp.dhis.dataadmin.action.dataarchive.GetNumberOfOverlapsAction"
- scope="prototype">
- <property name="dataArchiveService" ref="org.hisp.dhis.dataarchive.DataArchiveService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.dataarchive.GetNumberOfOverlapingPatientValuesAction" class="org.hisp.dhis.dataadmin.action.dataarchive.GetNumberOfOverlapingPatientValuesAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.dataarchive.ArchiveDataAction"
+ class="org.hisp.dhis.dataadmin.action.dataarchive.ArchiveDataAction"
+ scope="prototype">
+ <property name="dataArchiveService" ref="org.hisp.dhis.dataarchive.DataArchiveService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.dataarchive.ArchivePatientDataAction"
+ class="org.hisp.dhis.dataadmin.action.dataarchive.ArchivePatientDataAction"
+ scope="prototype">
+ <property name="dataArchiveService" ref="org.hisp.dhis.dataarchive.DataArchiveService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.dataarchive.GetNumberOfOverlapsAction"
+ class="org.hisp.dhis.dataadmin.action.dataarchive.GetNumberOfOverlapsAction"
+ scope="prototype">
+ <property name="dataArchiveService" ref="org.hisp.dhis.dataarchive.DataArchiveService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.dataarchive.GetNumberOfOverlapingPatientValuesAction"
+ class="org.hisp.dhis.dataadmin.action.dataarchive.GetNumberOfOverlapingPatientValuesAction"
+ scope="prototype">
<property name="dataArchiveService" ref="org.hisp.dhis.dataarchive.DataArchiveService" />
</bean>
<!-- Min/Max validation -->
- <bean id="org.hisp.dhis.dataadmin.action.minmaxvalidation.GetMinMaxValidationParamsAction" class="org.hisp.dhis.dataadmin.action.minmaxvalidation.GetMinMaxValidationParamsAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.minmaxvalidation.GetMinMaxValidationParamsAction"
+ class="org.hisp.dhis.dataadmin.action.minmaxvalidation.GetMinMaxValidationParamsAction"
+ scope="prototype">
<property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.minmaxvalidation.GenerateMinMaxValuesAction" class="org.hisp.dhis.dataadmin.action.minmaxvalidation.GenerateMinMaxValuesAction">
+ <bean id="org.hisp.dhis.dataadmin.action.minmaxvalidation.GenerateMinMaxValuesAction"
+ class="org.hisp.dhis.dataadmin.action.minmaxvalidation.GenerateMinMaxValuesAction">
<property name="selectionTreeManager">
<ref bean="org.hisp.dhis.oust.manager.SelectionTreeManager" />
</property>
<property name="dataSetService">
<ref bean="org.hisp.dhis.dataset.DataSetService" />
</property>
- <property name="minMaxValuesGenerationService" ref="org.hisp.dhis.minmax.validation.MinMaxValuesGenerationService" />
+ <property name="minMaxValuesGenerationService"
+ ref="org.hisp.dhis.minmax.validation.MinMaxValuesGenerationService" />
<property name="minMaxDataElementService" ref="org.hisp.dhis.minmax.MinMaxDataElementService" />
<property name="systemSettingManager">
<ref bean="org.hisp.dhis.setting.SystemSettingManager" />
</property>
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.minmaxvalidation.RemoveMinMaxValueAction" class="org.hisp.dhis.dataadmin.action.minmaxvalidation.RemoveMinMaxValueAction">
+ <bean id="org.hisp.dhis.dataadmin.action.minmaxvalidation.RemoveMinMaxValueAction"
+ class="org.hisp.dhis.dataadmin.action.minmaxvalidation.RemoveMinMaxValueAction">
<property name="selectionTreeManager">
<ref bean="org.hisp.dhis.oust.manager.SelectionTreeManager" />
</property>
<property name="dataSetService">
<ref bean="org.hisp.dhis.dataset.DataSetService" />
</property>
- <property name="minMaxValuesGenerationService" ref="org.hisp.dhis.minmax.validation.MinMaxValuesGenerationService" />
+ <property name="minMaxValuesGenerationService"
+ ref="org.hisp.dhis.minmax.validation.MinMaxValuesGenerationService" />
<property name="minMaxDataElementService" ref="org.hisp.dhis.minmax.MinMaxDataElementService" />
<property name="systemSettingManager">
<ref bean="org.hisp.dhis.setting.SystemSettingManager" />
@@ -205,207 +235,256 @@
<!-- Sql View -->
- <bean id="org.hisp.dhis.dataadmin.action.sqlview.GetSqlViewObjectAction" class="org.hisp.dhis.dataadmin.action.sqlview.GetSqlViewObjectAction"
- scope="prototype">
- <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.sqlview.GetSqlViewListAction" class="org.hisp.dhis.dataadmin.action.sqlview.GetSqlViewListAction"
- scope="prototype">
- <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.sqlview.ValidateAddUpdateSqlViewAction" class="org.hisp.dhis.dataadmin.action.sqlview.ValidateAddUpdateSqlViewAction"
- scope="prototype">
- <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.sqlview.AddSqlViewAction" class="org.hisp.dhis.dataadmin.action.sqlview.AddSqlViewAction"
- scope="prototype">
- <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.sqlview.UpdateSqlViewAction" class="org.hisp.dhis.dataadmin.action.sqlview.UpdateSqlViewAction"
- scope="prototype">
- <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.sqlview.RemoveSqlViewAction" class="org.hisp.dhis.dataadmin.action.sqlview.RemoveSqlViewAction"
- scope="prototype">
- <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.sqlview.ExecuteSqlViewQueryAction" class="org.hisp.dhis.dataadmin.action.sqlview.ExecuteSqlViewQueryAction"
- scope="prototype">
- <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.sqlview.CheckViewTableExistenceAction" class="org.hisp.dhis.dataadmin.action.sqlview.CheckViewTableExistenceAction"
- scope="prototype">
- <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.sqlview.ShowUpSqlViewTableAction" class="org.hisp.dhis.dataadmin.action.sqlview.ShowUpSqlViewTableAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.sqlview.GetSqlViewObjectAction"
+ class="org.hisp.dhis.dataadmin.action.sqlview.GetSqlViewObjectAction"
+ scope="prototype">
+ <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.sqlview.GetSqlViewListAction"
+ class="org.hisp.dhis.dataadmin.action.sqlview.GetSqlViewListAction"
+ scope="prototype">
+ <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.sqlview.ValidateAddUpdateSqlViewAction"
+ class="org.hisp.dhis.dataadmin.action.sqlview.ValidateAddUpdateSqlViewAction"
+ scope="prototype">
+ <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.sqlview.AddSqlViewAction"
+ class="org.hisp.dhis.dataadmin.action.sqlview.AddSqlViewAction"
+ scope="prototype">
+ <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.sqlview.UpdateSqlViewAction"
+ class="org.hisp.dhis.dataadmin.action.sqlview.UpdateSqlViewAction"
+ scope="prototype">
+ <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.sqlview.RemoveSqlViewAction"
+ class="org.hisp.dhis.dataadmin.action.sqlview.RemoveSqlViewAction"
+ scope="prototype">
+ <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.sqlview.ExecuteSqlViewQueryAction"
+ class="org.hisp.dhis.dataadmin.action.sqlview.ExecuteSqlViewQueryAction"
+ scope="prototype">
+ <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.sqlview.CheckViewTableExistenceAction"
+ class="org.hisp.dhis.dataadmin.action.sqlview.CheckViewTableExistenceAction"
+ scope="prototype">
+ <property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.sqlview.ShowUpSqlViewTableAction"
+ class="org.hisp.dhis.dataadmin.action.sqlview.ShowUpSqlViewTableAction"
+ scope="prototype">
<property name="sqlViewService" ref="org.hisp.dhis.sqlview.SqlViewService" />
</bean>
<!-- Constant Name -->
- <bean id="org.hisp.dhis.dataadmin.action.constant.AddConstantAction" class="org.hisp.dhis.dataadmin.action.constant.AddConstantAction"
- scope="prototype">
- <property name="constantService" ref="org.hisp.dhis.constant.ConstantService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.constant.UpdateConstantAction" class="org.hisp.dhis.dataadmin.action.constant.UpdateConstantAction"
- scope="prototype">
- <property name="constantService" ref="org.hisp.dhis.constant.ConstantService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.constant.ValidateConstantAction" class="org.hisp.dhis.dataadmin.action.constant.ValidateConstantAction"
- scope="prototype">
- <property name="constantService" ref="org.hisp.dhis.constant.ConstantService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.constant.RemoveConstantAction" class="org.hisp.dhis.dataadmin.action.constant.RemoveConstantAction"
- scope="prototype">
- <property name="constantService" ref="org.hisp.dhis.constant.ConstantService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.constant.GetConstantAction" class="org.hisp.dhis.dataadmin.action.constant.GetConstantAction"
- scope="prototype">
- <property name="constantService" ref="org.hisp.dhis.constant.ConstantService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.constant.GetConstantListAction" class="org.hisp.dhis.dataadmin.action.constant.GetConstantListAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.constant.AddConstantAction"
+ class="org.hisp.dhis.dataadmin.action.constant.AddConstantAction"
+ scope="prototype">
+ <property name="constantService" ref="org.hisp.dhis.constant.ConstantService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.constant.UpdateConstantAction"
+ class="org.hisp.dhis.dataadmin.action.constant.UpdateConstantAction"
+ scope="prototype">
+ <property name="constantService" ref="org.hisp.dhis.constant.ConstantService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.constant.ValidateConstantAction"
+ class="org.hisp.dhis.dataadmin.action.constant.ValidateConstantAction"
+ scope="prototype">
+ <property name="constantService" ref="org.hisp.dhis.constant.ConstantService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.constant.RemoveConstantAction"
+ class="org.hisp.dhis.dataadmin.action.constant.RemoveConstantAction"
+ scope="prototype">
+ <property name="constantService" ref="org.hisp.dhis.constant.ConstantService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.constant.GetConstantAction"
+ class="org.hisp.dhis.dataadmin.action.constant.GetConstantAction"
+ scope="prototype">
+ <property name="constantService" ref="org.hisp.dhis.constant.ConstantService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.constant.GetConstantListAction"
+ class="org.hisp.dhis.dataadmin.action.constant.GetConstantListAction"
+ scope="prototype">
<property name="constantService" ref="org.hisp.dhis.constant.ConstantService" />
</bean>
<!-- DataSet LockExceptions -->
- <bean id="org.hisp.dhis.dataadmin.action.lockexception.GetLockExceptionListAction" class="org.hisp.dhis.dataadmin.action.lockexception.GetLockExceptionListAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.lockexception.GetLockExceptionListAction"
+ class="org.hisp.dhis.dataadmin.action.lockexception.GetLockExceptionListAction"
+ scope="prototype">
<property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.lockexception.AddLockExceptionAction" class="org.hisp.dhis.dataadmin.action.lockexception.AddLockExceptionAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.lockexception.AddLockExceptionAction"
+ class="org.hisp.dhis.dataadmin.action.lockexception.AddLockExceptionAction"
+ scope="prototype">
<property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
<property name="organisationUnitService" ref="org.hisp.dhis.organisationunit.OrganisationUnitService" />
<property name="periodService" ref="org.hisp.dhis.period.PeriodService" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.lockexception.GetLockExceptionAction" class="org.hisp.dhis.dataadmin.action.lockexception.GetLockExceptionAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.lockexception.GetLockExceptionAction"
+ class="org.hisp.dhis.dataadmin.action.lockexception.GetLockExceptionAction"
+ scope="prototype">
<property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.lockexception.GetLockExceptionFormAction" class="org.hisp.dhis.dataadmin.action.lockexception.GetLockExceptionFormAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.lockexception.GetLockExceptionFormAction"
+ class="org.hisp.dhis.dataadmin.action.lockexception.GetLockExceptionFormAction"
+ scope="prototype">
<property name="currentUserService" ref="org.hisp.dhis.user.CurrentUserService" />
<property name="organisationUnitService" ref="org.hisp.dhis.organisationunit.OrganisationUnitService" />
<property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
<property name="selectionTreeManager" ref="org.hisp.dhis.oust.manager.SelectionTreeManager" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.lockexception.RemoveLockExceptionAction" class="org.hisp.dhis.dataadmin.action.lockexception.RemoveLockExceptionAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.lockexception.RemoveLockExceptionAction"
+ class="org.hisp.dhis.dataadmin.action.lockexception.RemoveLockExceptionAction"
+ scope="prototype">
<property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.lockexception.GetDataSetsAction" class="org.hisp.dhis.dataadmin.action.lockexception.GetDataSetsAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.lockexception.GetDataSetsAction"
+ class="org.hisp.dhis.dataadmin.action.lockexception.GetDataSetsAction"
+ scope="prototype">
<property name="currentUserService" ref="org.hisp.dhis.user.CurrentUserService" />
<property name="organisationUnitService" ref="org.hisp.dhis.organisationunit.OrganisationUnitService" />
</bean>
- <bean id="org.hisp.dhis.dataadmin.action.lockexception.GetPeriodsAction" class="org.hisp.dhis.dataadmin.action.lockexception.GetPeriodsAction"
- scope="prototype">
- <property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
+ <bean id="org.hisp.dhis.dataadmin.action.lockexception.GetPeriodsAction"
+ class="org.hisp.dhis.dataadmin.action.lockexception.GetPeriodsAction"
+ scope="prototype">
+ <property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.lockexception.PrepareBatchRemovalAction"
+ class="org.hisp.dhis.dataadmin.action.lockexception.PrepareBatchRemovalAction"
+ scope="prototype">
+ <property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.lockexception.BatchRemoveLockExceptionsAction"
+ class="org.hisp.dhis.dataadmin.action.lockexception.BatchRemoveLockExceptionsAction" scope="prototype">
+ <property name="dataSetService" ref="org.hisp.dhis.dataset.DataSetService" />
+ <property name="periodService" ref="org.hisp.dhis.period.PeriodService" />
</bean>
<!-- Dynamic Attributes -->
- <bean id="org.hisp.dhis.dataadmin.action.attribute.GetAttributeListAction" class="org.hisp.dhis.dataadmin.action.attribute.GetAttributeListAction"
- scope="prototype">
- <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.attribute.GetAttributeListSortOrderAction" class="org.hisp.dhis.dataadmin.action.attribute.GetAttributeListSortOrderAction"
- scope="prototype">
- <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.attribute.GetAttributeAction" class="org.hisp.dhis.dataadmin.action.attribute.GetAttributeAction"
- scope="prototype">
- <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.attribute.ValidateAttributeAction" class="org.hisp.dhis.dataadmin.action.attribute.ValidateAttributeAction"
- scope="prototype">
- <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.attribute.AddAttributeAction" class="org.hisp.dhis.dataadmin.action.attribute.AddAttributeAction"
- scope="prototype">
- <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.attribute.SaveAttributeSortOrderAction" class="org.hisp.dhis.dataadmin.action.attribute.SaveAttributeSortOrderAction"
- scope="prototype">
- <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.attribute.UpdateAttributeAction" class="org.hisp.dhis.dataadmin.action.attribute.UpdateAttributeAction"
- scope="prototype">
- <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.attribute.RemoveAttributeAction" class="org.hisp.dhis.dataadmin.action.attribute.RemoveAttributeAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.attribute.GetAttributeListAction"
+ class="org.hisp.dhis.dataadmin.action.attribute.GetAttributeListAction"
+ scope="prototype">
+ <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.attribute.GetAttributeListSortOrderAction"
+ class="org.hisp.dhis.dataadmin.action.attribute.GetAttributeListSortOrderAction"
+ scope="prototype">
+ <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.attribute.GetAttributeAction"
+ class="org.hisp.dhis.dataadmin.action.attribute.GetAttributeAction"
+ scope="prototype">
+ <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.attribute.ValidateAttributeAction"
+ class="org.hisp.dhis.dataadmin.action.attribute.ValidateAttributeAction"
+ scope="prototype">
+ <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.attribute.AddAttributeAction"
+ class="org.hisp.dhis.dataadmin.action.attribute.AddAttributeAction"
+ scope="prototype">
+ <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.attribute.SaveAttributeSortOrderAction"
+ class="org.hisp.dhis.dataadmin.action.attribute.SaveAttributeSortOrderAction"
+ scope="prototype">
+ <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.attribute.UpdateAttributeAction"
+ class="org.hisp.dhis.dataadmin.action.attribute.UpdateAttributeAction"
+ scope="prototype">
+ <property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.attribute.RemoveAttributeAction"
+ class="org.hisp.dhis.dataadmin.action.attribute.RemoveAttributeAction"
+ scope="prototype">
<property name="attributeService" ref="org.hisp.dhis.attribute.AttributeService" />
</bean>
<!-- Scheduling -->
- <bean id="org.hisp.dhis.dataadmin.action.scheduling.ScheduleTasksAction" class="org.hisp.dhis.dataadmin.action.scheduling.ScheduleTasksAction"
- scope="prototype">
+ <bean id="org.hisp.dhis.dataadmin.action.scheduling.ScheduleTasksAction"
+ class="org.hisp.dhis.dataadmin.action.scheduling.ScheduleTasksAction"
+ scope="prototype">
<property name="systemSettingManager" ref="org.hisp.dhis.setting.SystemSettingManager" />
<property name="schedulingManager" ref="org.hisp.dhis.scheduling.SchedulingManager" />
- <property name="organisationUnitService" ref="org.hisp.dhis.organisationunit.OrganisationUnitService" />
+ <property name="organisationUnitService" ref="org.hisp.dhis.organisationunit.OrganisationUnitService" />
</bean>
-
+
<!-- OptionSet -->
-
- <bean id="org.hisp.dhis.dataadmin.action.option.GetOptionSetListAction" class="org.hisp.dhis.dataadmin.action.option.GetOptionSetListAction"
- scope="prototype">
- <property name="optionService" ref="org.hisp.dhis.option.OptionService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.option.AddOptionSetAction" class="org.hisp.dhis.dataadmin.action.option.AddOptionSetAction"
- scope="prototype">
- <property name="optionService" ref="org.hisp.dhis.option.OptionService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.option.UpdateOptionSetAction" class="org.hisp.dhis.dataadmin.action.option.UpdateOptionSetAction"
- scope="prototype">
- <property name="optionService" ref="org.hisp.dhis.option.OptionService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.option.RemoveOptionSetAction" class="org.hisp.dhis.dataadmin.action.option.RemoveOptionSetAction"
- scope="prototype">
- <property name="optionService" ref="org.hisp.dhis.option.OptionService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.option.GetOptionSetAction" class="org.hisp.dhis.dataadmin.action.option.GetOptionSetAction"
- scope="prototype">
- <property name="optionService" ref="org.hisp.dhis.option.OptionService" />
- </bean>
-
- <bean id="org.hisp.dhis.dataadmin.action.option.ValidateOptionSetAction" class="org.hisp.dhis.dataadmin.action.option.ValidateOptionSetAction"
- scope="prototype">
- <property name="optionService" ref="org.hisp.dhis.option.OptionService" />
- </bean>
-
+
+ <bean id="org.hisp.dhis.dataadmin.action.option.GetOptionSetListAction"
+ class="org.hisp.dhis.dataadmin.action.option.GetOptionSetListAction"
+ scope="prototype">
+ <property name="optionService" ref="org.hisp.dhis.option.OptionService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.option.AddOptionSetAction"
+ class="org.hisp.dhis.dataadmin.action.option.AddOptionSetAction"
+ scope="prototype">
+ <property name="optionService" ref="org.hisp.dhis.option.OptionService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.option.UpdateOptionSetAction"
+ class="org.hisp.dhis.dataadmin.action.option.UpdateOptionSetAction"
+ scope="prototype">
+ <property name="optionService" ref="org.hisp.dhis.option.OptionService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.option.RemoveOptionSetAction"
+ class="org.hisp.dhis.dataadmin.action.option.RemoveOptionSetAction"
+ scope="prototype">
+ <property name="optionService" ref="org.hisp.dhis.option.OptionService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.option.GetOptionSetAction"
+ class="org.hisp.dhis.dataadmin.action.option.GetOptionSetAction"
+ scope="prototype">
+ <property name="optionService" ref="org.hisp.dhis.option.OptionService" />
+ </bean>
+
+ <bean id="org.hisp.dhis.dataadmin.action.option.ValidateOptionSetAction"
+ class="org.hisp.dhis.dataadmin.action.option.ValidateOptionSetAction"
+ scope="prototype">
+ <property name="optionService" ref="org.hisp.dhis.option.OptionService" />
+ </bean>
+
</beans>
=== 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 2012-02-08 13:38:13 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/org/hisp/dhis/dataadmin/i18n_module.properties 2012-02-14 02:58:08 +0000
@@ -394,9 +394,13 @@
must_include_option = Please include one or more category options
edit_option_set = Edit option set
number_of_members = The number of members
-object_not_deleted_associated_by_objects=Object not deleted because it is associated by objects of type >>>>>>> MERGE-SOURCE
+object_not_deleted_associated_by_objects=Object not deleted because it is associated by objects of type
lock_exception_management=Lock Exception Management
lock_exception=Lock Exception
confirm_delete_lock_exception=Do you want to delete this lock exception?
+confirm_delete_lock_exceptions=Do you want to delete lock exceptions with this configuration?
create_new_lock_exception=Create new lock exception
edit_lock_exception=Edit lock exception
+lock_exception_batch_removal=Lock exception batch removal
+back_to_lock_exceptions=Back to lock exception
+batch_delete=Batch deletion
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/struts.xml'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/struts.xml 2012-02-13 19:27:46 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/resources/struts.xml 2012-02-14 02:58:08 +0000
@@ -496,13 +496,6 @@
<param name="requiredAuthorities">F_DATASET_ADD</param>
</action>
- <action name="removeLockException" class="org.hisp.dhis.dataadmin.action.lockexception.RemoveLockExceptionAction">
- <result name="success" type="velocity-json">/dhis-web-commons/ajax/jsonResponseSuccess.vm</result>
- <result name="error" type="velocity-json">/dhis-web-commons/ajax/jsonResponseError.vm</result>
- <param name="onExceptionReturn">plainTextError</param>
- <param name="requiredAuthorities">F_DATASET_DELETE</param>
- </action>
-
<action name="getDataSets" class="org.hisp.dhis.dataadmin.action.lockexception.GetDataSetsAction">
<result name="success" type="velocity-json">jsonDataSets.vm</result>
<param name="onExceptionReturn">plainTextError</param>
@@ -518,6 +511,27 @@
<param name="onExceptionReturn">plainTextError</param>
</action>
+ <action name="showLockExceptionBatchRemoval" class="org.hisp.dhis.dataadmin.action.lockexception.PrepareBatchRemovalAction">
+ <result name="success" type="velocity">/main.vm</result>
+ <param name="menu">/dhis-web-maintenance-dataadmin/menu.vm</param>
+ <param name="page">/dhis-web-maintenance-dataadmin/removeLockExceptionBatch.vm</param>
+ <param name="requiredAuthorities">F_DATASET_DELETE</param>
+ </action>
+
+ <action name="removeLockException" class="org.hisp.dhis.dataadmin.action.lockexception.RemoveLockExceptionAction">
+ <result name="success" type="velocity-json">/dhis-web-commons/ajax/jsonResponseSuccess.vm</result>
+ <result name="error" type="velocity-json">/dhis-web-commons/ajax/jsonResponseError.vm</result>
+ <param name="onExceptionReturn">plainTextError</param>
+ <param name="requiredAuthorities">F_DATASET_DELETE</param>
+ </action>
+
+ <action name="batchRemoveLockException" class="org.hisp.dhis.dataadmin.action.lockexception.BatchRemoveLockExceptionsAction">
+ <result name="success" type="velocity-json">/dhis-web-commons/ajax/jsonResponseSuccess.vm</result>
+ <result name="error" type="velocity-json">/dhis-web-commons/ajax/jsonResponseError.vm</result>
+ <param name="onExceptionReturn">plainTextError</param>
+ <param name="requiredAuthorities">F_DATASET_DELETE</param>
+ </action>
+
<!-- Dynamic Attributes -->
<action name="attribute" class="org.hisp.dhis.dataadmin.action.attribute.GetAttributeListAction">
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/javascript/lockException.js'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/javascript/lockException.js 2012-02-13 04:51:23 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/javascript/lockException.js 2012-02-14 02:58:08 +0000
@@ -55,9 +55,7 @@
}
function periodChanged( e ) {
- var periods = jQuery("#periods");
-
- if ( periods.attr("disabled") ) {
+ if ( jQuery("#periods").attr("disabled") ) {
jQuery("#submit").attr("disabled", true);
} else {
jQuery("#submit").removeAttr("disabled");
@@ -65,13 +63,9 @@
}
function resetDataSets() {
- var option = jQuery("<option>-- Please select an organisation unit with a dataset --</option>");
- jQuery("#dataSets").append(option);
- jQuery("#dataSets").attr("disabled", true);
+ jQuery("#dataSets").append("<option>-- Please select an organisation unit with a dataset --</option>").attr("disabled", true);
}
function resetPeriods() {
- var option = jQuery("<option>-- Please select a dataset --</option>");
- jQuery("#periods").append(option);
- jQuery("#periods").attr("disabled", true);
+ jQuery("#periods").append("<option>-- Please select a dataset --</option>").attr("disabled", true);
}
=== modified file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/lockException.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/lockException.vm 2012-02-13 04:51:23 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/lockException.vm 2012-02-14 02:58:08 +0000
@@ -32,7 +32,8 @@
<tr>
<td>#filterDiv( "lockException" )</td>
<td colspan="4" style="text-align:right">
- <input type="button" value="$i18n.getString( 'add_new' )" onclick="window.location.href='showAddLockExceptionForm.action'" style="width:80px"/>
+ <input type="button" value="$i18n.getString( 'batch_delete' )" onclick="window.location.href='showLockExceptionBatchRemoval.action'" style="width:100px"/>
+ <input type="button" value="$i18n.getString( 'add_new' )" onclick="window.location.href='showAddLockExceptionForm.action'" style="width:80px"/>
</td>
</tr>
</table>
=== added file 'dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/removeLockExceptionBatch.vm'
--- dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/removeLockExceptionBatch.vm 1970-01-01 00:00:00 +0000
+++ dhis-2/dhis-web/dhis-web-maintenance/dhis-web-maintenance-dataadmin/src/main/webapp/dhis-web-maintenance-dataadmin/removeLockExceptionBatch.vm 2012-02-14 02:58:08 +0000
@@ -0,0 +1,81 @@
+<script type="text/javascript">
+ var i18n_confirm_deletes = '$encoder.jsEscape( $i18n.getString( "confirm_delete_lock_exceptions" ) , "'")';
+
+ function removeLockExceptions( dataSetId, periodId, name )
+ {
+ var result = window.confirm( i18n_confirm_deletes + "\n\n" + name );
+
+ if(result)
+ {
+ $.postJSON(
+ "batchRemoveLockException.action",
+ {
+ "dataSetId": dataSetId,
+ "periodId": periodId
+ },
+ function( json )
+ {
+ if ( json.response == "success" )
+ {
+ jQuery( "tr#ds" + dataSetId + "p" + periodId ).remove();
+
+ jQuery( "table.listTable tbody tr" ).removeClass( "listRow listAlternateRow" );
+ jQuery( "table.listTable tbody tr:odd" ).addClass( "listAlternateRow" );
+ jQuery( "table.listTable tbody tr:even" ).addClass( "listRow" );
+ jQuery( "table.listTable tbody" ).trigger("update");
+
+ showSuccessMessage( i18n_delete_success );
+ }
+ else if ( json.response == "error" )
+ {
+ showWarningMessage( json.message );
+ }
+ }
+ );
+ }
+ }
+
+</script>
+
+<h3>$i18n.getString( "lock_exception_batch_removal" )</h3>
+
+<table class="mainPageTable">
+ <tr>
+ <td style="vertical-align:top">
+ <table width="100%">
+ <tr>
+ <td colspan="4" style="text-align:right">
+ <input type="button" value="$i18n.getString( 'back_to_lock_exceptions' )" onclick="window.location.href='lockException.action'" style="width:160px"/>
+ </td>
+ </tr>
+ </table>
+ <table class="listTable" id="listTable">
+ <col/>
+ <col width="96px"/>
+ <thead>
+ <tr>
+ <th>$i18n.getString( "name" )</th>
+ <th class="{sorter: false}">$i18n.getString( "operations" )</th>
+ </tr>
+ </thead>
+ <tbody id="list">
+
+ #foreach( $lockException in $lockExceptions )
+ <tr id="ds${lockException.dataSet.id}p${lockException.period.id}">
+ #set( $name = "$encoder.htmlEncode( $lockException.dataSet.name ) - $encoder.htmlEncode( $lockException.period.name )" )
+ <td>$name</td>
+ <td style="text-align:right">
+ <a href="javascript:removeLockExceptions($lockException.dataSet.id, $lockException.period.id, '$name')" title="$i18n.getString( 'remove' )"><img src="../images/delete.png" alt="$i18n.getString( 'remove' )"/></a>
+ </td>
+ </tr>
+ #end
+
+ </tbody>
+ </table>
+ </td>
+
+ <td style="width:20em; padding-left:2em; vertical-align:top">
+ </td>
+
+ </tr>
+</table>