aboutsummaryrefslogtreecommitdiff
path: root/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java
diff options
context:
space:
mode:
Diffstat (limited to 'id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java')
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java19
1 files changed, 12 insertions, 7 deletions
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java
index 9c1cb90e0..5a9787069 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java
@@ -142,7 +142,7 @@ public class BasicOAAction extends BasicAction {
session.setAttribute(Constants.SESSION_BKUFORMPREVIEW, null);
}
- protected OnlineApplication postProcessSaveOnlineApplication(OnlineApplication onlineapplication ) throws BasicOAActionException {
+ protected OnlineApplication postProcessSaveOnlineApplication(OnlineApplication onlineapplication, boolean persistOA) throws BasicOAActionException {
if (onlineapplication == null) {
onlineapplication = new OnlineApplication();
onlineapplication.setIsNew(true);
@@ -186,7 +186,7 @@ public class BasicOAAction extends BasicAction {
}
//save OA configuration
- String error = saveOAConfigToDatabase(onlineapplication);
+ String error = saveOAConfigToDatabase(onlineapplication, persistOA);
if (MiscUtil.isNotEmpty(error)) {
log.warn("OA configuration can not be stored!");
addActionError(error);
@@ -395,15 +395,13 @@ public class BasicOAAction extends BasicAction {
}
}
- private String saveOAConfigToDatabase(OnlineApplication dboa) {
+ private String saveOAConfigToDatabase(OnlineApplication dboa, boolean persistOA) {
for (IOnlineApplicationData form : formList.values())
form.store(dboa, authUser, request);
try {
- if (dboa.isIsNew()) {
- ConfigurationDBUtils.save(dboa);
-
+ if (dboa.isIsNew()) {
if (!authUser.isAdmin()) {
UserDatabase user = ConfigurationDBRead.getUserWithID(authUser.getUserID());
@@ -412,9 +410,16 @@ public class BasicOAAction extends BasicAction {
useroas.add(dboa);
ConfigurationDBUtils.saveOrUpdate(user);
+
+ } else {
+ if (persistOA)
+ ConfigurationDBUtils.save(dboa);
+
}
+
} else
- ConfigurationDBUtils.saveOrUpdate(dboa);
+ if (persistOA)
+ ConfigurationDBUtils.saveOrUpdate(dboa);
} catch (MOADatabaseException e) {
log.warn("Online-Application can not be stored.", e);