- miglioramenti ricerca titoli e modifica del trafiletto
- miglior visualizzazione delle liste
This commit is contained in:
@@ -15,6 +15,7 @@ import { CCurrencyValue } from '../CCurrencyValue'
|
||||
import { CMapEditAddressByCoord } from '../CMapEditAddressByCoord'
|
||||
import { CInput } from '../CInput'
|
||||
import { CMyEditor } from '../CMyEditor'
|
||||
import { CMyEditorAI } from '../CMyEditorAI'
|
||||
import { CGallery } from '../CGallery'
|
||||
import { CSelectImage } from '../CSelectImage'
|
||||
import { CAccomodation } from '../CAccomodation'
|
||||
@@ -219,7 +220,7 @@ export default defineComponent({
|
||||
},
|
||||
},
|
||||
components: {
|
||||
CMyChipList, CDateTime, CDate, CMyToggleList, CMySelect, CMyEditor, CGallery,
|
||||
CMyChipList, CDateTime, CDate, CMyToggleList, CMySelect, CMyEditor, CGallery, CMyEditorAI,
|
||||
CCurrencyValue, CLabel, CAccomodation, CSelectImage, CMapEditAddressByCoord, CInput,
|
||||
},
|
||||
setup(props, { emit }) {
|
||||
@@ -254,6 +255,27 @@ export default defineComponent({
|
||||
minlength: props.mycol ? props.mycol.minlength : undefined
|
||||
})
|
||||
|
||||
const copyToClipboard = (text) => {
|
||||
navigator.clipboard.writeText(text)
|
||||
.then(() => {
|
||||
$q.notify({
|
||||
message: 'Testo copiato negli appunti!',
|
||||
color: 'positive',
|
||||
icon: 'check',
|
||||
position: 'top'
|
||||
});
|
||||
})
|
||||
.catch(err => {
|
||||
console.error('Errore durante la copia:', err);
|
||||
$q.notify({
|
||||
message: 'Errore nella copia',
|
||||
color: 'negative',
|
||||
icon: 'error',
|
||||
position: 'top'
|
||||
});
|
||||
});
|
||||
};
|
||||
|
||||
const { setValDb, getValDb } = MixinBase()
|
||||
const { getMyUsername } = MixinUsers()
|
||||
|
||||
@@ -414,7 +436,7 @@ export default defineComponent({
|
||||
}
|
||||
|
||||
function changevalRecOrig(newval: any, subcol: string = '') {
|
||||
console.log('changevalRec', newval)
|
||||
// console.log('changevalRec', newval)
|
||||
// if (!props.insertMode || (props.insertMode && col.value.fieldtype !== costanti.FieldType.multioption)) {
|
||||
if (col.value && col.value.allowchar === costanti.ALLOWCHAR_CODE) {
|
||||
newval = tools.removespaces_slash(newval)
|
||||
@@ -481,8 +503,7 @@ export default defineComponent({
|
||||
}
|
||||
|
||||
function mounted() {
|
||||
console.log('mounted CMyPopupEdit')
|
||||
|
||||
//console.log('mounted CMyPopupEdit')
|
||||
|
||||
myrow.value = props.rec && props.isrec ? { ...props.rec } : { ...props.row }
|
||||
|
||||
@@ -928,6 +949,7 @@ export default defineComponent({
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
onBeforeMount(mounted)
|
||||
|
||||
|
||||
@@ -975,6 +997,7 @@ export default defineComponent({
|
||||
handleKeydown,
|
||||
handleCancel,
|
||||
popupEditRef,
|
||||
copyToClipboard,
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
@@ -183,6 +183,36 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="col.fieldtype === costanti.FieldType.op_andor">
|
||||
<div>
|
||||
<q-select
|
||||
v-if="isInModif"
|
||||
v-model="myvalue"
|
||||
:label="t('dialog.condition')"
|
||||
:options="[
|
||||
{ label: $t('dialog.conditionAND'), value: costanti.OP_ANDOR.OP_AND },
|
||||
{ label: $t('dialog.conditionOR'), value: costanti.OP_ANDOR.OP_OR },
|
||||
]"
|
||||
emit-value
|
||||
map-options
|
||||
@update:model-value="changevalRec"
|
||||
>
|
||||
</q-select>
|
||||
<span v-else>
|
||||
<div class="text-subtitle2 text-primary text-weight-medium">
|
||||
{{ $t('dialog.condition') }}
|
||||
</div>
|
||||
|
||||
<q-chip
|
||||
class="q-ma-md q-pa-sm"
|
||||
:color="myvalue === costanti.OP_ANDOR.OP_AND ? 'red' : 'green'"
|
||||
text-color="white"
|
||||
:icon="myvalue === costanti.OP_ANDOR.OP_AND ? 'fas fa-filter' : 'fas fa-sliders-h'"
|
||||
:label="myvalue === costanti.OP_ANDOR.OP_AND ? $t('dialog.conditionAND') : $t('dialog.conditionOR')"
|
||||
></q-chip>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="col.fieldtype === costanti.FieldType.string || col.fieldtype === costanti.FieldType.crypted">
|
||||
<div
|
||||
v-if="isInModif"
|
||||
@@ -1072,6 +1102,22 @@
|
||||
</q-checkbox>
|
||||
<span v-html="visuValByType(myvalue, col, row)"></span>
|
||||
</div>
|
||||
<div v-else-if="col.fieldtype === costanti.FieldType.op_andor">
|
||||
<q-select
|
||||
v-model="scope.value"
|
||||
:label="t('dialog.condition')"
|
||||
:options="[
|
||||
{ label: 'Filtra se Tutti i criteri sono veri (AND)', value: costanti.OP_ANDOR.OP_AND },
|
||||
{ label: 'Filtra se almeno uno dei criteri è vero (OR)', value: costanti.OP_ANDOR.OP_OR },
|
||||
]"
|
||||
emit-value
|
||||
map-options
|
||||
:color="scope.value === costanti.OP_ANDOR.OP_AND ? 'red' : 'green'"
|
||||
:icon="scope.value === costanti.OP_ANDOR.OP_AND ? 'fas fa-filter' : 'fas fa-sliders-h'"
|
||||
@update:model-value="changevalRec"
|
||||
>
|
||||
</q-select>
|
||||
</div>
|
||||
<div
|
||||
v-else-if="col.fieldtype === costanti.FieldType.string || col.fieldtype === costanti.FieldType.crypted"
|
||||
>
|
||||
@@ -1097,6 +1143,25 @@
|
||||
</template>
|
||||
</q-input>
|
||||
</div>
|
||||
<div v-else-if="col.fieldtype === costanti.FieldType.editor_nohtml">
|
||||
<div
|
||||
class="q-pa-md"
|
||||
style="min-width: 600px;"
|
||||
>
|
||||
<CMyEditorAI
|
||||
v-model:value="scope.value"
|
||||
:title="col.visulabel ? t(col.label_trans) : visulabel ? addstrrequired + col.label : undefined"
|
||||
@keyup.enter.stop
|
||||
:showButtons="false"
|
||||
:canModify="canModify"
|
||||
:hideTools="true"
|
||||
@update:value="changevalRec"
|
||||
@showandsave="Savedb"
|
||||
:maxlength="col.maxlength"
|
||||
>
|
||||
</CMyEditorAI>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="col.fieldtype === costanti.FieldType.number">
|
||||
<div v-if="visulabel">
|
||||
<q-input
|
||||
|
||||
Reference in New Issue
Block a user