- Catalogo: Aggiunta di Schede
This commit is contained in:
@@ -2,7 +2,7 @@ import {
|
||||
defineComponent, onMounted, PropType, computed, ref, toRef, watch,
|
||||
} from 'vue'
|
||||
|
||||
import { IColGridTable, IElemText, IImgGallery, ILabelValue, IMyCard, IMyElem, IMyPage, IOperators } from '@src/model'
|
||||
import { IColGridTable, IElemText, IImgGallery, ILabelValue, IMyCard, IMyElem, IMyPage, IMyScheda, IOperators, ISchedaSingola } from '@src/model'
|
||||
import { useGlobalStore } from '@store/globalStore'
|
||||
|
||||
import { CImgTitle } from '@/components/CImgTitle'
|
||||
@@ -40,7 +40,7 @@ export default defineComponent({
|
||||
CCardCarousel, COpenStreetMap, CMyPage, CMyPageIntro, CMyEditor, CMyFieldRec,
|
||||
CSelectColor, CSelectFontSize, CSelectImage, CImgPoster, CSelectAnimation, CMySlider
|
||||
},
|
||||
emits: ['saveElem', 'selElemClick', 'toggleSize', 'deleteElem'],
|
||||
emits: ['saveElem', 'selElemClick', 'toggleSize', 'deleteElem', 'dupPage'],
|
||||
props: {
|
||||
myelem: {
|
||||
type: Object as PropType<IMyElem>,
|
||||
@@ -51,6 +51,11 @@ export default defineComponent({
|
||||
required: false,
|
||||
default: '',
|
||||
},
|
||||
IdPath: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: '',
|
||||
},
|
||||
editOn: {
|
||||
type: Boolean,
|
||||
required: false,
|
||||
@@ -72,10 +77,16 @@ export default defineComponent({
|
||||
const $q = useQuasar()
|
||||
const { t } = useI18n()
|
||||
|
||||
const posizTextOptions = ref([
|
||||
{ label: 'In basso', value: costanti.POSIZ_TESTO.IN_BASSO },
|
||||
{ label: 'A Destra', value: costanti.POSIZ_TESTO.A_DESTRA },
|
||||
])
|
||||
|
||||
const animare = ref(0)
|
||||
const slide = ref(0)
|
||||
const slide2 = ref(0)
|
||||
const tabCard = ref('card0')
|
||||
const tabCard = ref(0)
|
||||
const tabScheda = ref(0)
|
||||
const tabElemsText = ref('elem0')
|
||||
const arrPages = ref([] as any[])
|
||||
const disableSave = ref(true)
|
||||
@@ -161,6 +172,9 @@ export default defineComponent({
|
||||
// emit('updateAll', newrec)
|
||||
}
|
||||
|
||||
async function dupPage() {
|
||||
emit('dupPage', null)
|
||||
}
|
||||
async function dupElem(order?: number) {
|
||||
|
||||
const newrec: IMyElem = { ...props.myelem }
|
||||
@@ -246,6 +260,77 @@ export default defineComponent({
|
||||
|
||||
|
||||
}
|
||||
function addNewScheda() {
|
||||
|
||||
let maxorder = 0
|
||||
myel.value.catalogo!.arrSchede?.forEach(scheda => {
|
||||
if (scheda.order > maxorder) {
|
||||
maxorder = scheda.order
|
||||
}
|
||||
})
|
||||
|
||||
let newscheda: IMyScheda = {
|
||||
_id: objectId(),
|
||||
idapp: tools.appid()!,
|
||||
isTemplate: false,
|
||||
name: 'Scheda Nuova',
|
||||
widthscheda: '360px',
|
||||
line_height: 100,
|
||||
widthpag: 800,
|
||||
width: 150,
|
||||
height: 234,
|
||||
numschede_perRiga: 2,
|
||||
numschede_perCol: 2,
|
||||
margine_top: 12,
|
||||
margine_pagina: '92px',
|
||||
margine_riga: '41px',
|
||||
text: '',
|
||||
posiz_text: costanti.POSIZ_TESTO.A_DESTRA,
|
||||
|
||||
productTypes: [],
|
||||
excludeproductTypes: [],
|
||||
editore: [],
|
||||
author: '',
|
||||
sort: costanti.SORT_PUBDATE,
|
||||
arrProdottiSpeciali: [],
|
||||
}
|
||||
|
||||
if (!myel.value.catalogo!.arrSchede)
|
||||
myel.value.catalogo!.arrSchede = []
|
||||
|
||||
myel.value.catalogo!.arrSchede.push(
|
||||
{
|
||||
_id: objectId(),
|
||||
scheda: { ...newscheda },
|
||||
order: maxorder + 10,
|
||||
numSchede: 1,
|
||||
}
|
||||
)
|
||||
// console.log('arrschede', myel.value.catalogo!.arrSchede)
|
||||
|
||||
modifElem()
|
||||
|
||||
}
|
||||
function dupNewScheda(id: string) {
|
||||
if (!myel.value.catalogo!.arrSchede)
|
||||
return
|
||||
|
||||
const myfindscheda = myel.value.catalogo!.arrSchede.find((scheda: ISchedaSingola) => scheda._id === id)
|
||||
|
||||
if (myfindscheda) {
|
||||
let myscheda = { ...myfindscheda }
|
||||
delete myscheda._id
|
||||
myscheda._id = objectId()
|
||||
|
||||
const bakscheda = [...myel.value.catalogo!.arrSchede]
|
||||
|
||||
myel.value.catalogo!.arrSchede = []
|
||||
myel.value.catalogo!.arrSchede = [...bakscheda, myscheda]
|
||||
modifElem()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
function dupNewCard() {
|
||||
if (!myel.value.listcards)
|
||||
@@ -306,10 +391,17 @@ export default defineComponent({
|
||||
myel.elemsText = myel.elemsText.filter((rec: IElemText) => rec._id !== id)
|
||||
}
|
||||
|
||||
}
|
||||
function delRecScheda(id: string, myel: IMyElem) {
|
||||
//
|
||||
myel.catalogo!.arrSchede = myel.catalogo!.arrSchede!.filter((scheda: ISchedaSingola) => scheda._id !== id)
|
||||
|
||||
modifElem()
|
||||
|
||||
}
|
||||
|
||||
function saveFieldElem(rec: any, newval: any, col: IColGridTable) {
|
||||
console.log('saveFieldElem', rec, 'newval', newval, 'col', col)
|
||||
//console.log('saveFieldElem', rec, 'newval', newval, 'col', col)
|
||||
|
||||
let iscatalogo = costanti.CATALOGO_FIELDS.includes(col.name)
|
||||
|
||||
@@ -366,7 +458,7 @@ export default defineComponent({
|
||||
|
||||
}
|
||||
modifElem()
|
||||
|
||||
|
||||
}
|
||||
|
||||
function showAnimation() {
|
||||
@@ -399,6 +491,20 @@ export default defineComponent({
|
||||
return options;
|
||||
}
|
||||
|
||||
function SchedeOpt() {
|
||||
const arrschede = globalStore.getMySchede()
|
||||
|
||||
let arr: any = []
|
||||
|
||||
if (arrschede) {
|
||||
arrschede.forEach(scheda => {
|
||||
arr.push({ label: scheda.name, value: scheda._id })
|
||||
});
|
||||
}
|
||||
|
||||
return arr
|
||||
}
|
||||
|
||||
function updateSizeWidth(value: any) {
|
||||
// Gestisce l'input dell'utente per un nuovo valore
|
||||
myel.value.widthimg = value; // Aggiorna widthimg con il nuovo valore
|
||||
@@ -409,36 +515,6 @@ export default defineComponent({
|
||||
myel.value.catalogo!.width = value // Aggiorna widthimg con il nuovo valore
|
||||
modifElem()
|
||||
}
|
||||
function updateCatalogoNumSchedePerCol(value: any) {
|
||||
// Gestisce l'input dell'utente per un nuovo valore
|
||||
myel.value.catalogo!.numschede_perCol = value // Aggiorna widthimg con il nuovo valore
|
||||
modifElem()
|
||||
}
|
||||
function updateCatalogoNumSchedePerRiga(value: any) {
|
||||
// Gestisce l'input dell'utente per un nuovo valore
|
||||
myel.value.catalogo!.numschede_perRiga = value // Aggiorna widthimg con il nuovo valore
|
||||
modifElem()
|
||||
}
|
||||
function updateCatalogoSizeWidthScheda(value: any) {
|
||||
// Gestisce l'input dell'utente per un nuovo valore
|
||||
myel.value.catalogo!.widthscheda = value // Aggiorna widthimg con il nuovo valore
|
||||
modifElem()
|
||||
}
|
||||
function updateCatalogoSizeWidthPag(value: any) {
|
||||
// Gestisce l'input dell'utente per un nuovo valore
|
||||
myel.value.catalogo!.widthpag = value // Aggiorna widthimg con il nuovo valore
|
||||
modifElem()
|
||||
}
|
||||
function updateCatalogoSizeWidthPagPrintable(value: any) {
|
||||
// Gestisce l'input dell'utente per un nuovo valore
|
||||
myel.value.catalogo!.widthpagPrintable = value // Aggiorna widthimg con il nuovo valore
|
||||
modifElem()
|
||||
}
|
||||
function updateCatalogoSizeHeight(value: any) {
|
||||
myel.value.catalogo!.height = value
|
||||
modifElem()
|
||||
}
|
||||
|
||||
function updateSizeHeight(value: any) {
|
||||
myel.value.heightimg = value; // Aggiorna widthimg con il nuovo valore
|
||||
modifElem()
|
||||
@@ -466,10 +542,14 @@ export default defineComponent({
|
||||
neworder.value = rec
|
||||
}
|
||||
|
||||
function addProdSpeciale(rec: any) {
|
||||
neworder.value = rec
|
||||
}
|
||||
|
||||
async function moveElem(direz: any) {
|
||||
let myelem = props.myelem
|
||||
|
||||
const elemprec = globalStore.getMyElemPrecThisElemId(props.path, myelem._id)
|
||||
const elemprec = globalStore.getMyElemPrecThisElemId(props.path, myelem._id!)
|
||||
const elemnext = globalStore.getMyElemNextThisElemId(props.path, myelem._id!)
|
||||
|
||||
let neworder = 0
|
||||
@@ -589,12 +669,14 @@ export default defineComponent({
|
||||
classiImmagineOptions,
|
||||
saveFieldElem,
|
||||
updateCatalogoSizeWidth,
|
||||
updateCatalogoSizeHeight,
|
||||
updateCatalogoSizeWidthScheda,
|
||||
updateCatalogoSizeWidthPag,
|
||||
updateCatalogoSizeWidthPagPrintable,
|
||||
updateCatalogoNumSchedePerCol,
|
||||
updateCatalogoNumSchedePerRiga,
|
||||
dupPage,
|
||||
posizTextOptions,
|
||||
tabScheda,
|
||||
addNewScheda,
|
||||
dupNewScheda,
|
||||
delRecScheda,
|
||||
SchedeOpt,
|
||||
addProdSpeciale,
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
@@ -53,6 +53,15 @@
|
||||
|
||||
|
||||
<q-space />
|
||||
<q-btn
|
||||
icon="far fa-copy"
|
||||
label="Duplica Pagina"
|
||||
dense
|
||||
size="sm"
|
||||
color="fuchsia"
|
||||
@click="dupPage()"
|
||||
>
|
||||
</q-btn>
|
||||
<q-btn
|
||||
icon="fas fa-trash-alt"
|
||||
color="negative"
|
||||
@@ -70,6 +79,15 @@
|
||||
@click="dupElem(myel.order + 10 * direzadd)"
|
||||
>
|
||||
</q-btn>
|
||||
<q-btn
|
||||
dense
|
||||
icon="fas fa-check"
|
||||
color="positive"
|
||||
label="Salva"
|
||||
size="sm"
|
||||
@click="saveElem"
|
||||
>
|
||||
</q-btn>
|
||||
</q-bar>
|
||||
<div class="fixed-button">
|
||||
<div class="justify-center row q-ma-xs">
|
||||
@@ -403,7 +421,7 @@
|
||||
rounded
|
||||
dense
|
||||
color="primary"
|
||||
label="Scheda"
|
||||
label="Aggiungi"
|
||||
icon="fas fa-plus"
|
||||
@click="addNewCard"
|
||||
>
|
||||
@@ -412,7 +430,7 @@
|
||||
rounded
|
||||
dense
|
||||
color="primary"
|
||||
label="Scheda"
|
||||
label="Duplica"
|
||||
icon="fas fa-copy"
|
||||
@click="dupNewCard"
|
||||
>
|
||||
@@ -1317,154 +1335,467 @@
|
||||
</q-select>
|
||||
</div>
|
||||
<div v-else-if="myel.type === shared_consts.ELEMTYPE.CATALOGO">
|
||||
<div v-if="enableEdit" class="row">
|
||||
<div>Cataloghi:</div>
|
||||
<br />
|
||||
<q-toggle
|
||||
v-model="myel.catalogo.pdf"
|
||||
color="positive"
|
||||
icon="fas fa-file-pdf"
|
||||
label="Versione PDF"
|
||||
@update:model-value="modifElem"
|
||||
>
|
||||
</q-toggle>
|
||||
<br />
|
||||
|
||||
<!--++AddCATALOGO_FIELDS-->
|
||||
<q-select
|
||||
:behavior="$q.platform.is.ios === true ? 'dialog' : 'menu'"
|
||||
v-if="enableEdit && myel.catalogo && myel.catalogo.productTypes"
|
||||
rounded
|
||||
outlined
|
||||
v-model="myel.catalogo.productTypes"
|
||||
:options="shared_consts.VERSIONI_PRODOTTO"
|
||||
@update:model-value="modifElem"
|
||||
multiple
|
||||
dense
|
||||
label="Includi"
|
||||
style="width: 150px"
|
||||
emit-value
|
||||
map-options
|
||||
>
|
||||
</q-select>
|
||||
|
||||
<q-select
|
||||
:behavior="$q.platform.is.ios === true ? 'dialog' : 'menu'"
|
||||
v-if="
|
||||
enableEdit && myel.catalogo && myel.catalogo.excludeproductTypes
|
||||
"
|
||||
rounded
|
||||
outlined
|
||||
v-model="myel.catalogo.excludeproductTypes"
|
||||
:options="shared_consts.VERSIONI_PRODOTTO"
|
||||
@update:model-value="modifElem"
|
||||
multiple
|
||||
dense
|
||||
label="Escludi"
|
||||
style="width: 150px"
|
||||
emit-value
|
||||
map-options
|
||||
>
|
||||
</q-select>
|
||||
<q-select
|
||||
:behavior="$q.platform.is.ios === true ? 'dialog' : 'menu'"
|
||||
v-if="enableEdit"
|
||||
rounded
|
||||
outlined
|
||||
v-model="myel.catalogo.Editore"
|
||||
:options="Products.publishers"
|
||||
@update:model-value="modifElem"
|
||||
multiple
|
||||
dense
|
||||
label="Editori"
|
||||
style="width: 150px"
|
||||
emit-value
|
||||
map-options
|
||||
option-value="_id"
|
||||
option-label="name"
|
||||
>
|
||||
</q-select>
|
||||
|
||||
<CMySlider
|
||||
label="Larghezza Schede:"
|
||||
v-model="myel.catalogo.widthscheda"
|
||||
:min="10"
|
||||
:max="1000"
|
||||
color="green"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
<CMySlider
|
||||
label="Larghezza Pagina:"
|
||||
v-model="myel.catalogo.widthpag"
|
||||
:min="10"
|
||||
:max="1000"
|
||||
color="green"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
<CMySlider
|
||||
label="Larghezza Immagini:"
|
||||
v-model="myel.catalogo.width"
|
||||
:min="10"
|
||||
:max="1000"
|
||||
color="green"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
<CMySlider
|
||||
label="Altezza Schede:"
|
||||
v-model="myel.catalogo.height"
|
||||
:min="10"
|
||||
:max="1000"
|
||||
color="red"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
</div>
|
||||
<div class="sfondo_margine">
|
||||
Margini:<br />
|
||||
<CMySlider
|
||||
label="Schede per Riga"
|
||||
v-model="myel.catalogo.numschede_perRiga"
|
||||
:min="1"
|
||||
:max="10"
|
||||
color="green"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
<CMySlider
|
||||
label="Schede per Colonna"
|
||||
v-model="myel.catalogo.numschede_perCol"
|
||||
:min="1"
|
||||
:max="10"
|
||||
color="red"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
<CMySlider
|
||||
label="Margine per Pagina"
|
||||
v-model="myel.catalogo.margine_pagina"
|
||||
:min="0"
|
||||
:max="1000"
|
||||
color="red"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
<CMySlider
|
||||
label="Margine per Riga"
|
||||
v-model="myel.catalogo.margine_riga"
|
||||
:min="0"
|
||||
:max="1000"
|
||||
color="red"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
</div>
|
||||
<div>Sfondo:</div>
|
||||
<div v-if="enableEdit">
|
||||
<q-expansion-item
|
||||
dense
|
||||
dense-toggle
|
||||
expand-separator
|
||||
label="Selezione Collane/Editori"
|
||||
icon="fas fa-play-circle"
|
||||
>
|
||||
<div class="row">
|
||||
<q-toggle
|
||||
v-model="myel.catalogo.pdf"
|
||||
color="positive"
|
||||
icon="fas fa-file-pdf"
|
||||
label="Versione PDF"
|
||||
@update:model-value="modifElem"
|
||||
>
|
||||
</q-toggle>
|
||||
<br />
|
||||
|
||||
<!--++AddCATALOGO_FIELDS-->
|
||||
<q-select
|
||||
:behavior="$q.platform.is.ios === true ? 'dialog' : 'menu'"
|
||||
v-if="
|
||||
enableEdit && myel.catalogo && myel.catalogo.productTypes
|
||||
"
|
||||
rounded
|
||||
outlined
|
||||
v-model="myel.catalogo.productTypes"
|
||||
:options="shared_consts.VERSIONI_PRODOTTO"
|
||||
@update:model-value="modifElem"
|
||||
multiple
|
||||
dense
|
||||
label="Includi"
|
||||
style="width: 150px"
|
||||
emit-value
|
||||
map-options
|
||||
>
|
||||
</q-select>
|
||||
|
||||
<q-select
|
||||
:behavior="$q.platform.is.ios === true ? 'dialog' : 'menu'"
|
||||
v-if="
|
||||
enableEdit &&
|
||||
myel.catalogo &&
|
||||
myel.catalogo.excludeproductTypes
|
||||
"
|
||||
rounded
|
||||
outlined
|
||||
v-model="myel.catalogo.excludeproductTypes"
|
||||
:options="shared_consts.VERSIONI_PRODOTTO"
|
||||
@update:model-value="modifElem"
|
||||
multiple
|
||||
dense
|
||||
label="Escludi"
|
||||
style="width: 150px"
|
||||
emit-value
|
||||
map-options
|
||||
>
|
||||
</q-select>
|
||||
<q-select
|
||||
:behavior="$q.platform.is.ios === true ? 'dialog' : 'menu'"
|
||||
v-if="enableEdit"
|
||||
rounded
|
||||
outlined
|
||||
v-model="myel.catalogo.Editore"
|
||||
:options="Products.publishers"
|
||||
@update:model-value="modifElem"
|
||||
multiple
|
||||
dense
|
||||
label="Editori"
|
||||
style="width: 150px"
|
||||
emit-value
|
||||
map-options
|
||||
option-value="_id"
|
||||
option-label="name"
|
||||
>
|
||||
</q-select>
|
||||
</div>
|
||||
</q-expansion-item>
|
||||
<q-expansion-item
|
||||
dense
|
||||
dense-toggle
|
||||
expand-separator
|
||||
label="Schede"
|
||||
icon="fas fa-play-circle"
|
||||
>
|
||||
<div class="row">
|
||||
<q-btn
|
||||
rounded
|
||||
dense
|
||||
color="primary"
|
||||
label="Aggiungi"
|
||||
icon="fas fa-plus"
|
||||
@click="addNewScheda"
|
||||
>
|
||||
</q-btn>
|
||||
|
||||
<q-tabs
|
||||
v-model="tabScheda"
|
||||
dense
|
||||
class="text-grey"
|
||||
active-color="primary"
|
||||
indicator-color="primary"
|
||||
align="justify"
|
||||
narrow-indicator
|
||||
>
|
||||
<q-tab
|
||||
v-for="(rec, ind) in myel.catalogo.arrSchede"
|
||||
:key="ind"
|
||||
:name="ind"
|
||||
:label="`Scheda ` + (ind + 1)"
|
||||
icon="fas fa-pencil-alt"
|
||||
>
|
||||
</q-tab>
|
||||
</q-tabs>
|
||||
|
||||
<q-tab-panels v-model="tabScheda" animated>
|
||||
<q-tab-panel
|
||||
v-for="(recscheda, ind) in myel.catalogo.arrSchede"
|
||||
:key="ind"
|
||||
:name="ind"
|
||||
>
|
||||
<q-bar v-if="recscheda" class="bg-primary text-white">
|
||||
Scheda {{ ind + 1 }}
|
||||
<span v-if="recscheda.scheda"> '{{
|
||||
recscheda.scheda.name
|
||||
}}'</span>
|
||||
<q-space />
|
||||
<q-btn
|
||||
rounded
|
||||
dense
|
||||
color="primary"
|
||||
label="Duplica"
|
||||
icon="fas fa-copy"
|
||||
@click="dupNewScheda(recscheda._id)"
|
||||
>
|
||||
</q-btn>
|
||||
<q-btn
|
||||
icon="fas fa-trash-alt"
|
||||
color="negative"
|
||||
dense
|
||||
size="sm"
|
||||
@click="delRecScheda(recscheda._id, myel)"
|
||||
>
|
||||
</q-btn>
|
||||
</q-bar>
|
||||
<div v-if="recscheda && recscheda.scheda">
|
||||
<q-select
|
||||
v-model="recscheda.order"
|
||||
:options="orderOptions"
|
||||
label="Posizionamento"
|
||||
options-dense
|
||||
dense
|
||||
emit-value
|
||||
map-options
|
||||
style="width: 100px"
|
||||
@update:model-value="modifElem"
|
||||
fill-input
|
||||
text-color="white"
|
||||
>
|
||||
</q-select>
|
||||
|
||||
<q-toggle
|
||||
v-model="recscheda.scheda.isTemplate"
|
||||
color="positive"
|
||||
icon="fas fa-file-pdf"
|
||||
label="E' un template"
|
||||
@update:model-value="modifElem"
|
||||
>
|
||||
</q-toggle>
|
||||
<q-input
|
||||
dense
|
||||
label="Nome Template"
|
||||
@update:model-value="modifElem"
|
||||
v-model="recscheda.scheda.name"
|
||||
filled
|
||||
v-on:keyup.enter="saveElem"
|
||||
>
|
||||
</q-input>
|
||||
|
||||
<!--<q-select
|
||||
:behavior="
|
||||
$q.platform.is.ios === true ? 'dialog' : 'menu'
|
||||
"
|
||||
v-if="enableEdit"
|
||||
rounded
|
||||
outlined
|
||||
v-model="recscheda._id"
|
||||
:options="SchedeOpt()"
|
||||
@update:model-value="modifElem"
|
||||
dense
|
||||
label="Scegli Scheda"
|
||||
style="width: 150px"
|
||||
emit-value
|
||||
map-options
|
||||
>
|
||||
</q-select>-->
|
||||
|
||||
<CMySlider
|
||||
label="Schede da ripetere"
|
||||
v-model="recscheda.numSchede"
|
||||
:min="1"
|
||||
:max="100"
|
||||
color="green"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
<q-expansion-item
|
||||
dense
|
||||
dense-toggle
|
||||
expand-separator
|
||||
label="Filtri"
|
||||
icon="fas fa-play-circle"
|
||||
>
|
||||
<div class="row">
|
||||
<q-select
|
||||
:behavior="
|
||||
$q.platform.is.ios === true ? 'dialog' : 'menu'
|
||||
"
|
||||
v-if="
|
||||
enableEdit &&
|
||||
myel.catalogo &&
|
||||
myel.catalogo.productTypes
|
||||
"
|
||||
rounded
|
||||
outlined
|
||||
v-model="recscheda.scheda.productTypes"
|
||||
:options="shared_consts.VERSIONI_PRODOTTO"
|
||||
@update:model-value="modifElem"
|
||||
multiple
|
||||
dense
|
||||
label="Includi"
|
||||
style="width: 150px"
|
||||
emit-value
|
||||
map-options
|
||||
>
|
||||
</q-select>
|
||||
<q-select
|
||||
:behavior="
|
||||
$q.platform.is.ios === true ? 'dialog' : 'menu'
|
||||
"
|
||||
v-if="
|
||||
enableEdit &&
|
||||
myel.catalogo &&
|
||||
myel.catalogo.excludeproductTypes
|
||||
"
|
||||
rounded
|
||||
outlined
|
||||
v-model="recscheda.scheda.excludeproductTypes"
|
||||
:options="shared_consts.VERSIONI_PRODOTTO"
|
||||
@update:model-value="modifElem"
|
||||
multiple
|
||||
dense
|
||||
label="Escludi"
|
||||
style="width: 150px"
|
||||
emit-value
|
||||
map-options
|
||||
>
|
||||
</q-select>
|
||||
<q-select
|
||||
:behavior="
|
||||
$q.platform.is.ios === true ? 'dialog' : 'menu'
|
||||
"
|
||||
v-if="enableEdit"
|
||||
rounded
|
||||
outlined
|
||||
v-model="recscheda.scheda.Editore"
|
||||
:options="Products.publishers"
|
||||
@update:model-value="modifElem"
|
||||
multiple
|
||||
dense
|
||||
label="Editori"
|
||||
style="width: 150px"
|
||||
emit-value
|
||||
map-options
|
||||
option-value="_id"
|
||||
option-label="name"
|
||||
>
|
||||
</q-select>
|
||||
|
||||
<q-select
|
||||
label="Prodotti Speciali:"
|
||||
v-model="recscheda.scheda.arrProdottiSpeciali"
|
||||
emit-value
|
||||
map-options
|
||||
:options="[]"
|
||||
use-chips
|
||||
multiple
|
||||
@update:model-value="
|
||||
recscheda.scheda.arrProdottiSpeciali
|
||||
"
|
||||
filled
|
||||
use-input
|
||||
new-value-mode="add-unique"
|
||||
dense
|
||||
style="width: 350px"
|
||||
/>
|
||||
</div>
|
||||
</q-expansion-item>
|
||||
|
||||
<q-expansion-item
|
||||
dense
|
||||
dense-toggle
|
||||
expand-separator
|
||||
label="Dimensioni Schede"
|
||||
icon="fas fa-play-circle"
|
||||
>
|
||||
<div class="row">
|
||||
<CMySlider
|
||||
label="Schede per Riga"
|
||||
v-model="recscheda.scheda.numschede_perRiga"
|
||||
:min="1"
|
||||
:max="10"
|
||||
color="green"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
<CMySlider
|
||||
label="Schede per Colonna"
|
||||
v-model="recscheda.scheda.numschede_perCol"
|
||||
:min="1"
|
||||
:max="10"
|
||||
color="red"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
<CMySlider
|
||||
label="Larghezza Schede:"
|
||||
v-model="recscheda.scheda.widthscheda"
|
||||
:min="10"
|
||||
:max="1000"
|
||||
color="green"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
<CMySlider
|
||||
label="Larghezza Pagina:"
|
||||
v-model="recscheda.scheda.widthpag"
|
||||
:min="10"
|
||||
:max="1000"
|
||||
color="green"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
<CMySlider
|
||||
label="Larghezza Immagini:"
|
||||
v-model="recscheda.scheda.width"
|
||||
:min="10"
|
||||
:max="1000"
|
||||
color="green"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
<CMySlider
|
||||
label="Altezza Schede:"
|
||||
v-model="recscheda.scheda.height"
|
||||
:min="10"
|
||||
:max="1000"
|
||||
color="red"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
</div>
|
||||
</q-expansion-item>
|
||||
|
||||
<q-expansion-item
|
||||
dense
|
||||
dense-toggle
|
||||
expand-separator
|
||||
label="Testo"
|
||||
icon="fas fa-play-circle"
|
||||
>
|
||||
<q-select
|
||||
v-model="recscheda.scheda.posiz_text"
|
||||
:options="posizTextOptions"
|
||||
label="Posizione"
|
||||
options-dense
|
||||
dense
|
||||
emit-value
|
||||
map-options
|
||||
style="width: 100px"
|
||||
@update:model-value="modifElem"
|
||||
fill-input
|
||||
text-color="white"
|
||||
>
|
||||
</q-select>
|
||||
<CMySlider
|
||||
label="Line Height:"
|
||||
v-model="recscheda.scheda.line_height"
|
||||
:min="70"
|
||||
:max="200"
|
||||
color="blue"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
<CMyFieldRec
|
||||
title="Testo:"
|
||||
table="catalogo"
|
||||
:rec="myel.catalogo"
|
||||
field="recscheda.scheda.text"
|
||||
@update:model-value="modifElem"
|
||||
:canEdit="true"
|
||||
:canModify="true"
|
||||
:fieldtype="costanti.FieldType.html"
|
||||
@save="saveFieldElem"
|
||||
@update_col="update_col"
|
||||
>
|
||||
</CMyFieldRec>
|
||||
</q-expansion-item>
|
||||
|
||||
<q-expansion-item
|
||||
dense
|
||||
dense-toggle
|
||||
expand-separator
|
||||
label="Margini Pagina"
|
||||
icon="fas fa-play-circle"
|
||||
>
|
||||
<div class="sfondo_margine row">
|
||||
<CMySlider
|
||||
label="Margine Top"
|
||||
v-model="recscheda.scheda.margine_top"
|
||||
:min="0"
|
||||
:max="1000"
|
||||
color="blue"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
<CMySlider
|
||||
label="Margine per Pagina"
|
||||
v-model="recscheda.scheda.margine_pagina"
|
||||
:min="0"
|
||||
:max="1000"
|
||||
color="red"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
<CMySlider
|
||||
label="Margine per Riga"
|
||||
v-model="recscheda.scheda.margine_riga"
|
||||
:min="0"
|
||||
:max="1000"
|
||||
color="red"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
</div>
|
||||
</q-expansion-item>
|
||||
</div>
|
||||
</q-tab-panel>
|
||||
</q-tab-panels>
|
||||
</div>
|
||||
</q-expansion-item>
|
||||
</div>
|
||||
|
||||
<q-expansion-item
|
||||
dense
|
||||
dense-toggle
|
||||
expand-separator
|
||||
label="Sfondi"
|
||||
icon="fas fa-play-circle"
|
||||
>
|
||||
Nome File Web: {{ myel.catalogo.backgroundimage }}<br />
|
||||
<CMyFieldRec
|
||||
title="Per Web:"
|
||||
@@ -1479,59 +1810,183 @@
|
||||
>
|
||||
</CMyFieldRec>
|
||||
<br />
|
||||
<div class="sfondo_print">
|
||||
Per Stampa:
|
||||
<q-toggle
|
||||
v-model="myel.catalogo.printable"
|
||||
color="positive"
|
||||
icon="fas fa-file-pdf"
|
||||
label="Versione Stampabile"
|
||||
@update:model-value="modifElem"
|
||||
>
|
||||
</q-toggle>
|
||||
</q-expansion-item>
|
||||
|
||||
<q-input
|
||||
dense
|
||||
label="Margine per Pagina:"
|
||||
@update:model-value="modifElem"
|
||||
v-model="myel.catalogo.margine_paginaPrintable"
|
||||
filled
|
||||
v-on:keyup.enter="saveFieldElem"
|
||||
>
|
||||
</q-input>
|
||||
<q-input
|
||||
dense
|
||||
label="Margine per Riga:"
|
||||
@update:model-value="modifElem"
|
||||
v-model="myel.catalogo.margine_rigaPrintable"
|
||||
filled
|
||||
v-on:keyup.enter="saveFieldElem"
|
||||
>
|
||||
</q-input>
|
||||
<q-expansion-item
|
||||
dense
|
||||
dense-toggle
|
||||
expand-separator
|
||||
label="Prima Pagina"
|
||||
icon="fas fa-play-circle"
|
||||
>
|
||||
Prima Pagina: {{ myel.catalogo.first_page_img }}<br />
|
||||
<div class="row">
|
||||
<CMySlider
|
||||
label="Larghezza Pagina Stampa:"
|
||||
v-model="myel.catalogo.widthpagPrintable"
|
||||
label="Altezza:"
|
||||
v-model="myel.catalogo.first_page_height"
|
||||
:min="0"
|
||||
:max="1000"
|
||||
:max="4000"
|
||||
color="red"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
Nome File Printable: {{ myel.catalogo.backgroundimage_printable }}
|
||||
<CMyFieldRec
|
||||
title="Sfondo:"
|
||||
table="catalogo"
|
||||
:rec="myel.catalogo"
|
||||
field="backgroundimage_printable"
|
||||
<CMySlider
|
||||
label="Larghezza:"
|
||||
v-model="myel.catalogo.first_page_width"
|
||||
:min="0"
|
||||
:max="4000"
|
||||
color="red"
|
||||
@update:model-value="modifElem"
|
||||
:canEdit="true"
|
||||
:canModify="true"
|
||||
:fieldtype="costanti.FieldType.image"
|
||||
@save="saveFieldElem"
|
||||
>
|
||||
</CMyFieldRec>
|
||||
></CMySlider>
|
||||
</div>
|
||||
|
||||
<CMyFieldRec
|
||||
title="Per Web:"
|
||||
table="catalogo"
|
||||
:rec="myel.catalogo"
|
||||
field="first_page_img"
|
||||
@update:model-value="modifElem"
|
||||
:canEdit="true"
|
||||
:canModify="true"
|
||||
:fieldtype="costanti.FieldType.image"
|
||||
@save="saveFieldElem"
|
||||
>
|
||||
</CMyFieldRec>
|
||||
<CMyFieldRec
|
||||
title="Testo pagina:"
|
||||
table="catalogo"
|
||||
:rec="myel.catalogo"
|
||||
field="first_page_html"
|
||||
@update:model-value="modifElem"
|
||||
:canEdit="true"
|
||||
:canModify="true"
|
||||
:fieldtype="costanti.FieldType.html"
|
||||
@save="saveFieldElem"
|
||||
@update_col="update_col"
|
||||
>
|
||||
</CMyFieldRec>
|
||||
|
||||
<br />
|
||||
</q-expansion-item>
|
||||
|
||||
<q-expansion-item
|
||||
dense
|
||||
dense-toggle
|
||||
expand-separator
|
||||
label="Ultima Pagina"
|
||||
icon="fas fa-play-circle"
|
||||
>
|
||||
Immagine: {{ myel.catalogo.last_page_img }}<br />
|
||||
<div class="row">
|
||||
<CMySlider
|
||||
label="Altezza:"
|
||||
v-model="myel.catalogo.last_page_height"
|
||||
:min="0"
|
||||
:max="4000"
|
||||
color="red"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
<CMySlider
|
||||
label="Larghezza:"
|
||||
v-model="myel.catalogo.last_page_width"
|
||||
:min="0"
|
||||
:max="4000"
|
||||
color="red"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
</div>
|
||||
|
||||
<CMyFieldRec
|
||||
title="Per Web:"
|
||||
table="catalogo"
|
||||
:rec="myel.catalogo"
|
||||
field="last_page_img"
|
||||
@update:model-value="modifElem"
|
||||
:canEdit="true"
|
||||
:canModify="true"
|
||||
:fieldtype="costanti.FieldType.image"
|
||||
@save="saveFieldElem"
|
||||
>
|
||||
</CMyFieldRec>
|
||||
<CMyFieldRec
|
||||
title="Testo pagina:"
|
||||
table="catalogo"
|
||||
:rec="myel.catalogo"
|
||||
field="last_page_html"
|
||||
@update:model-value="modifElem"
|
||||
:canEdit="true"
|
||||
:canModify="true"
|
||||
:fieldtype="costanti.FieldType.html"
|
||||
@save="saveFieldElem"
|
||||
@update_col="update_col"
|
||||
>
|
||||
</CMyFieldRec>
|
||||
|
||||
<br />
|
||||
</q-expansion-item>
|
||||
<div v-if="enableEdit">
|
||||
<q-expansion-item
|
||||
dense
|
||||
dense-toggle
|
||||
expand-separator
|
||||
label="Per Stampa"
|
||||
icon="fas fa-play-circle"
|
||||
>
|
||||
<div class="sfondo_print">
|
||||
Per Stampa:
|
||||
<q-toggle
|
||||
v-model="myel.catalogo.printable"
|
||||
color="positive"
|
||||
icon="fas fa-file-pdf"
|
||||
label="Versione Stampabile"
|
||||
@update:model-value="modifElem"
|
||||
>
|
||||
</q-toggle>
|
||||
|
||||
<CMySlider
|
||||
label="Margine per Pagina"
|
||||
v-model="myel.catalogo.margine_paginaPrintable"
|
||||
:min="0"
|
||||
:max="1000"
|
||||
color="red"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
<CMySlider
|
||||
label="Margine per Riga"
|
||||
v-model="myel.catalogo.margine_rigaPrintable"
|
||||
:min="0"
|
||||
:max="1000"
|
||||
color="red"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
<CMySlider
|
||||
label="Larghezza Pagina Stampa:"
|
||||
v-model="myel.catalogo.widthpagPrintable"
|
||||
:min="0"
|
||||
:max="1000"
|
||||
color="red"
|
||||
addstr="px"
|
||||
@update:model-value="modifElem"
|
||||
></CMySlider>
|
||||
|
||||
Nome File Printable:
|
||||
{{ myel.catalogo.backgroundimage_printable }}
|
||||
<CMyFieldRec
|
||||
title="Sfondo:"
|
||||
table="catalogo"
|
||||
:rec="myel.catalogo"
|
||||
field="backgroundimage_printable"
|
||||
@update:model-value="modifElem"
|
||||
:canEdit="true"
|
||||
:canModify="true"
|
||||
:fieldtype="costanti.FieldType.image"
|
||||
@save="saveFieldElem"
|
||||
>
|
||||
</CMyFieldRec>
|
||||
</div>
|
||||
</q-expansion-item>
|
||||
</div>
|
||||
</div>
|
||||
</q-list>
|
||||
|
||||
Reference in New Issue
Block a user