From 0fabc92905569da5b257c4b3df84a662f84c04c3 Mon Sep 17 00:00:00 2001
From: Rick Herrick <jrherrick@wustl.edu>
Date: Wed, 21 Sep 2016 17:18:25 -0500
Subject: [PATCH] Checked for allowDataDeletion ahead of template population.
 If true, don't populate template because you don't want to restore those
 values.

---
 .../xnat/restlet/resources/SubjAssessmentResource.java    | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/src/main/java/org/nrg/xnat/restlet/resources/SubjAssessmentResource.java b/src/main/java/org/nrg/xnat/restlet/resources/SubjAssessmentResource.java
index cab1d522..7c15208a 100644
--- a/src/main/java/org/nrg/xnat/restlet/resources/SubjAssessmentResource.java
+++ b/src/main/java/org/nrg/xnat/restlet/resources/SubjAssessmentResource.java
@@ -168,8 +168,10 @@ public class SubjAssessmentResource extends SubjAssessmentAbst {
 
 		final UserI user = getUser();
 		try {
+			final boolean allowDataDeletion = isQueryVariableTrue("allowDataDeletion");
+
 			XFTItem template=null;
-			if (existing!=null){
+			if (existing!=null && !allowDataDeletion){
 				template=existing.getItem().getCurrentDBVersion();
 			}
 
@@ -497,10 +499,6 @@ public class SubjAssessmentResource extends SubjAssessmentAbst {
 						return;
 					}
 					
-					boolean allowDataDeletion=false;
-					if(this.getQueryVariable("allowDataDeletion")!=null && this.getQueryVariable("allowDataDeletion").equals("true")){
-						allowDataDeletion=true;
-					}
 					PersistentWorkflowI wrk= WorkflowUtils.buildOpenWorkflow(user, expt.getItem(),newEventInstance(EventUtils.CATEGORY.DATA, EventUtils.getAddModifyAction(expt.getXSIType(), (existing==null))));
 					EventMetaI c=wrk.buildEvent();
 					
-- 
GitLab