diff --git a/resources/assets/js/admin/settings/customCaseList/Api/CaseList.js b/resources/assets/js/admin/settings/customCaseList/Api/CaseList.js
index c6692a7b6..64c6fcaf3 100644
--- a/resources/assets/js/admin/settings/customCaseList/Api/CaseList.js
+++ b/resources/assets/js/admin/settings/customCaseList/Api/CaseList.js
@@ -2,6 +2,7 @@ import axios from "axios";
import Api from "../../../../api/Api";
import Services from "./Services";
import Defaults from "./Mocks/defaults.json";
+import { RCBase64 } from '../../../../utils/utils.js'
class caseListApi extends Api {
constructor(services) {
// Here, it calls the parent class' constructor with lengths
@@ -42,13 +43,14 @@ class caseListApi extends Api {
* @returns
*/
deleteCaseList(data) {
+ var base64 = RCBase64();
return axios.delete(
window.config.SYS_SERVER_API +
'/api/1.0/' +
window.config.SYS_WORKSPACE +
'/caseList/' + data.id, {
headers: {
- 'Authorization': 'Bearer ' + window.config.SYS_CREDENTIALS.accessToken,
+ 'Authorization': 'Bearer ' + JSON.parse(base64.decode(window.config.SYS_CREDENTIALS)).accessToken,
"Accept-Language": window.config.SYS_LANG
}
}
diff --git a/resources/assets/js/home/CustomCaseList/CustomCaseList.vue b/resources/assets/js/home/CustomCaseList/CustomCaseList.vue
index d69bc4ddf..bb9e625fe 100644
--- a/resources/assets/js/home/CustomCaseList/CustomCaseList.vue
+++ b/resources/assets/js/home/CustomCaseList/CustomCaseList.vue
@@ -337,7 +337,6 @@ export default {
icon: "fas fa-check-circle",
options: {
filterable: false,
- headings: {},
texts: {
count: this.$i18n.t("ID_SHOWING_FROM_RECORDS_COUNT"),
first: this.$i18n.t("ID_FIRST"),
@@ -794,7 +793,10 @@ export default {
product,
newItems = [];
that.filterItems = [];
- that.headings = {};
+ that.headings = {
+ detail: this.$i18n.t("ID_DETAIL_CASE"),
+ actions: "",
+ };
response.data.columns.forEach((item) => {
if (item.enableFilter) {
if (that.availableItems[that.itemMap[item.field]]) {
diff --git a/resources/assets/js/home/MyCases/MyCases.vue b/resources/assets/js/home/MyCases/MyCases.vue
index 1007c6901..839373b50 100644
--- a/resources/assets/js/home/MyCases/MyCases.vue
+++ b/resources/assets/js/home/MyCases/MyCases.vue
@@ -460,7 +460,7 @@ export default {
PROCESS_NAME: v.PRO_TITLE,
PROCESS_NAME: v.PRO_TITLE,
PROCESS_CATEGORY: v.CATEGORY,
- STATUS: v.APP_STATUS,
+ STATUS: this.$i18n.t("ID_CASES_STATUS_"+ v.APP_STATUS.toUpperCase()),
START_DATE: v.APP_CREATE_DATE_LABEL || "",
FINISH_DATE: v.APP_FINISH_DATE_LABEL || "",
PENDING_TASKS: that.formantPendingTask(
diff --git a/resources/assets/js/home/TaskMetrics/VueChartLvOne.vue b/resources/assets/js/home/TaskMetrics/VueChartLvOne.vue
index 719ffe16c..5e82acd4c 100644
--- a/resources/assets/js/home/TaskMetrics/VueChartLvOne.vue
+++ b/resources/assets/js/home/TaskMetrics/VueChartLvOne.vue
@@ -85,7 +85,7 @@
@@ -100,10 +100,11 @@ import BreadCrumb from "../../components/utils/BreadCrumb.vue";
import ProcessPopover from "./ProcessPopover.vue";
import Multiselect from "vue-multiselect";
import eventBus from "./../EventBus/eventBus";
+import mixinLocales from "./mixinsLocales";
export default {
name: "VueChartLvOne",
- mixins: [],
+ mixins: [mixinLocales],
components: {
Multiselect,
BreadCrumb,
@@ -137,7 +138,7 @@ export default {
data: [],
},
],
- optionsBar: {
+ options: {
chart: {
type: "bar",
id: "LevelOneChart",
diff --git a/resources/assets/js/home/TaskMetrics/VueChartLvThree.vue b/resources/assets/js/home/TaskMetrics/VueChartLvThree.vue
index 054744647..ca7fd3edd 100644
--- a/resources/assets/js/home/TaskMetrics/VueChartLvThree.vue
+++ b/resources/assets/js/home/TaskMetrics/VueChartLvThree.vue
@@ -69,7 +69,7 @@
"
class="btn vp-btn-success btn-sm"
>
- On Time
+ {{ $t("ID_TASK_ON_TIME") }}
@@ -112,10 +112,11 @@ import BreadCrumb from "../../components/utils/BreadCrumb.vue";
import moment from "moment";
import ModalUnpauseCase from "../modal/ModalUnpauseCase.vue";
import ModalClaimCase from "../modal/ModalClaimCase.vue";
+import mixinLocales from "./mixinsLocales";
export default {
name: "VueChartLvThree",
- mixins: [],
+ mixins: [mixinLocales],
components: {
Multiselect,
BreadCrumb,
@@ -357,7 +358,7 @@ export default {
tickAmount: 7,
},
title: {
- text: "Overdue days",
+ text: this.$t("ID_TASK_OVERDUE_DAYS"),
},
});
break;
@@ -369,7 +370,7 @@ export default {
tickAmount: 7,
},
title: {
- text: "Days before being Overdue",
+ text: this.$t("ID_TASK_DAYS_BEFORE_OVERDUE"),
},
});
break;
@@ -381,7 +382,7 @@ export default {
tickAmount: 7,
},
title: {
- text: "Days before being At-Risk",
+ text: this.$t("ID_TASK_DAYS_BEFORE_AT_RISK"),
},
});
break;
diff --git a/resources/assets/js/home/TaskMetrics/VueChartLvTwo.vue b/resources/assets/js/home/TaskMetrics/VueChartLvTwo.vue
index 10ddd3c28..f972dec09 100644
--- a/resources/assets/js/home/TaskMetrics/VueChartLvTwo.vue
+++ b/resources/assets/js/home/TaskMetrics/VueChartLvTwo.vue
@@ -87,9 +87,10 @@ import Multiselect from "vue-multiselect";
import BreadCrumb from "../../components/utils/BreadCrumb.vue";
import moment from "moment";
import eventBus from "./../EventBus/eventBus";
+import mixinLocales from "./mixinsLocales";
export default {
name: "VueChartLvTwo",
- mixins: [],
+ mixins: [mixinLocales],
components: {
Multiselect,
BreadCrumb,
diff --git a/resources/assets/js/home/TaskMetrics/mixinsLocales.js b/resources/assets/js/home/TaskMetrics/mixinsLocales.js
new file mode 100644
index 000000000..72c240183
--- /dev/null
+++ b/resources/assets/js/home/TaskMetrics/mixinsLocales.js
@@ -0,0 +1,78 @@
+export default {
+ data() {
+ let that = this;
+ return {
+ options: {
+ chart: {
+ locales: [
+ {
+ name: "en",
+ options: {
+ months: [
+ this.$t("ID_MONTH_1"),
+ this.$t("ID_MONTH_2"),
+ this.$t("ID_MONTH_3"),
+ this.$t("ID_MONTH_4"),
+ this.$t("ID_MONTH_5"),
+ this.$t("ID_MONTH_6"),
+ this.$t("ID_MONTH_7"),
+ this.$t("ID_MONTH_8"),
+ this.$t("ID_MONTH_9"),
+ this.$t("ID_MONTH_10"),
+ this.$t("ID_MONTH_11"),
+ this.$t("ID_MONTH_12"),
+ ],
+ shortMonths: [
+ this.$t("ID_MONTH_ABB_1"),
+ this.$t("ID_MONTH_ABB_2"),
+ this.$t("ID_MONTH_ABB_3"),
+ this.$t("ID_MONTH_ABB_4"),
+ this.$t("ID_MONTH_ABB_5"),
+ this.$t("ID_MONTH_ABB_6"),
+ this.$t("ID_MONTH_ABB_7"),
+ this.$t("ID_MONTH_ABB_8"),
+ this.$t("ID_MONTH_ABB_9"),
+ this.$t("ID_MONTH_ABB_10"),
+ this.$t("ID_MONTH_ABB_11"),
+ this.$t("ID_MONTH_ABB_12"),
+ ],
+ days: [
+ this.$t("ID_WEEKDAY_0"),
+ this.$t("ID_WEEKDAY_1"),
+ this.$t("ID_WEEKDAY_2"),
+ this.$t("ID_WEEKDAY_3"),
+ this.$t("ID_WEEKDAY_4"),
+ this.$t("ID_WEEKDAY_5"),
+ this.$t("ID_WEEKDAY_6"),
+ ],
+ shortDays: [
+ this.$t("ID_WEEKDAY_ABB_0"),
+ this.$t("ID_WEEKDAY_ABB_1"),
+ this.$t("ID_WEEKDAY_ABB_2"),
+ this.$t("ID_WEEKDAY_ABB_3"),
+ this.$t("ID_WEEKDAY_ABB_4"),
+ this.$t("ID_WEEKDAY_ABB_5"),
+ this.$t("ID_WEEKDAY_ABB_6"),
+ ],
+ toolbar: {
+ exportToSVG: this.$t("ID_DOWNLOAD_SVG"),
+ exportToPNG: this.$t("ID_DOWNLOAD_PNG"),
+ menu: this.$t("ID_MENU"),
+ selection: this.$t(
+ "ID_PROCESSMAP_SELECTION"
+ ),
+ selectionZoom: this.$t("ID_SELECTION_ZOOM"),
+ zoomIn: this.$t("ID_ZOOM_IN"),
+ zoomOut: this.$t("ID_ZOOM_OUT"),
+ pan: this.$t("ID_PANNING"),
+ reset: this.$t("ID_RESET"),
+ },
+ },
+ },
+ ],
+ defaultLocale: "en",
+ },
+ },
+ };
+ },
+};
diff --git a/workflow/engine/content/translations/english/processmaker.en.po b/workflow/engine/content/translations/english/processmaker.en.po
index 62c41e2a6..6fb10543d 100755
--- a/workflow/engine/content/translations/english/processmaker.en.po
+++ b/workflow/engine/content/translations/english/processmaker.en.po
@@ -7019,6 +7019,18 @@ msgstr "Down"
msgid "Download"
msgstr "Download"
+# TRANSLATION
+# LABEL/ID_DOWNLOAD_SVG
+#: LABEL/ID_DOWNLOAD_SVG
+msgid "Download SVG"
+msgstr "Download SVG"
+
+# TRANSLATION
+# LABEL/ID_DOWNLOAD_PNG
+#: LABEL/ID_DOWNLOAD_PNG
+msgid "Download PNG"
+msgstr "Download PNG"
+
# TRANSLATION
# LABEL/ID_DOWNLOADING_FILE
#: LABEL/ID_DOWNLOADING_FILE
@@ -19211,6 +19223,12 @@ msgstr "Memory Limit (MB)"
msgid "Memory Limit value has to be either a positive integer or -1"
msgstr "Memory Limit value has to be either a positive integer or -1"
+# TRANSLATION
+# LABEL/ID_MENU
+#: LABEL/ID_MENU
+msgid "Menu"
+msgstr "Menu"
+
# TRANSLATION
# LABEL/ID_MENU_COLOR
#: LABEL/ID_MENU_COLOR
@@ -21299,6 +21317,12 @@ msgstr "Page"
msgid "Page Size"
msgstr "Page Size"
+# TRANSLATION
+# LABEL/ID_PANNING
+#: LABEL/ID_PANNING
+msgid "Panning"
+msgstr "Panning"
+
# TRANSLATION
# LABEL/ID_PARALLEL_TASK
#: LABEL/ID_PARALLEL_TASK
@@ -24587,6 +24611,12 @@ msgstr "See complete list"
msgid "Select"
msgstr "Select"
+# TRANSLATION
+# LABEL/ID_SELECTION_ZOOM
+#: LABEL/ID_SELECTION_ZOOM
+msgid "Selection zoom"
+msgstr "Selection zoom"
+
# TRANSLATION
# LABEL/ID_SELECTED
#: LABEL/ID_SELECTED
@@ -26237,6 +26267,30 @@ msgstr "The task doesn't have any steps"
msgid "Overdue"
msgstr "Overdue"
+# TRANSLATION
+# LABEL/ID_TASK_OVERDUE_DAYS
+#: LABEL/ID_TASK_OVERDUE_DAYS
+msgid "Overdue days"
+msgstr "Overdue days"
+
+# TRANSLATION
+# LABEL/ID_TASK_DAYS_BEFORE_AT_RISK
+#: LABEL/ID_TASK_DAYS_BEFORE_AT_RISK
+msgid "Days before being At-Risk"
+msgstr "Days before being At-Risk"
+
+# TRANSLATION
+# LABEL/ID_TASK_DAYS_BEFORE_OVERDUE
+#: LABEL/ID_TASK_DAYS_BEFORE_OVERDUE
+msgid "Days before being Overdue"
+msgstr "Days before being Overdue"
+
+# TRANSLATION
+# LABEL/ID_TASK_ON_TIME
+#: LABEL/ID_TASK_ON_TIME
+msgid "On time"
+msgstr "On time"
+
# TRANSLATION
# LABEL/ID_TASK_PROPERTIES_SAVE
#: LABEL/ID_TASK_PROPERTIES_SAVE
@@ -29057,6 +29111,18 @@ msgstr "You uploaded an unsupported file extension, please review the permitted
msgid "Zip Code"
msgstr "Zip Code"
+# TRANSLATION
+# LABEL/ID_ZOOM_IN
+#: LABEL/ID_ZOOM_IN
+msgid "Zoom in"
+msgstr "Zoom in"
+
+# TRANSLATION
+# LABEL/ID_ZOOM_OUT
+#: LABEL/ID_ZOOM_OUT
+msgid "Zoom out"
+msgstr "Zoom out"
+
# TRANSLATION
# LABEL/IMAGE_DETAIL
#: LABEL/IMAGE_DETAIL
@@ -53341,4 +53407,10 @@ msgstr "Sorry, No Solid icons found!"
# LABEL/ID_SELECT_PROCESS_DRILL
#: LABEL/ID_SELECT_PROCESS_DRILL
msgid "Select a process to have the Drilling Down Options"
-msgstr "Select a process to have the Drilling Down Options"
\ No newline at end of file
+msgstr "Select a process to have the Drilling Down Options"
+
+# TRANSLATION
+# LABEL/ID_TASK_METRICS
+#: LABEL/ID_TASK_METRICS
+msgid "Task metrics"
+msgstr "Task metrics"
\ No newline at end of file
diff --git a/workflow/engine/data/mysql/insert.sql b/workflow/engine/data/mysql/insert.sql
index ef3173e02..5e94762a8 100755
--- a/workflow/engine/data/mysql/insert.sql
+++ b/workflow/engine/data/mysql/insert.sql
@@ -58001,6 +58001,8 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_DONT_MODIFY_PK_VALUE','en','You can not modify the primary key value for "{0}" field.','2014-01-15') ,
( 'LABEL','ID_DOWN','en','Down','2014-01-15') ,
( 'LABEL','ID_DOWNLOAD','en','Download','2014-01-15') ,
+( 'LABEL','ID_DOWNLOAD_SVG','en','Download SVG','2022-01-07') ,
+( 'LABEL','ID_DOWNLOAD_PNG','en','Download PNG','2022-01-07') ,
( 'LABEL','ID_DOWNLOADING_FILE','en','Downloading file','2014-01-15') ,
( 'LABEL','ID_DOWNLOADING_UPGRADE','en','Downloading upgrade:','2014-09-18') ,
( 'LABEL','ID_DOWNLOAD_MANUALLY','en','You can download it manually here','2014-09-18') ,
@@ -60097,6 +60099,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_MEMBER_OF','en','MEMBER OF','2014-01-15') ,
( 'LABEL','ID_MEMORY_LIMIT','en','Memory Limit (MB)','2014-01-15') ,
( 'LABEL','ID_MEMORY_LIMIT_VALIDATE','en','Memory Limit value has to be either a positive integer or -1','2017-04-05') ,
+( 'LABEL','ID_MENU','en','Menu','2022-01-07') ,
( 'LABEL','ID_MENU_COLOR','en','Menu Color','2021-08-10') ,
( 'LABEL','ID_MENU_NAME','en','Enterprise Manager','2014-10-17') ,
( 'LABEL','ID_MESSAGE','en','Message','2014-01-15') ,
@@ -60457,6 +60460,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_OWNER_TYPE','en','Owner type','2015-05-08') ,
( 'LABEL','ID_PAGE','en','Page','2014-01-15') ,
( 'LABEL','ID_PAGE_SIZE','en','Page Size','2014-01-15') ,
+( 'LABEL','ID_PANNING','en','Panning','2022-01-07') ,
( 'LABEL','ID_PARALLEL_TASK','en','Parallel Task','2014-01-15') ,
( 'LABEL','ID_PARAMETERS','en','Parameters','2014-01-15') ,
( 'LABEL','ID_PARENT_DEPARTMENT_NOT_EXIST','en','Parent department doesn''t exist','2014-01-15') ,
@@ -61023,6 +61027,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_SEE','en','See','2014-01-15') ,
( 'LABEL','ID_SEE_FULL_LIST','en','See complete list','2016-02-29') ,
( 'LABEL','ID_SELECT','en','Select','2014-01-15') ,
+( 'LABEL','ID_SELECTION_ZOOM','en','Selection zoom','2022-01-07') ,
( 'LABEL','ID_SELECTED','en','selected','2014-01-15') ,
( 'LABEL','ID_SELECTED_FIELD','en','selected field','2014-01-15') ,
( 'LABEL','ID_SELECTED_IMAGE_DELETED','en','The selected image has been deleted.','2014-01-15') ,
@@ -61312,6 +61317,10 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_TASK_NOT_RELATED','en','[Not related to a task]','2014-01-15') ,
( 'LABEL','ID_TASK_NO_STEPS','en','The task doesn''t have any steps','2014-01-15') ,
( 'LABEL','ID_TASK_OVERDUE','en','Overdue','2015-06-09') ,
+( 'LABEL','ID_TASK_OVERDUE_DAYS','en','Overdue days','2022-01-07') ,
+( 'LABEL','ID_TASK_DAYS_BEFORE_AT_RISK','en','Days before being At-Risk','2022-01-07') ,
+( 'LABEL','ID_TASK_DAYS_BEFORE_OVERDUE','en','Days before being Overdue','2022-01-07') ,
+( 'LABEL','ID_TASK_ON_TIME','en','On time','2022-01-07') ,
( 'LABEL','ID_TASK_PROPERTIES_SAVE','en','Task properties has been saved successfully','2014-01-15') ,
( 'LABEL','ID_TASK_REASSIGNMENTS','en','Task Reassignments','2020-12-07') ,
( 'LABEL','ID_TASK_TITLE','en','Task Title','2020-12-17') ,
@@ -61835,6 +61844,8 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_YOU_HAVE_ERROR','en','you have an error','2014-01-15') ,
( 'LABEL','ID_YOU_UPLOADED_AN_UNSUPPORTED_FILE_EXTENSION','en','You uploaded an unsupported file extension, please review the permitted files uploaded in the wiki of ProcessMaker for the cases notes.','2020-06-12') ,
( 'LABEL','ID_ZIP_CODE','en','Zip Code','2014-01-15') ,
+( 'LABEL','ID_ZOOM_IN','en','Zoom in','2022-01-07') ,
+( 'LABEL','ID_ZOOM_OUT','en','Zoom out','2022-01-07') ,
( 'LABEL','IMAGE_DETAIL','en','Image detail','2014-01-15') ,
( 'LABEL','IMPORT_LANGUAGE_ERR_NO_WRITABLE','en','The XML forms directory is not writable','2014-01-15') ,
( 'LABEL','IMPORT_LANGUAGE_ERR_NO_WRITABLE2','en','Some files within XMLFORM directory are not writable, to install or update the translations the system requires that all files are writable. Contact your system administrator please.','2014-01-15') ,
diff --git a/workflow/engine/methods/cases/casesListSetup.php b/workflow/engine/methods/cases/casesListSetup.php
index 58d652fa2..a87523cee 100644
--- a/workflow/engine/methods/cases/casesListSetup.php
+++ b/workflow/engine/methods/cases/casesListSetup.php
@@ -26,7 +26,7 @@ $oHeadPublisher->assignNumber("availableFields", G::json_encode($availableFields
$userCanAccess = 1;
$pmDynaform = new PmDynaform();
-ScriptVariables::add('SYS_CREDENTIALS', $pmDynaform->getCredentials());
+ScriptVariables::add('SYS_CREDENTIALS', base64_encode(G::json_encode($pmDynaform->getCredentials())));
ScriptVariables::add('SYS_SERVER_API', System::getHttpServerHostnameRequestsFrontEnd());
ScriptVariables::add('SYS_SERVER_AJAX', System::getServerProtocolHost());
ScriptVariables::add('SYS_WORKSPACE', config("system.workspace"));
diff --git a/workflow/engine/src/ProcessMaker/Project/Adapter/WorkflowBpmn.php b/workflow/engine/src/ProcessMaker/Project/Adapter/WorkflowBpmn.php
index 517c5924d..8267f09f6 100644
--- a/workflow/engine/src/ProcessMaker/Project/Adapter/WorkflowBpmn.php
+++ b/workflow/engine/src/ProcessMaker/Project/Adapter/WorkflowBpmn.php
@@ -87,9 +87,15 @@ class WorkflowBpmn extends Project\Workflow
return parent::getList($start, $limit, $filter, $changeCaseTo);
}
- public function remove($flagRemoveCases = true, $onlyDiagram = false)
+ /**
+ * Remove project bpmn.
+ * @param bool $flagRemoveCases
+ * @param bool $onlyDiagram
+ * @param array $objectsToImport
+ */
+ public function remove($flagRemoveCases = true, $onlyDiagram = false, $objectsToImport = [])
{
- parent::remove($flagRemoveCases, $onlyDiagram);
+ parent::remove($flagRemoveCases, $onlyDiagram, $objectsToImport);
$this->bp->remove();
}