Skip to content

Commit 00229ce

Browse files
committed
WFE 13.2.0 (autocommit)
1 parent ba14186 commit 00229ce

File tree

189 files changed

+1673
-673
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

189 files changed

+1673
-673
lines changed

Designer/localization/en_default.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
"DeleteConfirm": "Are you sure you want to delete selected item(s)?",
99
"DeleteConfirmCurrent": "Are you sure you want to delete this item?",
1010
"EscapeConfirm": "There are unsaved changes. Do you want to save the schema?",
11+
"ReplaceSchemeConfirm": "A scheme with that name already exists. Do you want to replace it?",
1112
"FieldIsRequired": "Field is required!",
1213
"FieldIsNotCorrected": "Field is not correct!",
1314
"DoNotCombineCalendars": "It is impossible to combine time with working time",
@@ -30,6 +31,7 @@
3031
"AlertTitle": "Warning",
3132
"ReadMore": "Read more.",
3233
"None": "None",
34+
"Name": "Name",
3335
"Warning": "Warning",
3436
"SchemeSaved": "Scheme saved",
3537
"SchemeNotSaved": "Scheme not saved",
@@ -543,6 +545,8 @@
543545
"Language": "Language",
544546
"File": "File",
545547
"SaveToImage": "Save to image",
548+
"SaveAs": "Save as...",
549+
"UntitledScheme": "Untitled scheme",
546550
"ShowGrid": "Show grid",
547551
"ImageQuality": "Quality (pixel aspect ratio):",
548552
"ResetSettings": "Reset settings",

Designer/templates/confirmDialog.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
<el-dialog
22
:before-close="function() {visible = false}"
3-
:modal-append-to-body="false"
43
:title="title"
54
:visible="visible"
6-
width="30%">
5+
width="30%"
6+
append-to-body>
77
<span v-html="message"></span>
88
<span slot="footer" class="dialog-footer">
99
<template v-if="typeof actions !== 'undefined' && actions.length > 0">

Designer/templates/toolbar.html

