@projectcaluma/ember-distribution 11.0.0-beta.28 → 11.0.0-beta.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/addon/abilities/distribution.js +4 -0
- package/addon/abilities/inquiry.js +1 -1
- package/addon/components/cd-document-header.hbs +3 -0
- package/addon/components/cd-inquiry-dialog.js +0 -30
- package/addon/components/cd-inquiry-edit-form.hbs +9 -0
- package/addon/components/cd-navigation/controls.hbs +23 -13
- package/addon/components/cd-navigation/controls.js +28 -16
- package/addon/components/cd-navigation/section.hbs +3 -1
- package/addon/components/cd-navigation/section.js +18 -2
- package/addon/components/cd-navigation/status-indicator.hbs +5 -2
- package/addon/gql/queries/control-work-items.graphql +1 -0
- package/addon/gql/queries/inquiry-edit.graphql +1 -0
- package/package.json +13 -14
- package/translations/de.yaml +4 -1
- package/translations/en.yaml +4 -1
- package/translations/fr.yaml +6 -3
|
@@ -7,6 +7,7 @@ const hasStatus = (status) => (edge) => edge.node.status === status;
|
|
|
7
7
|
|
|
8
8
|
export default class DistributionAbility extends Ability {
|
|
9
9
|
@service distribution;
|
|
10
|
+
@service calumaOptions;
|
|
10
11
|
|
|
11
12
|
@config config;
|
|
12
13
|
|
|
@@ -43,6 +44,9 @@ export default class DistributionAbility extends Ability {
|
|
|
43
44
|
return (
|
|
44
45
|
!this.config.ui.readonly &&
|
|
45
46
|
(this.config.permissions.reopenDistribution?.() ?? true) &&
|
|
47
|
+
this.distribution.controls.value?.case.edges[0]?.node.parentWorkItem.addressedGroups
|
|
48
|
+
.map(String)
|
|
49
|
+
.includes(String(this.calumaOptions.currentGroupId)) &&
|
|
46
50
|
this.distribution.controls.value?.case.edges[0]?.node.parentWorkItem
|
|
47
51
|
.isRedoable
|
|
48
52
|
);
|
|
@@ -61,7 +61,7 @@ export default class InquiryAbility extends Ability {
|
|
|
61
61
|
get canReopen() {
|
|
62
62
|
return (
|
|
63
63
|
this.model.isRedoable &&
|
|
64
|
-
this.model?.
|
|
64
|
+
this.model?.controllingGroups
|
|
65
65
|
.map(String)
|
|
66
66
|
.includes(String(this.calumaOptions.currentGroupId)) &&
|
|
67
67
|
(this.config.permissions.reopenInquiry?.(this.model) ?? true)
|
|
@@ -52,8 +52,6 @@ export default class CdInquiryDialogComponent extends Component {
|
|
|
52
52
|
},
|
|
53
53
|
});
|
|
54
54
|
|
|
55
|
-
this._setRedoableStates(response.allWorkItems);
|
|
56
|
-
|
|
57
55
|
/**
|
|
58
56
|
* Sadly this is necessary to handle what happens after the withdraw task in
|
|
59
57
|
* the inquiry part component because the mutation triggers a refresh of the
|
|
@@ -70,39 +68,11 @@ export default class CdInquiryDialogComponent extends Component {
|
|
|
70
68
|
if (allWorkItems.edges.every((edge) => edge.node.status === "CANCELED")) {
|
|
71
69
|
this.router.transitionTo("index");
|
|
72
70
|
}
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* Get work item that was redoable in the previous calulation and is now
|
|
76
|
-
* not anymore. This indicates that the work item was redone which should
|
|
77
|
-
* result in a transition to the answer view.
|
|
78
|
-
*/
|
|
79
|
-
const redoneWorkItem = this._redoableStates.find((stateObj) => {
|
|
80
|
-
const updatedWorkItem = allWorkItems.edges.find(
|
|
81
|
-
(edge) => decodeId(edge.node.id) === stateObj.id
|
|
82
|
-
);
|
|
83
|
-
|
|
84
|
-
return (
|
|
85
|
-
stateObj.isRedoable && !(updatedWorkItem?.node.isRedoable ?? true)
|
|
86
|
-
);
|
|
87
|
-
});
|
|
88
|
-
|
|
89
|
-
if (redoneWorkItem) {
|
|
90
|
-
this.router.transitionTo("inquiry.detail.answer", redoneWorkItem.id);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
this._setRedoableStates(allWorkItems);
|
|
94
71
|
});
|
|
95
72
|
|
|
96
73
|
return response;
|
|
97
74
|
}
|
|
98
75
|
|
|
99
|
-
_setRedoableStates(allWorkItems) {
|
|
100
|
-
this._redoableStates = allWorkItems.edges.map((edge) => ({
|
|
101
|
-
id: decodeId(edge.node.id),
|
|
102
|
-
isRedoable: edge.node.isRedoable,
|
|
103
|
-
}));
|
|
104
|
-
}
|
|
105
|
-
|
|
106
76
|
@dropTask
|
|
107
77
|
*createInquiry(e) {
|
|
108
78
|
e.preventDefault();
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
<:default as |content|>
|
|
7
7
|
<CdDocumentHeader
|
|
8
8
|
@name={{content.document.rootForm.raw.name}}
|
|
9
|
+
@group={{this.inquiry.addressedGroups}}
|
|
9
10
|
@status={{if
|
|
10
11
|
(eq this.inquiry.status "SUSPENDED")
|
|
11
12
|
(t "caluma.distribution.status.draft")
|
|
@@ -43,6 +44,14 @@
|
|
|
43
44
|
>{{t "caluma.distribution.edit.send"}}</UkButton>
|
|
44
45
|
</DocumentValidity>
|
|
45
46
|
{{/if}}
|
|
47
|
+
{{#if (can "answer inquiry" this.inquiry)}}
|
|
48
|
+
<LinkTo
|
|
49
|
+
@route="inquiry.detail.answer"
|
|
50
|
+
class="uk-button uk-button-primary"
|
|
51
|
+
>
|
|
52
|
+
{{t "caluma.distribution.answer.link"}}
|
|
53
|
+
</LinkTo>
|
|
54
|
+
{{/if}}
|
|
46
55
|
</:default>
|
|
47
56
|
<:notfound><CdNotfound /></:notfound>
|
|
48
57
|
</CfContent>
|
|
@@ -1,18 +1,8 @@
|
|
|
1
1
|
<div class="uk-text-center uk-margin-small-top">
|
|
2
|
-
{{#if (can "create inquiry of distribution")}}
|
|
3
|
-
<LinkTo
|
|
4
|
-
@route="new"
|
|
5
|
-
class="uk-icon-button"
|
|
6
|
-
{{uk-tooltip (t "caluma.distribution.new.title")}}
|
|
7
|
-
data-test-new-inquiry
|
|
8
|
-
>
|
|
9
|
-
<UkIcon @icon="plus" />
|
|
10
|
-
</LinkTo>
|
|
11
|
-
{{/if}}
|
|
12
2
|
{{#if (can "send inquiries of distribution")}}
|
|
13
3
|
<button
|
|
14
4
|
type="button"
|
|
15
|
-
class="uk-icon-button"
|
|
5
|
+
class="uk-icon-button uk-button-primary"
|
|
16
6
|
{{uk-tooltip (t "caluma.distribution.send")}}
|
|
17
7
|
data-test-send-pending-inquiries
|
|
18
8
|
{{on "click" (perform this.sendInquiries)}}
|
|
@@ -24,18 +14,38 @@
|
|
|
24
14
|
{{/if}}
|
|
25
15
|
</button>
|
|
26
16
|
{{/if}}
|
|
17
|
+
{{#if (can "create inquiry of distribution")}}
|
|
18
|
+
<LinkTo
|
|
19
|
+
@route="new"
|
|
20
|
+
class="uk-icon-button"
|
|
21
|
+
{{uk-tooltip (t "caluma.distribution.new.title")}}
|
|
22
|
+
data-test-new-inquiry
|
|
23
|
+
>
|
|
24
|
+
<UkIcon @icon="plus" />
|
|
25
|
+
</LinkTo>
|
|
26
|
+
{{/if}}
|
|
27
27
|
{{#if (can "complete distribution")}}
|
|
28
28
|
<button
|
|
29
29
|
type="button"
|
|
30
30
|
class="uk-icon-button"
|
|
31
|
-
{{uk-tooltip
|
|
31
|
+
{{uk-tooltip
|
|
32
|
+
(t
|
|
33
|
+
(if
|
|
34
|
+
this.hasInquiries
|
|
35
|
+
"caluma.distribution.complete"
|
|
36
|
+
"caluma.distribution.skip"
|
|
37
|
+
)
|
|
38
|
+
)
|
|
39
|
+
}}
|
|
32
40
|
data-test-complete-distribution
|
|
33
41
|
{{on "click" (perform this.completeDistribution)}}
|
|
34
42
|
>
|
|
35
43
|
{{#if this.completeDistribution.isRunning}}
|
|
36
44
|
<UkSpinner @ratio={{0.6}} />
|
|
37
|
-
{{else}}
|
|
45
|
+
{{else if this.hasInquiries}}
|
|
38
46
|
<UkIcon @icon="lock" />
|
|
47
|
+
{{else}}
|
|
48
|
+
<UkIcon @icon="forward" />
|
|
39
49
|
{{/if}}
|
|
40
50
|
</button>
|
|
41
51
|
{{/if}}
|
|
@@ -20,26 +20,38 @@ export default class CdNavigationControlsComponent extends Component {
|
|
|
20
20
|
@queryManager apollo;
|
|
21
21
|
@config config;
|
|
22
22
|
|
|
23
|
+
get hasInquiries() {
|
|
24
|
+
return (
|
|
25
|
+
this.distribution.navigation.value?.addressed.edges.length > 0 ||
|
|
26
|
+
this.distribution.navigation.value?.controlling.edges.length > 0 ||
|
|
27
|
+
this.distribution.navigation.value?.more.edges.length > 0
|
|
28
|
+
);
|
|
29
|
+
}
|
|
30
|
+
|
|
23
31
|
@dropTask
|
|
24
32
|
*completeDistribution() {
|
|
25
33
|
try {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
34
|
+
let confirmText = this.intl.t("caluma.distribution.skip-confirm");
|
|
35
|
+
|
|
36
|
+
if (this.hasInquiries) {
|
|
37
|
+
const incompleteInquiries = yield this.apollo.query(
|
|
38
|
+
{
|
|
39
|
+
query: incompleteInquiriesQuery,
|
|
40
|
+
variables: {
|
|
41
|
+
caseId: this.distribution.caseId,
|
|
42
|
+
task: this.config.inquiry.task,
|
|
43
|
+
},
|
|
32
44
|
},
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
45
|
+
"allWorkItems.totalCount"
|
|
46
|
+
);
|
|
47
|
+
|
|
48
|
+
confirmText =
|
|
49
|
+
incompleteInquiries === 0
|
|
50
|
+
? this.intl.t("caluma.distribution.complete-confirm-empty")
|
|
51
|
+
: this.intl.t("caluma.distribution.complete-confirm", {
|
|
52
|
+
count: incompleteInquiries,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
43
55
|
|
|
44
56
|
if (!(yield confirm(confirmText))) {
|
|
45
57
|
return;
|
|
@@ -1,10 +1,24 @@
|
|
|
1
1
|
import { action } from "@ember/object";
|
|
2
|
+
import { inject as service } from "@ember/service";
|
|
2
3
|
import Component from "@glimmer/component";
|
|
3
4
|
import { tracked } from "@glimmer/tracking";
|
|
4
5
|
|
|
5
6
|
export default class CdNavigationSectionComponent extends Component {
|
|
7
|
+
@service router;
|
|
8
|
+
|
|
6
9
|
@tracked expanded = true;
|
|
7
10
|
|
|
11
|
+
get isActive() {
|
|
12
|
+
return (
|
|
13
|
+
this.inquiries.find((inquiry) =>
|
|
14
|
+
this.router.isActive("inquiry", {
|
|
15
|
+
to: inquiry.addressedGroups[0],
|
|
16
|
+
from: inquiry.controllingGroups[0],
|
|
17
|
+
})
|
|
18
|
+
) !== undefined
|
|
19
|
+
);
|
|
20
|
+
}
|
|
21
|
+
|
|
8
22
|
@action
|
|
9
23
|
toggle(e) {
|
|
10
24
|
e.preventDefault();
|
|
@@ -18,8 +32,10 @@ export default class CdNavigationSectionComponent extends Component {
|
|
|
18
32
|
? "controllingGroupName"
|
|
19
33
|
: "addressedGroupName";
|
|
20
34
|
|
|
21
|
-
return
|
|
22
|
-
|
|
35
|
+
return (
|
|
36
|
+
this.args.inquiries?.sort((a, b) =>
|
|
37
|
+
a[sortProperty].localeCompare(b[sortProperty])
|
|
38
|
+
) ?? []
|
|
23
39
|
);
|
|
24
40
|
}
|
|
25
41
|
}
|
|
@@ -2,12 +2,15 @@
|
|
|
2
2
|
<UkIcon
|
|
3
3
|
@icon="clock"
|
|
4
4
|
class="uk-margin-small-right uk-text-{{this.deadline.color}}"
|
|
5
|
-
{{uk-tooltip
|
|
5
|
+
{{uk-tooltip
|
|
6
|
+
(format-date this.deadline.value)
|
|
7
|
+
pos=(if this.config.ui.stack "left" "top")
|
|
8
|
+
}}
|
|
6
9
|
/>
|
|
7
10
|
{{/if}}
|
|
8
11
|
|
|
9
12
|
<UkIcon
|
|
10
13
|
@icon={{this.status.icon}}
|
|
11
14
|
class="uk-text-{{this.status.color}}"
|
|
12
|
-
{{uk-tooltip this.status.label}}
|
|
15
|
+
{{uk-tooltip this.status.label pos=(if this.config.ui.stack "left" "top")}}
|
|
13
16
|
/>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@projectcaluma/ember-distribution",
|
|
3
|
-
"version": "11.0.0-beta.
|
|
3
|
+
"version": "11.0.0-beta.29",
|
|
4
4
|
"description": "Ember engine for the Caluma distribution module.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ember-addon",
|
|
@@ -18,13 +18,14 @@
|
|
|
18
18
|
"ember-engines": ">= 0.8"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
+
"@ember/legacy-built-in-components": "^0.4.1",
|
|
21
22
|
"@ember/string": "^3.0.0",
|
|
22
23
|
"@embroider/macros": "^1.8.3",
|
|
23
24
|
"@glimmer/component": "^1.1.2",
|
|
24
25
|
"@glimmer/tracking": "^1.1.2",
|
|
25
|
-
"@projectcaluma/ember-core": "^11.0.0-beta.
|
|
26
|
-
"@projectcaluma/ember-form": "^11.0.0-beta.
|
|
27
|
-
"@projectcaluma/ember-workflow": "^11.0.0-beta.
|
|
26
|
+
"@projectcaluma/ember-core": "^11.0.0-beta.29",
|
|
27
|
+
"@projectcaluma/ember-form": "^11.0.0-beta.29",
|
|
28
|
+
"@projectcaluma/ember-workflow": "^11.0.0-beta.29",
|
|
28
29
|
"ember-apollo-client": "~4.0.2",
|
|
29
30
|
"ember-auto-import": "^2.4.2",
|
|
30
31
|
"ember-can": "^4.2.0",
|
|
@@ -35,10 +36,10 @@
|
|
|
35
36
|
"ember-fetch": "^8.1.2",
|
|
36
37
|
"ember-intl": "^5.7.2",
|
|
37
38
|
"ember-pikaday": "^4.0.0",
|
|
38
|
-
"ember-resources": "^5.
|
|
39
|
+
"ember-resources": "^5.4.0",
|
|
39
40
|
"ember-svg-jar": "^2.3.4",
|
|
40
41
|
"ember-test-selectors": "^6.0.0",
|
|
41
|
-
"ember-uikit": "^6.
|
|
42
|
+
"ember-uikit": "^6.1.0",
|
|
42
43
|
"graphql": "^15.8.0",
|
|
43
44
|
"graphql-tag": "^2.12.6",
|
|
44
45
|
"lodash.merge": "^4.6.2",
|
|
@@ -47,12 +48,12 @@
|
|
|
47
48
|
},
|
|
48
49
|
"devDependencies": {
|
|
49
50
|
"@ember/optional-features": "2.0.0",
|
|
50
|
-
"@ember/test-helpers": "2.
|
|
51
|
+
"@ember/test-helpers": "2.7.0",
|
|
51
52
|
"@embroider/test-setup": "1.8.3",
|
|
52
53
|
"@faker-js/faker": "7.5.0",
|
|
53
|
-
"@projectcaluma/ember-testing": "11.0.0-beta.
|
|
54
|
+
"@projectcaluma/ember-testing": "11.0.0-beta.29",
|
|
54
55
|
"broccoli-asset-rev": "3.0.0",
|
|
55
|
-
"ember-cli": "
|
|
56
|
+
"ember-cli": "4.7.0",
|
|
56
57
|
"ember-cli-code-coverage": "1.0.3",
|
|
57
58
|
"ember-cli-dependency-checker": "3.3.1",
|
|
58
59
|
"ember-cli-inject-live-reload": "2.1.0",
|
|
@@ -62,12 +63,10 @@
|
|
|
62
63
|
"ember-cli-terser": "4.0.2",
|
|
63
64
|
"ember-disable-prototype-extensions": "1.1.3",
|
|
64
65
|
"ember-engines": "0.8.23",
|
|
65
|
-
"ember-export-application-global": "2.0.1",
|
|
66
66
|
"ember-load-initializers": "2.1.2",
|
|
67
|
-
"ember-maybe-import-regenerator": "1.0.0",
|
|
68
67
|
"ember-qunit": "5.1.5",
|
|
69
68
|
"ember-resolver": "8.0.3",
|
|
70
|
-
"ember-source": "
|
|
69
|
+
"ember-source": "4.7.0",
|
|
71
70
|
"ember-source-channel-url": "3.0.0",
|
|
72
71
|
"ember-try": "2.0.0",
|
|
73
72
|
"loader.js": "4.7.0",
|
|
@@ -75,11 +74,11 @@
|
|
|
75
74
|
"npm-run-all": "4.1.5",
|
|
76
75
|
"qunit": "2.19.1",
|
|
77
76
|
"qunit-dom": "2.0.0",
|
|
78
|
-
"sass": "1.
|
|
77
|
+
"sass": "1.55.0",
|
|
79
78
|
"webpack": "5.74.0"
|
|
80
79
|
},
|
|
81
80
|
"engines": {
|
|
82
|
-
"node": "
|
|
81
|
+
"node": "14.* || >= 16"
|
|
83
82
|
},
|
|
84
83
|
"ember": {
|
|
85
84
|
"edition": "octane"
|
package/translations/de.yaml
CHANGED
|
@@ -4,6 +4,7 @@ caluma:
|
|
|
4
4
|
start: "Starten"
|
|
5
5
|
send: "Offene Anfragen versenden"
|
|
6
6
|
complete: "Zirkulation abschliessen"
|
|
7
|
+
skip: "Zirkulation überspringen"
|
|
7
8
|
reopen: "Zirkulation wiedereröffnen"
|
|
8
9
|
send-confirm: "Wollen Sie wirklich alle offenen Anfragen versenden?"
|
|
9
10
|
complete-confirm:
|
|
@@ -11,9 +12,11 @@ caluma:
|
|
|
11
12
|
in der aktuellen Zirkulation. Wenn Sie die Zirkulation abschliessen, werden
|
|
12
13
|
alle verbleibenden offenen Anfragen abgebrochen. Möchten Sie fortfahren?"
|
|
13
14
|
complete-confirm-empty: "Möchten Sie die Zirkulation wirklich abschliessen?"
|
|
15
|
+
skip-confirm: "Wollen Sie die Zirkulation wirklich überspringen?"
|
|
14
16
|
reopen-confirm: "Wollen Sie die Zirkulation wirklich wiedereröffnen?"
|
|
15
17
|
send-error: "Fehler beim Versenden der offenen Anfragen"
|
|
16
18
|
complete-error: "Fehler beim Abschliessen der Zirkulation"
|
|
19
|
+
skip-error: "Fehler beim Überspringen der Zirkulation"
|
|
17
20
|
reopen-error: "Fehler beim Wiedereröffnen der Zirkulation"
|
|
18
21
|
|
|
19
22
|
more: "mehr"
|
|
@@ -27,7 +30,7 @@ caluma:
|
|
|
27
30
|
|
|
28
31
|
edit:
|
|
29
32
|
link: "Bearbeiten"
|
|
30
|
-
send: "
|
|
33
|
+
send: "Aktuelle Anfrage versenden"
|
|
31
34
|
send-error: "Fehler beim Senden der Anfrage"
|
|
32
35
|
send-not-allowed: "Sie sind nicht berechtigt diese Anfrage zu versenden."
|
|
33
36
|
|
package/translations/en.yaml
CHANGED
|
@@ -4,6 +4,7 @@ caluma:
|
|
|
4
4
|
start: "Start"
|
|
5
5
|
send: "Send pending inquiries"
|
|
6
6
|
complete: "Complete circulation"
|
|
7
|
+
skip: "Skip circulation"
|
|
7
8
|
send-confirm: "Do you really want to send all pending inquiries?"
|
|
8
9
|
reopen: "Reopen circulation"
|
|
9
10
|
complete-confirm:
|
|
@@ -12,9 +13,11 @@ caluma:
|
|
|
12
13
|
distribution. Completing the distribution will cause all remaining
|
|
13
14
|
pending inquiries to be canceled. Would you like to continue?"
|
|
14
15
|
complete-confirm-empty: "Do you really want to complete the distribution?"
|
|
16
|
+
skip-confirm: "Do you really want to skip the distribution?"
|
|
15
17
|
reopen-confirm: "Do you really want to reopen the distribution?"
|
|
16
18
|
send-error: "Error while sending pending inquiries"
|
|
17
19
|
complete-error: "Error while completing the distribution"
|
|
20
|
+
skip-error: "Error while skipping the distribution"
|
|
18
21
|
reopen-error: "Error while reopening the distribution"
|
|
19
22
|
|
|
20
23
|
more: "more"
|
|
@@ -28,7 +31,7 @@ caluma:
|
|
|
28
31
|
|
|
29
32
|
edit:
|
|
30
33
|
link: "Edit"
|
|
31
|
-
send: "Send"
|
|
34
|
+
send: "Send current inquiry"
|
|
32
35
|
send-error: "Error while sending the inquiry"
|
|
33
36
|
send-not-allowed: "You are not allowed to send this inquiry."
|
|
34
37
|
|
package/translations/fr.yaml
CHANGED
|
@@ -3,7 +3,8 @@ caluma:
|
|
|
3
3
|
empty: "Aucune demande n'a encore été créée."
|
|
4
4
|
start: "Lancer"
|
|
5
5
|
send: "Envoyer les demandes ouvertes"
|
|
6
|
-
complete: "
|
|
6
|
+
complete: "Clore la circulation"
|
|
7
|
+
skip: "Sauter la procédure de circulation"
|
|
7
8
|
send-confirm: "Voulez-vous vraiment envoyer toutes les demandes ouvertes ?"
|
|
8
9
|
reopen: "Rouvrir la procédure de circulation"
|
|
9
10
|
complete-confirm:
|
|
@@ -11,9 +12,11 @@ caluma:
|
|
|
11
12
|
attente</b> sur la distribution actuelle. Si vous terminez la distribution,
|
|
12
13
|
toutes les demandes en attente seront annulées. Voulez-vous continuer ?"
|
|
13
14
|
complete-confirm-empty: "Vous voulez vraiment fermer la circulation ?"
|
|
15
|
+
skip-confirm: "Vous voulez vraiment sauter la circulation ?"
|
|
14
16
|
reopen-confirm: "Vous voulez vraiment rouvrir la circulation ?"
|
|
15
17
|
send-error: "Erreur lors de l'envoi des demandes ouvertes"
|
|
16
|
-
complete-error: "Erreur lors de la
|
|
18
|
+
complete-error: "Erreur lors de la clôture de la circulation"
|
|
19
|
+
skip-error: "Erreur lors du saut de la circulation"
|
|
17
20
|
reopen-error: "Erreur lors de la réouverture de la circulation"
|
|
18
21
|
|
|
19
22
|
more: "plus"
|
|
@@ -27,7 +30,7 @@ caluma:
|
|
|
27
30
|
|
|
28
31
|
edit:
|
|
29
32
|
link: "Modifier"
|
|
30
|
-
send: "Envoyer"
|
|
33
|
+
send: "Envoyer la demande actuelle"
|
|
31
34
|
send-error: "Erreur lors de l'envoi de la demande"
|
|
32
35
|
send-not-allowed: "Vous n'êtes pas autorisé à envoyer cette demande."
|
|
33
36
|
|