diff --git a/workflow/engine/methods/userPersonalInformation/src/components/personalInformation.vue b/workflow/engine/methods/userPersonalInformation/src/components/personalInformation.vue
index 0e2858eff..7188f99d3 100644
--- a/workflow/engine/methods/userPersonalInformation/src/components/personalInformation.vue
+++ b/workflow/engine/methods/userPersonalInformation/src/components/personalInformation.vue
@@ -10,7 +10,7 @@
autocomplete="off"
:state="validate.USR_FIRSTNAME.state"
@keyup="validateFirstName"
- :disabled="disabled">
+ :disabled="disabledField.USR_FIRSTNAME">
{{validate.USR_FIRSTNAME.message}}
@@ -22,7 +22,7 @@
autocomplete="off"
:state="validate.USR_LASTNAME.state"
@keyup="validateLastName"
- :disabled="disabled">
+ :disabled="disabledField.USR_LASTNAME">
{{validate.USR_LASTNAME.message}}
@@ -36,7 +36,7 @@
@click="avatarClick"
badge-variant="light"
:src="urlImage"
- :disabled="disabled">
+ :disabled="disabledField.USR_PHOTO">
@@ -45,7 +45,7 @@
+ :disabled="disabledField.USR_ADDRESS"/>
@@ -54,7 +54,7 @@
+ :disabled="disabledField.USR_ZIP_CODE"/>
@@ -65,7 +65,7 @@
autocomplete="off"
:state="validate.USR_USERNAME.state"
@keyup="validateUserName"
- :disabled="disabled">
+ :disabled="disabledField.USR_USERNAME">
@@ -77,7 +77,7 @@
+ :disabled="disabledField.USR_COUNTRY"/>
@@ -85,14 +85,14 @@
+ :disabled="disabledField.USR_CITY"/>
+ :disabled="disabledField.USR_LOCATION"/>
@@ -103,7 +103,7 @@
autocomplete="off"
:state="validate.USR_EMAIL.state"
@keyup="validateEmail"
- :disabled="disabled">
+ :disabled="disabledField.USR_EMAIL">
{{validate.USR_EMAIL.message}}
@@ -113,7 +113,7 @@
+ :disabled="disabledField.USR_PHONE"/>
@@ -122,7 +122,7 @@
+ :disabled="disabledField.USR_POSITION"/>
@@ -131,7 +131,7 @@
+ :disabled="disabledField.USR_STATUS"/>
@@ -148,7 +148,7 @@
+ :disabled="disabledField.USR_REPLACED_BY">
@@ -156,7 +156,7 @@
+ :disabled="disabledField.USR_CALENDAR"/>
@@ -165,7 +165,7 @@
+ :disabled="disabledField.USR_DUE_DATE"/>
@@ -174,7 +174,7 @@
+ :disabled="disabledField.USR_TIME_ZONE"/>
@@ -183,7 +183,7 @@
+ :disabled="disabledField.USR_DEFAULT_LANG"/>
@@ -193,7 +193,7 @@
+ :disabled="disabledField.USR_ROLE"/>
@@ -202,7 +202,7 @@
+ :disabled="disabledField.PREF_DEFAULT_MENUSELECTED"/>
@@ -211,7 +211,7 @@
+ :disabled="disabledField.PREF_DEFAULT_CASES_MENUSELECTED"/>
@@ -225,7 +225,7 @@
type="password"
@keyup="validatePassword"
@change="editing=false;"
- :disabled="disabled">
+ :disabled="disabledField.USR_NEW_PASS">
@@ -245,7 +245,7 @@
type="password"
@keyup="validateConfirmationPassword"
@change="editing=false;"
- :disabled="disabled">
+ :disabled="disabledField.USR_CNF_PASS">
@@ -282,24 +282,24 @@
autocomplete="off"
:state="validate.USR_COST_BY_HOUR.state"
@keyup="validateCostByHour"
- :disabled="disabled">
+ :disabled="disabledField.USR_COST_BY_HOUR">
{{validate.USR_COST_BY_HOUR.message}}
+ :disabled="disabledField.USR_UNIT_COST"/>
-
+
+ :disabled="disabledField.USR_LOGGED_NEXT_TIME">
{{$root.translation('ID_USER_MUST_CHANGE_PASSWORD_AT_NEXT_LOGON')}}
@@ -428,6 +428,35 @@
editing: false,
urlImage: "",
disabled: false,
+ disabledField: {
+ USR_FIRSTNAME: false,
+ USR_LASTNAME: false,
+ USR_ADDRESS: false,
+ USR_ZIP_CODE: false,
+ USR_COUNTRY: false,
+ USR_CITY: false,
+ USR_LOCATION: false,
+ USR_USERNAME: false,
+ USR_PHONE: false,
+ USR_POSITION: false,
+ USR_EMAIL: false,
+ USR_REPLACED_BY: false,
+ USR_CALENDAR: false,
+ USR_STATUS: false,
+ USR_TIME_ZONE: false,
+ USR_DEFAULT_LANG: false,
+ USR_DUE_DATE: false,
+ PREF_DEFAULT_MENUSELECTED: false,
+ PREF_DEFAULT_CASES_MENUSELECTED: false,
+ USR_ROLE: false,
+ USR_COST_BY_HOUR: false,
+ USR_UNIT_COST: false,
+ USR_NEW_PASS: false,
+ USR_CNF_PASS: false,
+ USR_LOGGED_NEXT_TIME: false,
+ USR_PHOTO: false
+ },
+ permission: {},
classCustom: "",
classCustom2: ""
};
@@ -449,11 +478,17 @@
//additional modes
if (this.$root.modeOfForm() === 1) {
this.disabled = false;
+ for (let i in this.disabledField) {
+ this.disabledField[i] = false;
+ }
this.classCustom = "";
this.classCustom2 = "sr-only sr-only-focusable";
}
if (this.$root.modeOfForm() === 2) {
this.disabled = true;
+ for (let i in this.disabledField) {
+ this.disabledField[i] = true;
+ }
this.classCustom = "sr-only sr-only-focusable";
this.classCustom2 = "";
}
@@ -467,6 +502,14 @@
this.classCustom = "";
this.classCustom2 = "sr-only sr-only-focusable";
this.disabled = false;
+ for (let i in this.disabledField) {
+ this.disabledField[i] = false;
+ }
+ for (let i in this.permission) {
+ if (i in this.disabledField) {
+ this.disabledField[i] = true;
+ }
+ }
},
cancel() {
if (this.$root.modeOfForm() === 1) {
@@ -476,6 +519,9 @@
this.classCustom = "sr-only sr-only-focusable";
this.classCustom2 = "";
this.disabled = true;
+ for (let i in this.disabledField) {
+ this.disabledField[i] = true;
+ }
for (let i in this.validate) {
this.validate[i].state = null;
}
@@ -583,6 +629,9 @@
this.classCustom = "sr-only sr-only-focusable";
this.classCustom2 = "";
this.disabled = true;
+ for (let i in this.disabledField) {
+ this.disabledField[i] = true;
+ }
for (let i in this.validate) {
this.validate[i].state = null;
}
@@ -627,6 +676,24 @@
return axios.post(this.$root.baseUrl() + "users/usersAjax", formData)
.then(response => {
response;
+ if ("error" in response.data && response.data.error !== "") {
+ this.$bvModal.msgBoxOk(this.$root.translation(response.data.error), {
+ title: " ", //is important because title disappear
+ hideHeaderClose: false,
+ okTitle: this.$root.translation('ID_OK'),
+ okVariant: "success",
+ okOnly: true
+ }).then(value => {
+ if (value === false) {
+ return;
+ }
+ }).catch(err => {
+ err;
+ });
+ this.disableButtonSave = false;
+ this.validate.USR_USERNAME.state = true;
+ return;
+ }
this.disableButtonSave = false;
this.validate.USR_USERNAME.message = response.data.descriptionText;
if (response.data.exists === false) {
@@ -736,6 +803,17 @@
return axios.post(this.$root.baseUrl() + "users/usersAjax", formData)
.then(response => {
response;
+ if ("permission" in response.data) {
+ this.permission = response.data.permission;
+ //match attribute
+ if ("USR_REGION" in this.permission) {
+ this.permission.USR_CITY = this.permission.USR_REGION;
+ delete this.permission.USR_REGION;
+ }
+ if ("USR_CUR_PASS" in this.permission) {
+ delete this.permission.USR_CUR_PASS;
+ }
+ }
if ("user" in response.data) {
for (let i in this.form) {
if (i in response.data.user) {
@@ -845,7 +923,7 @@
});
},
getUsersList() {
- if(this.filterUser.trim() === ""){
+ if (this.filterUser.trim() === "") {
this.usersList = [];
return null;
}