Lines changed: 121 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,49 @@
11
<div class="WorkflowDesignerToolbarMultiBlock">
2-
32
<div v-if="!settings.hideElementsToolbar && !settings.readonly" class="WorkflowDesignerToolbarBlock Horizontal">
4-
<el-menu mode="horizontal" >
3+
<el-menu mode="horizontal">
54
<el-submenu index="1">
6-
<template slot="title">{{ labels.Menu }}</template>
7-
<el-submenu index="1-1">
8-
<template slot="title">{{ labels.File }}</template>
9-
<el-menu-item index="1-1-1" @click="uploadXML">
10-
{{ labels.UploadScheme }}
11-
</el-menu-item>
12-
<el-menu-item v-if="settings.showBpmnMenu" index="1-1-2" @click="uploadBPMN">
13-
{{ labels.UploadBPMN }}
14-
</el-menu-item>
15-
<el-menu-item index="1-1-3" @click="downloadXML">
16-
{{ labels.DownloadScheme }}
17-
</el-menu-item>
18-
<el-menu-item v-if="settings.showBpmnMenu" index="1-1-5" @click="downloadBPMN">
19-
{{ labels.DownloadBPMN }}
20-
</el-menu-item>
21-
<el-menu-item index="1-1-4" @click="showToImageDialog(true)">
22-
{{ labels.SaveToImage }}
23-
</el-menu-item>
24-
</el-submenu>
25-
<el-submenu index="1-2">
26-
<template slot="title">{{ labels.Scheme }}</template>
27-
<el-menu-item index="1-2-1" @click="refresh">{{ labels.Refresh }}</el-menu-item>
28-
<el-menu-item index="1-2-2" @click="reset">{{ labels.ResetSettings }}</el-menu-item>
29-
<el-menu-item index="1-2-4" @click="autoArrangement">{{ labels.AutoArrangement }}</el-menu-item>
30-
<el-menu-item index="1-2-5" @click="showExInfo">
31-
{{ labels.Info }}
32-
<i v-if="exinfo" class="el-icon-check"></i>
33-
</el-menu-item>
34-
<el-menu-item index="1-2-6" @click="showLegend">
35-
{{ labels.Legend }}
36-
<i v-if="legend" class="el-icon-check"></i>
37-
</el-menu-item>
38-
<el-menu-item index="1-2-7" @click="clear">{{ labels.Clear }}</el-menu-item>
39-
</el-submenu>
5+
<template slot="title">
6+
<div class="MainMenu">
7+
<div v-html="icons.menu"></div>
8+
<div class="Title">
9+
<label class="Label">
10+
{{ schemeCode ?? labels.UntitledScheme }}
11+
</label>
12+
<i class="el-icon-arrow-down"></i>
13+
</div>
14+
</div>
15+
</template>
16+
<el-menu-item index="1-0" @click="showSaveAsDialog(true)">
17+
{{ labels.SaveAs }}
18+
</el-menu-item>
19+
<el-menu-item index="1-1-1" @click="uploadXML">
20+
{{ labels.UploadScheme }}
21+
</el-menu-item>
22+
<el-menu-item v-if="settings.showBpmnMenu" index="1-1-2" @click="uploadBPMN">
23+
{{ labels.UploadBPMN }}
24+
</el-menu-item>
25+
<el-menu-item index="1-1-3" @click="downloadXML">
26+
{{ labels.DownloadScheme }}
27+
</el-menu-item>
28+
<el-menu-item v-if="settings.showBpmnMenu" index="1-1-5" @click="downloadBPMN">
29+
{{ labels.DownloadBPMN }}
30+
</el-menu-item>
31+
<el-menu-item index="1-1-4" @click="showToImageDialog(true)">
32+
{{ labels.SaveToImage }}
33+
</el-menu-item>
34+
<el-divider></el-divider>
35+
<el-menu-item index="1-2-1" @click="refresh">{{ labels.Refresh }}</el-menu-item>
36+
<el-menu-item index="1-2-2" @click="reset">{{ labels.ResetSettings }}</el-menu-item>
37+
<el-menu-item index="1-2-4" @click="autoArrangement">{{ labels.AutoArrangement }}</el-menu-item>
38+
<el-menu-item index="1-2-5" @click="showExInfo">
39+
{{ labels.Info }}
40+
<i v-if="exinfo" class="el-icon-check"></i>
41+
</el-menu-item>
42+
<el-menu-item index="1-2-6" @click="showLegend">
43+
{{ labels.Legend }}
44+
<i v-if="legend" class="el-icon-check"></i>
45+
</el-menu-item>
46+
<el-menu-item index="1-4" @click="showInstanceInfo">{{ labels.InstanceInfo }}</el-menu-item>
4047
<el-submenu index="1-3">
4148
<template slot="title">{{ labels.Language }}</template>
4249
<el-menu-item v-for="lang in languagesList" :key="lang.code" style="display: flex" @click="setLanguage(lang.code)">
@@ -45,11 +52,14 @@
4552
<i v-if="lang.code === language.code" class="el-icon-check"></i>
4653
</el-menu-item>
4754
</el-submenu>
48-
<el-menu-item index="1-4" @click="showInstanceInfo">{{ labels.InstanceInfo }}</el-menu-item>
4955
<el-menu-item index="1-5" @click="showAbout">{{ labels.About }}</el-menu-item>
56+
<el-divider></el-divider>
57+
<el-menu-item index="1-2-7" @click="clear">{{ labels.Clear }}</el-menu-item>
5058
</el-submenu>
5159
</el-menu>
60+
</div>
5261

62+
<div v-if="!settings.hideElementsToolbar && !settings.readonly" class="WorkflowDesignerToolbarBlock Horizontal">
5363
<el-tooltip :content="labels.Save" v-if="settings.showSaveButton">
5464
<el-button :class="getButtonClass()" @click="save()">
5565
<div class="WorkflowDesignerToolbarIcon Save RTLIcon"></div>
@@ -189,16 +199,42 @@
189199
<el-button @click="showAboutDialog = false">{{ labels.ButtonTextOk }}</el-button>
190200
</span>
191201
</el-dialog>
202+
203+
<el-dialog
204+
:before-close="() => showSaveAsDialog(false)"
205+
:title="labels.SaveAs"
206+
:visible="renameDialogVisible"
207+
width="30%"
208+
append-to-body>
209+
<el-form ref="form"
210+
label-position="top"
211+
:model="FormData"
212+
onSubmit="return false"
213+
class="WFEForm">
214+
<el-form-item :label="labels.Name" :rules="requiredRule()"
215+
class="el-form-item" prop="SchemeName" style="flex-grow: 1;">
216+
<el-input v-model="FormData.SchemeName" :placeholder="labels.Name"></el-input>
217+
</el-form-item>
218+
</el-form>
219+
<span slot="footer" class="dialog-footer">
220+
<template>
221+
<el-button @click="saveRenamedScheme" type="primary">{{ labels.ButtonTextYes }}</el-button>
222+
<el-button @click="showSaveAsDialog(false)">{{ labels.ButtonTextCancel }}</el-button>
223+
</template>
224+
</span>
225+
</el-dialog>
192226
</div>
193227

