|
@@ -125,9 +125,15 @@ export default class ResumeTask {
|
125
|
125
|
|
126
|
126
|
const url = new URL(this._stropheConn.service);
|
127
|
127
|
let { search } = url;
|
|
128
|
+ const pattern = /(previd=)([\w-]+)/;
|
|
129
|
+ const oldToken = search.match(pattern);
|
128
|
130
|
|
129
|
|
- // adds previd param only if missing
|
130
|
|
- if (search.indexOf('previd=') === -1) {
|
|
131
|
+ // Replace previd if the previd value has changed.
|
|
132
|
+ if (oldToken && oldToken.indexOf(resumeToken) === -1) {
|
|
133
|
+ search = search.replace(pattern, `$1${resumeToken}`);
|
|
134
|
+
|
|
135
|
+ // Append previd if it doesn't exist.
|
|
136
|
+ } else if (!oldToken) {
|
131
|
137
|
search += search.indexOf('?') === -1 ? `?previd=${resumeToken}` : `&previd=${resumeToken}`;
|
132
|
138
|
}
|
133
|
139
|
|