This commit is contained in:
2020-06-06 23:25:11 +00:00
parent b83f37e7ca
commit ffef3880d3
5 changed files with 33 additions and 4 deletions

View File

@@ -8,6 +8,10 @@ WIFI change 5g channel to 52,56,60 and 2g channel to 8
todo: readonly not enough, sb disabled as well, check widget and anywhere readonly is set and examine to see if that's a good change todo: readonly not enough, sb disabled as well, check widget and anywhere readonly is set and examine to see if that's a good change
todo: if widget is readonly customize still shows
it's read only (but looks enabled)
should it even show as a menu option? (probably not)
todo: PickList, hide open button if disabled and show an active button so user can still click, that's not restricted when readonly
todo: Administration - License todo: Administration - License
- view - view

View File

@@ -9,6 +9,7 @@
locale: languageName locale: languageName
}" }"
:readonly="readonly" :readonly="readonly"
:disabled="disabled"
:label="label" :label="label"
:rules="rules" :rules="rules"
></v-text-field> ></v-text-field>
@@ -41,6 +42,7 @@ export default {
rules: Array, rules: Array,
value: { type: Number, default: null }, value: { type: Number, default: null },
readonly: { type: Boolean, default: false }, readonly: { type: Boolean, default: false },
disabled: { type: Boolean, default: false },
error: { error: {
type: String, type: String,
required: false required: false

View File

@@ -20,6 +20,7 @@
<gz-date-time-picker <gz-date-time-picker
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readonly" :readonly="readonly"
:disabled="disabled"
:label="$ay.t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="!!$ay.dev ? item.fld : false" :data-cy="!!$ay.dev ? item.fld : false"
@@ -40,6 +41,7 @@
<gz-date-picker <gz-date-picker
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readonly" :readonly="readonly"
:disabled="disabled"
:label="$ay.t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="!!$ay.dev ? item.fld : false" :data-cy="!!$ay.dev ? item.fld : false"
@@ -59,6 +61,7 @@
<gz-time-picker <gz-time-picker
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readonly" :readonly="readonly"
:disabled="disabled"
:label="$ay.t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="!!$ay.dev ? item.fld : false" :data-cy="!!$ay.dev ? item.fld : false"
@@ -78,6 +81,7 @@
<v-textarea <v-textarea
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readonly" :readonly="readonly"
:disabled="disabled"
:label="$ay.t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="!!$ay.dev ? item.fld : false" :data-cy="!!$ay.dev ? item.fld : false"
@@ -99,6 +103,7 @@
<v-text-field <v-text-field
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readonly" :readonly="readonly"
:disabled="disabled"
:label="$ay.t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="!!$ay.dev ? item.fld : false" :data-cy="!!$ay.dev ? item.fld : false"
@@ -122,6 +127,7 @@
<v-checkbox <v-checkbox
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readonly" :readonly="readonly"
:disabled="disabled"
:label="$ay.t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="!!$ay.dev ? item.fld : false" :data-cy="!!$ay.dev ? item.fld : false"
@@ -141,6 +147,7 @@
<gz-decimal <gz-decimal
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readonly" :readonly="readonly"
:disabled="disabled"
:label="$ay.t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="!!$ay.dev ? item.fld : false" :data-cy="!!$ay.dev ? item.fld : false"
@@ -160,6 +167,7 @@
<gz-currency <gz-currency
v-model="_self[item.dataKey]" v-model="_self[item.dataKey]"
:readonly="readonly" :readonly="readonly"
:disabled="disabled"
:label="$ay.t(item.fld)" :label="$ay.t(item.fld)"
:ref="item.fld" :ref="item.fld"
:data-cy="!!$ay.dev ? item.fld : false" :data-cy="!!$ay.dev ? item.fld : false"
@@ -202,6 +210,7 @@ export default {
}, },
formKey: String, //used to grab template from store formKey: String, //used to grab template from store
readonly: Boolean, readonly: Boolean,
disabled: Boolean,
parentVM: Object parentVM: Object
}, },

View File