194228
<script type="application/javascript">
195229
function toolbar_Init(me) {
196230
const data = me.VueConfig.data;
231+
data.icons = WorkflowDesignerConstants.icons
197232
me.VueConfig.methods.UpdateLanguage = function () {
198233
data.labels = {
199234
...WorkflowDesignerConstants.ToolbarLabel,
200235
...WorkflowDesignerConstants.Logs,
201236
ButtonTextOk: WorkflowDesignerConstants.ButtonTextOk,
237+
Name: WorkflowDesignerConstants.Name,
202238
ButtonTextYes: WorkflowDesignerConstants.ButtonTextYes,
203239
ButtonTextCancel: WorkflowDesignerConstants.ButtonTextCancel,
204240
InformationCopiedToClipboardAndConsole: WorkflowDesignerConstants.InformationCopiedToClipboardAndConsole,
@@ -213,7 +249,9 @@
213249
const designer = me.graph.designer;
214250
const isProcess = !!designer.processid;
215251
data.toImageDialogVisible = false;
252+
data.renameDialogVisible = false;
216253
data.imageAspectRatio = 1;
254+
data.FormData = {}
217255
data.showGrid = false;
218256
data.legend = false;
219257
data.logs = false;
@@ -229,7 +267,13 @@
229267
me.VueConfig.methods.changeLogEnabled = isProcess
230268
? designer.changelogenabled : me.graph.setLogEnabled;
231269

270+
const updateSchemeName = () => {
271+
data.schemeCode = designer.schemecode;
272+
data.FormData.SchemeName = data.schemeCode;
273+
}
274+
232275
me.VueConfig.methods.onUpdate = function () {
276+
updateSchemeName();
233277
data.settings = me.graph.Settings;
234278
data.undoDisabled = me.graph.graphDataIndex <= 0;
235279
data.redoDisabled = me.graph.graphData && me.graph.graphData.length <= (me.graph.graphDataIndex + 1);
@@ -302,11 +346,51 @@
302346
data.toImageDialogVisible = visible;
303347
};
304348

349+
me.VueConfig.methods.showSaveAsDialog = function (visible) {
350+
if (visible) updateSchemeName();
351+
data.renameDialogVisible = visible;
352+
};
353+
305354
me.VueConfig.methods.toImage = function () {
306355
me.graph.toImage(data.imageAspectRatio, data.showGrid);
307356
me.VueConfig.methods.showToImageDialog(false);
308357
};
309358

359+
const isSchemeExists = (schemecode, onExists, onNotExists) => {
360+
const {processid, schemeid} = designer;
361+
const onSuccess = response => {
362+
if (response?.data) {
363+
onExists();
364+
return;
365+
}
366+
onNotExists();
367+
}
368+
designer.exists({schemecode, processid, schemeid}, onSuccess);
369+
}
370+
371+
me.VueConfig.methods.saveRenamedScheme = function () {
372+
const newName = data.FormData.SchemeName;
373+
const save = () => {
374+
const {notify} = me.VueConfig.methods;
375+
me.graph.designer?.save(() => {
376+
notify(WorkflowDesignerConstants.SchemeSaved);
377+
data.schemeCode = designer.schemecode = newName;
378+
data.renameDialogVisible = false;
379+
}, undefined, newName);
380+
}
381+
const confirmToReplace = () => me.VueConfig.methods.showConfirm({
382+
message: WorkflowDesignerConstants.ReplaceSchemeConfirm,
383+
onSuccess: save
384+
});
385+
if (this.$refs && WorkflowDesignerCommon.validateForms(this.$refs)) {
386+
if (newName !== data.schemeCode) {
387+
isSchemeExists(newName, confirmToReplace, save);
388+
return;
389+
}
390+
save();
391+
}
392+
};
393+
310394
me.VueConfig.methods.uploadXML = function () {
311395
document.getElementById('uploadFile').click();
312396
me._uploadCallback = designer.uploadscheme;

Designer/workflowdesigner.min.css

Lines changed: 29 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Designer/workflowdesigner.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)