Wiki source code of AjaxActions
Show last authors
author | version | line-number | content |
---|---|---|---|
1 | {{include reference="TourCode.Macros"/}} | ||
2 | |||
3 | {{velocity}} | ||
4 | #set ($action = $request.action) | ||
5 | #set ($tourName = $request.tourName) | ||
6 | #if ("$!tourName" != '') | ||
7 | #set ($tourDoc = $xwiki.getDocument($tourName)) | ||
8 | #if ($action == 'editStep') | ||
9 | ## Save step | ||
10 | #set ($nbSteps = $request.nbSteps) | ||
11 | #set ($stepOrder = $request.stepOrder) | ||
12 | #set ($prevStepOrder = $nbSteps) | ||
13 | #set ($stepID = $numbertool.toNumber($request.stepID).intValue()) | ||
14 | #set ($isNewStep = true) | ||
15 | #if ("$!stepID" != '') ## Edit | ||
16 | #set ($stepObj = $tourDoc.getObject('TourCode.StepClass', $stepID)) | ||
17 | #if ($stepObj) | ||
18 | #set ($isNewStep = false) | ||
19 | #set ($prevStepOrder = $stepObj.getValue('order')) | ||
20 | #end | ||
21 | #end | ||
22 | #if ($isNewStep) | ||
23 | ## New step | ||
24 | #set ($stepObj = $tourDoc.newObject('TourCode.StepClass')) | ||
25 | #end | ||
26 | #set ($discard = $stepObj.set('element', $request.element)) | ||
27 | #set ($discard = $stepObj.set('title', $request.title)) | ||
28 | #set ($discard = $stepObj.set('placement', $request.placement)) | ||
29 | #set ($discard = $stepObj.set('targetPage', $request.targetPage)) | ||
30 | #set ($discard = $stepObj.set('action', $request.targetAction)) | ||
31 | #set ($discard = $stepObj.set('queryString', $request.get('queryString'))) | ||
32 | #set ($discard = $stepObj.set('backdrop', $request.backdrop)) | ||
33 | #set ($discard = $stepObj.set('content', $request.content)) | ||
34 | #set ($discard = $stepObj.set('reflex', $request.reflex)) | ||
35 | #if ($prevStepOrder != $stepOrder) | ||
36 | ## Update the step objects | ||
37 | #set ($stepObj2 = $tourDoc.getObject('TourCode.StepClass', 'order', "$stepOrder")) | ||
38 | #if ("$!stepObj2" != '') | ||
39 | #set ($discard = $stepObj2.set('order', $prevStepOrder)) | ||
40 | #end | ||
41 | #set ($discard = $stepObj.set('order', $stepOrder)) | ||
42 | #else | ||
43 | #if ($isNewStep) | ||
44 | #set ($discard = $stepObj.set('order', $nbSteps)) | ||
45 | #end | ||
46 | #end | ||
47 | #elseif ($action == 'deleteStep') | ||
48 | #set ($stepID = $numbertool.toNumber($request.stepID).intValue()) | ||
49 | #set ($stepObj = $tourDoc.getObject('TourCode.StepClass', $stepID)) | ||
50 | #if ($stepObj) | ||
51 | #set ($discard = $tourDoc.removeObject($stepObj)) | ||
52 | ## Update other steps order | ||
53 | #set ($steps = $tourDoc.getObjects('TourCode.StepClass')) | ||
54 | #set ($sortedSteps = []) | ||
55 | #sortXWikiObjectsList($steps, 'order', $sortedSteps) | ||
56 | #foreach ($step in $sortedSteps) | ||
57 | #set ($discard = $step.set('order', $foreach.index)) | ||
58 | #end | ||
59 | #end | ||
60 | #end | ||
61 | #set ($discard = $tourDoc.save()) | ||
62 | #set ($pageMode = 'edit') | ||
63 | {{include reference="TourCode.StepsListing"/}} | ||
64 | #end | ||
65 | {{/velocity}} |