@@ -4,6 +4,7 @@
v-bind:value="value" v-bind:value="value"
v-on:input="selectionMade($event)" v-on:input="selectionMade($event)"
:readonly="readonly" :readonly="readonly"
:disabled="disabled"
return-object return-object
:items="searchResults" :items="searchResults"
:label="label" :label="label"
@@ -62,6 +63,7 @@ export default {
default: null default: null
}, },
readonly: { type: Boolean, default: false }, readonly: { type: Boolean, default: false },
disabled: { type: Boolean, default: false },
ayaType: { ayaType: {
type: Number, type: Number,
default: 0 default: 0

View File

@@ -10,6 +10,7 @@
<v-text-field <v-text-field
v-model="obj.name" v-model="obj.name"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:disabled="formState.readOnly"
:clearable="!formState.readOnly" :clearable="!formState.readOnly"
@click:clear="fieldValueChanged('name')" @click:clear="fieldValueChanged('name')"
:counter="255" :counter="255"
@@ -34,6 +35,7 @@
<v-text-field <v-text-field
v-model="obj.serial" v-model="obj.serial"
:readonly="true" :readonly="true"
:disabled="formState.readOnly"
:label="$ay.t('WidgetSerial')" :label="$ay.t('WidgetSerial')"
:data-cy="!!$ay.dev ? 'serial' : false" :data-cy="!!$ay.dev ? 'serial' : false"
></v-text-field> ></v-text-field>
@@ -48,6 +50,7 @@
<v-text-field <v-text-field
v-model="obj.count" v-model="obj.count"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:disabled="formState.readOnly"
:clearable="!formState.readOnly" :clearable="!formState.readOnly"
@click:clear="fieldValueChanged('count')" @click:clear="fieldValueChanged('count')"
:counter="10" :counter="10"
@@ -71,6 +74,7 @@
<gz-currency <gz-currency
v-model="obj.dollarAmount" v-model="obj.dollarAmount"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:disabled="formState.readOnly"
:label="$ay.t('WidgetDollarAmount')" :label="$ay.t('WidgetDollarAmount')"
ref="dollarAmount" ref="dollarAmount"
:data-cy="!!$ay.dev ? 'dollarAmount' : false" :data-cy="!!$ay.dev ? 'dollarAmount' : false"
@@ -88,6 +92,7 @@
:label="$ay.t('WidgetStartDate')" :label="$ay.t('WidgetStartDate')"
v-model="obj.startDate" v-model="obj.startDate"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:disabled="formState.readOnly"
ref="startDate" ref="startDate"
testId="startDate" testId="startDate"
:error-messages="form().serverErrors(this, 'startDate')" :error-messages="form().serverErrors(this, 'startDate')"
@@ -102,6 +107,7 @@
:error-messages="form().serverErrors(this, 'endDate')" :error-messages="form().serverErrors(this, 'endDate')"
v-model="obj.endDate" v-model="obj.endDate"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:disabled="formState.readOnly"
ref="endDate" ref="endDate"
testId="endDate" testId="endDate"
@input="fieldValueChanged('endDate')" @input="fieldValueChanged('endDate')"
@@ -117,6 +123,7 @@
<v-checkbox <v-checkbox
v-model="obj.active" v-model="obj.active"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:disabled="formState.readOnly"
:label="$ay.t('Active')" :label="$ay.t('Active')"
ref="active" ref="active"
:data-cy="!!$ay.dev ? 'active' : false" :data-cy="!!$ay.dev ? 'active' : false"
@@ -137,6 +144,7 @@
:showEditIcon="true" :showEditIcon="true"
v-model="obj.userId" v-model="obj.userId"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:disabled="formState.readOnly"
:label="$ay.t('User')" :label="$ay.t('User')"
ref="userid" ref="userid"
:data-cy="!!$ay.dev ? 'userid' : false" :data-cy="!!$ay.dev ? 'userid' : false"
@@ -158,6 +166,7 @@
item-text="name" item-text="name"
item-value="id" item-value="id"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:disabled="formState.readOnly"
:label="$ay.t('UserType')" :label="$ay.t('UserType')"
ref="usertype" ref="usertype"
:data-cy="!!$ay.dev ? 'usertype' : false" :data-cy="!!$ay.dev ? 'usertype' : false"
@@ -171,6 +180,7 @@
<v-textarea <v-textarea
v-model="obj.notes" v-model="obj.notes"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:disabled="formState.readOnly"
:label="$ay.t('WidgetNotes')" :label="$ay.t('WidgetNotes')"
:error-messages="form().serverErrors(this, 'notes')" :error-messages="form().serverErrors(this, 'notes')"
ref="notes" ref="notes"
@@ -185,6 +195,7 @@
<gz-tag-picker <gz-tag-picker
v-model="obj.tags" v-model="obj.tags"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:disabled="formState.readOnly"
ref="tags" ref="tags"
:data-cy="!!$ay.dev ? 'tags' : false" :data-cy="!!$ay.dev ? 'tags' : false"
:error-messages="form().serverErrors(this, 'tags')" :error-messages="form().serverErrors(this, 'tags')"
@@ -197,6 +208,7 @@
v-model="obj.customFields" v-model="obj.customFields"
:formKey="formCustomTemplateKey" :formKey="formCustomTemplateKey"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:disabled="formState.readOnly"
:parentVM="this" :parentVM="this"
ref="customFields" ref="customFields"
:data-cy="!!$ay.dev ? 'customFields' : false" :data-cy="!!$ay.dev ? 'customFields' : false"
@@ -212,6 +224,7 @@
ref="wiki" ref="wiki"
v-model="obj.wiki" v-model="obj.wiki"
:readonly="formState.readOnly" :readonly="formState.readOnly"
:disabled="formState.readOnly"
@input="fieldValueChanged('wiki')" @input="fieldValueChanged('wiki')"
></gz-wiki ></gz-wiki
></v-col> ></v-col>
@@ -222,6 +235,7 @@
> >
<gz-attachments <gz-attachments
:readonly="formState.readOnly" :readonly="formState.readOnly"
:disabled="formState.readOnly"
:ayaType="ayaType" :ayaType="ayaType"
:ayaId="obj.id" :ayaId="obj.id"
></gz-attachments ></gz-attachments
@@ -256,21 +270,19 @@ export default {
initForm(vm) initForm(vm)
.then(() => { .then(() => {
vm.rights = window.$gz.role.getRights(window.$gz.type.Widget); vm.rights = window.$gz.role.getRights(window.$gz.type.Widget);
vm.formState.readOnly = !vm.rights.change;
window.$gz.eventBus.$on("menu-click", clickHandler); window.$gz.eventBus.$on("menu-click", clickHandler);
//id 0 means create a new record don't load one //id 0 means create a new record don't load one
if (vm.$route.params.recordid != 0) { if (vm.$route.params.recordid != 0) {
vm.getDataFromApi(vm.$route.params.recordid); vm.getDataFromApi(vm.$route.params.recordid);
} else { } else {
//setup for new record //setup for new record
let readOnly = !vm.rights.change;
//Update the form status //Update the form status
window.$gz.form.setFormState({ window.$gz.form.setFormState({
vm: vm, vm: vm,
dirty: false, dirty: false,
valid: true, valid: true,
loading: false, loading: false
readOnly: readOnly
}); });
// //bugbug WTF? This doesn't make sense, if it's an attempt to hide delete button then that's wrong // //bugbug WTF? This doesn't make sense, if it's an attempt to hide delete button then that's wrong