Skip to content

Commit 36048cc

Browse files
committed
Handle start event redirect using a cookie
1 parent 28c1a15 commit 36048cc

4 files changed

Lines changed: 7 additions & 5 deletions

File tree

‎ProcessMaker/Http/Controllers/ProcessController.php‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -249,7 +249,7 @@ public function triggerStartEventApi(Process $process, Request $request)
249249
$apiRequest = new ApiProcessController();
250250
$response = $apiRequest->triggerStartEvent($process, $request);
251251

252-
return redirect('/requests/' . $response->id . '?fromRedirect=true');
252+
return redirect('/requests/' . $response->id)->cookie('fromTriggerStartEvent', true, 1);
253253
}
254254

255255
private function checkAuth()

‎ProcessMaker/Http/Controllers/RequestController.php‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,14 +78,14 @@ public function show(ProcessRequest $request, Media $mediaItems)
7878
if (isset($definition['allowInterstitial'])) {
7979
$allowInterstitial = filter_var($definition['allowInterstitial'], FILTER_VALIDATE_BOOLEAN, FILTER_NULL_ON_FAILURE);
8080
}
81-
if ($allowInterstitial && $request->user_id == Auth::id() && request()->has('fromRedirect')) {
81+
if ($allowInterstitial && $request->user_id == Auth::id() && request()->cookie('fromTriggerStartEvent')) {
8282
$active = $request->tokens()
8383
->where('user_id', Auth::id())
8484
->where('element_type', 'task')
8585
->where('status', 'ACTIVE')
8686
->orderBy('id')->first();
8787

88-
return redirect(route('tasks.edit', ['task' => $active ? $active->getKey() : $startEvent->getKey()]));
88+
return redirect(route('tasks.edit', ['task' => $active ? $active->getKey() : $startEvent->getKey()]))->withoutCookie('fromTriggerStartEvent');
8989
}
9090
}
9191
}

‎ProcessMaker/Http/Middleware/EncryptCookies.php‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,5 +20,6 @@ class EncryptCookies extends BaseEncrypter
2020
* Add any cookie names where we should not encrypt it's data here
2121
*/
2222
'device_id',
23+
'fromTriggerStartEvent',
2324
];
2425
}

‎resources/js/components/requests/card.vue‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,10 +59,11 @@ export default {
5959
.then(response => {
6060
this.spin = 0;
6161
var instance = response.data;
62+
this.$cookies.set('fromTriggerStartEvent', true, '1min');
6263
if (this.$cookies.get("isMobile")) {
63-
window.location = "/requests/mobile/" + instance.id + '?fromRedirect=true';
64+
window.location = "/requests/mobile/" + instance.id;
6465
} else {
65-
window.location = "/requests/" + instance.id + '?fromRedirect=true';
66+
window.location = "/requests/" + instance.id;
6667
}
6768
}).catch((err) => {
6869
this.disabled = false;

0 commit comments

Comments
 (0)