@@ -108,21 +108,47 @@ public final String addNewTopLevelProjectForm(
108
108
Locale locale , Model model
109
109
){
110
110
log .info ("/project/add/new/project (GET)" );
111
- return addNewProject (rootProjectId , userSession , locale , model );
111
+ addNewProject (rootProjectId , userSession , locale , model );
112
+ return "project/addToplevel" ;
112
113
}
113
114
114
115
115
- @ RequestMapping (path = "/add/new/project" , method = RequestMethod .POST )
116
+ @ RequestMapping (path = "/add/new/project" , method = { RequestMethod .POST , RequestMethod . PUT } )
116
117
public final String addNewTopLevelProjectSave (
117
118
@ Valid Project project ,
118
119
@ ModelAttribute ("userSession" ) UserSessionBean userSession ,
119
120
BindingResult result ,
120
121
Locale locale , Model model
121
122
){
122
123
log .info ("/project/add/new/project (POST)" );
123
- return addNewProjectPersist ( rootProjectId , userSession , project , result , locale , model );
124
+ return addNewProjectPersist ( rootProjectId , userSession , project ,
125
+ result , locale , model , "project/addToplevel" );
124
126
}
125
127
128
+ @ RequestMapping (path = "/{projectId}/add/new/project" , method = RequestMethod .GET )
129
+ public final String addNewSubProjectGet (
130
+ @ PathVariable long projectId ,
131
+ @ ModelAttribute ("userSession" ) UserSessionBean userSession ,
132
+ Locale locale , Model model
133
+ ) {
134
+ log .info ("private addNewProjectGet (GET) projectId=" +projectId );
135
+ addNewProject (projectId , userSession , locale , model );
136
+ return "project/add" ;
137
+ }
138
+
139
+ @ RequestMapping (path = "/{projectId}/add/new/project" , method = {RequestMethod .POST , RequestMethod .PUT })
140
+ public final String addNewSubProjectPost (
141
+ @ PathVariable long projectId ,
142
+ @ ModelAttribute ("userSession" ) UserSessionBean userSession ,
143
+ @ Valid Project project ,
144
+ BindingResult result ,
145
+ Locale locale , Model model ) {
146
+ log .info ("private addNewProjectPost (POST) projectId=" +projectId +" " +project .toString ());
147
+ return addNewProjectPersist ( projectId , userSession , project ,
148
+ result , locale , model ,"project/add" );
149
+ }
150
+
151
+
126
152
@ RequestMapping (path = "/{thisProjectId}/move/to/{targetProjectId}" , method = RequestMethod .GET )
127
153
public final String moveProject (
128
154
@ PathVariable ("thisProjectId" ) Project thisProject ,
@@ -243,7 +269,7 @@ public final String deleteProject(
243
269
}
244
270
245
271
246
- private final String addNewProject (
272
+ private final void addNewProject (
247
273
long projectId ,
248
274
UserSessionBean userSession ,
249
275
Locale locale ,
@@ -274,15 +300,15 @@ private final String addNewProject(
274
300
model .addAttribute ("breadcrumb" , breadcrumb );
275
301
model .addAttribute ("thisProject" , thisProject );
276
302
model .addAttribute ("project" , project );
277
- return "project/add" ;
278
303
}
279
304
280
305
private String addNewProjectPersist (
281
306
long projectId ,
282
307
UserSessionBean userSession ,
283
308
Project project ,
284
309
BindingResult result ,
285
- Locale locale , Model model
310
+ Locale locale , Model model ,
311
+ String template
286
312
){
287
313
log .info ("private addNewProjectPersist projectId=" +projectId +" " +project .toString ());
288
314
Context context = super .getContext (userSession );
@@ -301,7 +327,7 @@ private String addNewProjectPersist(
301
327
model .addAttribute ("breadcrumb" , breadcrumb );
302
328
model .addAttribute ("thisProject" , thisProject );
303
329
model .addAttribute ("project" , project );
304
- return "project/add" ;
330
+ return template ;
305
331
} else {
306
332
if (projectId == 0 ) {
307
333
if (userSession .getContextId ()>0 ) {
@@ -324,28 +350,6 @@ private String addNewProjectPersist(
324
350
}
325
351
}
326
352
327
- @ RequestMapping (path = "/{projectId}/add/new/project" , method = RequestMethod .GET )
328
- public final String addNewProjectGet (
329
- @ PathVariable long projectId ,
330
- @ ModelAttribute ("userSession" ) UserSessionBean userSession ,
331
- Locale locale , Model model
332
- ) {
333
- log .info ("private addNewProjectGet (GET) projectId=" +projectId );
334
- return addNewProject (projectId , userSession , locale , model );
335
- }
336
-
337
- @ RequestMapping (path = "/{projectId}/add/new/project" ,
338
- method = RequestMethod .POST )
339
- public final String addNewProjectPost (
340
- @ PathVariable long projectId ,
341
- @ ModelAttribute ("userSession" ) UserSessionBean userSession ,
342
- @ Valid Project project ,
343
- BindingResult result ,
344
- Locale locale , Model model ) {
345
- log .info ("private addNewProjectPost (POST) projectId=" +projectId +" " +project .toString ());
346
- return addNewProjectPersist ( projectId , userSession , project , result , locale , model );
347
- }
348
-
349
353
@ RequestMapping (path = "/task/{sourceTaskId}/changeorderto/{destinationTaskId}" , method = RequestMethod .GET )
350
354
public String changeTaskOrderIdWithinAProject (
351
355
@ PathVariable ("sourceTaskId" ) Task sourceTask ,
0 commit comments