- Ricerca Titolo per nome o autore o ISBN o codice articolo
This commit is contained in:
@@ -12,7 +12,18 @@
|
||||
dense
|
||||
class="bg-green text-white"
|
||||
>
|
||||
<q-tab name="visu" icon="fas fa-eye" label="Visualizza"> </q-tab>
|
||||
<q-tab
|
||||
name="visu"
|
||||
icon="fas fa-eye"
|
||||
label="Visualizza"
|
||||
>
|
||||
</q-tab>
|
||||
<q-tab
|
||||
name="lista"
|
||||
icon="fas fa-list"
|
||||
label="Lista"
|
||||
>
|
||||
</q-tab>
|
||||
<q-tab
|
||||
v-if="tools.isGrafico()"
|
||||
name="sfondo"
|
||||
@@ -27,11 +38,39 @@
|
||||
label="Pagine"
|
||||
>
|
||||
</q-tab>
|
||||
<q-tab name="tutorial" icon="fas fa-info" label="Tutorial"> </q-tab>
|
||||
<q-tab name="opzioni" icon="fas fa-save" label="Avanzati"> </q-tab>
|
||||
<q-tab
|
||||
name="tutorial"
|
||||
icon="fas fa-info"
|
||||
label="Tutorial"
|
||||
>
|
||||
</q-tab>
|
||||
<q-tab
|
||||
name="opzioni"
|
||||
icon="fas fa-save"
|
||||
label="Avanzati"
|
||||
>
|
||||
</q-tab>
|
||||
</q-tabs>
|
||||
<q-tab-panels v-model="tabcatalogo" animated class="" keep-alive>
|
||||
<q-tab-panel name="visu" v-if="optcatalogo">
|
||||
<q-tab-panels
|
||||
v-model="tabcatalogo"
|
||||
animated
|
||||
class=""
|
||||
keep-alive
|
||||
>
|
||||
<q-tab-panel
|
||||
name="lista"
|
||||
v-if="optcatalogo"
|
||||
>
|
||||
<CProductTable
|
||||
:lista_prodotti="lista_prodotti"
|
||||
@update:lista_prodotti="updateProducts"
|
||||
/>
|
||||
</q-tab-panel>
|
||||
|
||||
<q-tab-panel
|
||||
name="visu"
|
||||
v-if="optcatalogo"
|
||||
>
|
||||
<div class="row justify-center q-mx-auto bg-blue-1">
|
||||
<div class="text-center">
|
||||
<q-spinner
|
||||
@@ -41,7 +80,10 @@
|
||||
:thickness="2"
|
||||
/>
|
||||
</div>
|
||||
<div v-if="loadpage" class="panel">
|
||||
<div
|
||||
v-if="loadpage"
|
||||
class="panel"
|
||||
>
|
||||
<div class="container">
|
||||
<q-tabs
|
||||
v-if="!ispageCatalogata"
|
||||
@@ -54,7 +96,12 @@
|
||||
icon="fas fa-folder-open"
|
||||
label="Categorie"
|
||||
>
|
||||
<q-badge v-if="cat" color="red" floating>1</q-badge>
|
||||
<q-badge
|
||||
v-if="cat"
|
||||
color="red"
|
||||
floating
|
||||
>1</q-badge
|
||||
>
|
||||
</q-tab>
|
||||
<q-tab
|
||||
v-if="!ispageCatalogata"
|
||||
@@ -62,7 +109,12 @@
|
||||
icon="fas fa-user"
|
||||
label="Autori"
|
||||
>
|
||||
<q-badge v-if="filter.author" color="red" floating>1</q-badge>
|
||||
<q-badge
|
||||
v-if="filter.author"
|
||||
color="red"
|
||||
floating
|
||||
>1</q-badge
|
||||
>
|
||||
</q-tab>
|
||||
<q-tab
|
||||
v-if="!ispageCatalogata"
|
||||
@@ -70,15 +122,29 @@
|
||||
icon="fas fa-search"
|
||||
label="Cerca"
|
||||
>
|
||||
<q-badge v-if="getSearchText()" color="red" floating
|
||||
<q-badge
|
||||
v-if="getSearchText()"
|
||||
color="red"
|
||||
floating
|
||||
>1</q-badge
|
||||
>
|
||||
</q-tab>
|
||||
</q-tabs>
|
||||
<q-tab-panels v-model="tabvisu" animated class="" keep-alive>
|
||||
<q-tab-panel v-if="!ispageCatalogata" name="categorie">
|
||||
<q-tab-panels
|
||||
v-model="tabvisu"
|
||||
animated
|
||||
class=""
|
||||
keep-alive
|
||||
>
|
||||
<q-tab-panel
|
||||
v-if="!ispageCatalogata"
|
||||
name="categorie"
|
||||
>
|
||||
<div class="row justify-center q-mx-auto bg-blue-1">
|
||||
<div v-for="(reccat, index) in getCatProds()" :key="index">
|
||||
<div
|
||||
v-for="(reccat, index) in getCatProds()"
|
||||
:key="index"
|
||||
>
|
||||
<span
|
||||
:class="{
|
||||
category: true,
|
||||
@@ -150,26 +216,15 @@
|
||||
<CMySelect
|
||||
:col="fieldsTable.getColByColumns(mycolumns, item.key)"
|
||||
v-if="
|
||||
item.type === costanti.FieldType.select ||
|
||||
item.type === costanti.FieldType.select_by_server
|
||||
"
|
||||
:label="
|
||||
item.value && item.value._id > 0
|
||||
? undefined
|
||||
: labelcombo(item)
|
||||
item.type === costanti.FieldType.select || item.type === costanti.FieldType.select_by_server
|
||||
"
|
||||
:label="item.value && item.value._id > 0 ? undefined : labelcombo(item)"
|
||||
v-model:value="item.value"
|
||||
:addall="item.addall"
|
||||
:addnone="item.addnone"
|
||||
:addlast="true"
|
||||
:tablesel="
|
||||
item.type === costanti.FieldType.select_by_server
|
||||
? item.tablesel
|
||||
: ''
|
||||
"
|
||||
:pickup="
|
||||
item.type === costanti.FieldType.select_by_server
|
||||
"
|
||||
:tablesel="item.type === costanti.FieldType.select_by_server ? item.tablesel : ''"
|
||||
:pickup="item.type === costanti.FieldType.select_by_server"
|
||||
:label-color="$q.dark.isActive ? 'white' : 'black'"
|
||||
myclass="comboselector"
|
||||
color="primary"
|
||||
@@ -181,10 +236,7 @@
|
||||
:filter="item.filter"
|
||||
:filter_extra="item.filter_extra"
|
||||
style="font-size: 0.8rem !important"
|
||||
:useinput="
|
||||
item.useinput &&
|
||||
item.type !== costanti.FieldType.select_by_server
|
||||
"
|
||||
:useinput="item.useinput && item.type !== costanti.FieldType.select_by_server"
|
||||
>
|
||||
</CMySelect>
|
||||
</div>
|
||||
@@ -220,17 +272,17 @@
|
||||
</div>
|
||||
|
||||
<div class="text-center q-py-sm prod_trov">
|
||||
<span
|
||||
v-show="productStore.getNumProdTot() !== arrProducts.length"
|
||||
>{{
|
||||
t("ecomm.prodotti_trovati", {
|
||||
qta: arrProducts.length,
|
||||
qtatot: productStore.getNumProdTot(),
|
||||
})
|
||||
}}</span
|
||||
>
|
||||
<span v-show="productStore.getNumProdTot() !== arrProducts.length">{{
|
||||
t('ecomm.prodotti_trovati', {
|
||||
qta: arrProducts.length,
|
||||
qtatot: productStore.getNumProdTot(),
|
||||
})
|
||||
}}</span>
|
||||
</div>
|
||||
<div class="row justify-around" v-if="tools.isManager() && false">
|
||||
<div
|
||||
class="row justify-around"
|
||||
v-if="tools.isManager() && false"
|
||||
>
|
||||
<q-toggle
|
||||
v-if="!optcatalogo.pdf"
|
||||
v-model="show_hide"
|
||||
@@ -254,20 +306,14 @@
|
||||
optcatalogo.first_page.text_html &&
|
||||
optcatalogo.first_page.text_html.contenuto
|
||||
"
|
||||
:style="
|
||||
generateStyleByPageDim(optcatalogo, optcatalogo.first_page)
|
||||
"
|
||||
:style="generateStyleByPageDim(optcatalogo, optcatalogo.first_page)"
|
||||
>
|
||||
<div
|
||||
v-html="optcatalogo.first_page.text_html.contenuto"
|
||||
></div>
|
||||
<div v-html="optcatalogo.first_page.text_html.contenuto"></div>
|
||||
</div>
|
||||
<div :style="generateStyleCatalogo(optcatalogo)">
|
||||
<div class="flex-container-book">
|
||||
<q-infinite-scroll
|
||||
v-if="
|
||||
!optcatalogo.pdf && arrLoaded && arrLoaded.length > 0
|
||||
"
|
||||
v-if="!optcatalogo.pdf && arrLoaded && arrLoaded.length > 0"
|
||||
ref="myinfscroll"
|
||||
:initial-index="0"
|
||||
@load="onLoadScroll"
|
||||
@@ -276,14 +322,14 @@
|
||||
class="row items-start"
|
||||
style="place-content: center"
|
||||
>
|
||||
<div v-for="(product, index) in arrLoaded" :key="index">
|
||||
<div
|
||||
v-for="(product, index) in arrLoaded"
|
||||
:key="index"
|
||||
>
|
||||
<CContainerCatalogoCard
|
||||
v-if="
|
||||
product.active ||
|
||||
(show_hide &&
|
||||
product.productInfo.productTypes.includes(
|
||||
shared_consts.PRODUCTTYPE.PRODUCT
|
||||
))
|
||||
(show_hide && product.productInfo.productTypes.includes(shared_consts.PRODUCTTYPE.PRODUCT))
|
||||
"
|
||||
:id="product._id"
|
||||
:product="product"
|
||||
@@ -310,16 +356,20 @@
|
||||
</div>
|
||||
<template v-slot:loading>
|
||||
<div class="text-center">
|
||||
<q-spinner-dots color="primary" size="40px" />
|
||||
<q-spinner-dots
|
||||
color="primary"
|
||||
size="40px"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
</q-infinite-scroll>
|
||||
<div v-else class="cards-container">
|
||||
<div
|
||||
v-else
|
||||
class="cards-container"
|
||||
>
|
||||
<!-- Itera sulle schede -->
|
||||
<div
|
||||
v-for="(
|
||||
recscheda, schedaIndex
|
||||
) in optcatalogo.arrSchede"
|
||||
v-for="(recscheda, schedaIndex) in optcatalogo.arrSchede"
|
||||
:key="schedaIndex"
|
||||
>
|
||||
<div v-if="recscheda && recscheda.scheda">
|
||||
@@ -335,23 +385,34 @@
|
||||
'fixed-height': true,
|
||||
'card-page': false,
|
||||
}"
|
||||
:style="
|
||||
generateStylePageScheda(
|
||||
optcatalogo,
|
||||
recscheda.scheda
|
||||
)
|
||||
"
|
||||
:style="generateStylePageScheda(optcatalogo, recscheda.scheda)"
|
||||
>
|
||||
<div
|
||||
v-if="
|
||||
recscheda.scheda.dimensioni.pagina?.testo_up
|
||||
?.contenuto
|
||||
"
|
||||
v-if="recscheda.scheda.dimensioni.pagina?.testo_title?.contenuto"
|
||||
:style="{
|
||||
'--scalecatalog': tools.getScale(optcatalogo),
|
||||
'line-height':
|
||||
recscheda.scheda.dimensioni.pagina?.testo_up
|
||||
?.font.line_height,
|
||||
'line-height': recscheda.scheda.dimensioni.pagina?.testo_title?.font.line_height,
|
||||
display: 'flex',
|
||||
flexDirection: 'column',
|
||||
position: 'relative', // Posizionamento assoluto
|
||||
top: '0', // Posiziona in alto
|
||||
left: '50%', // Centra orizzontalmente
|
||||
transform: 'translateX(-50%)', // Correzione per centrare perfettamente
|
||||
width: '100%', // Assicura che il contenitore occupi l'intera larghezza
|
||||
textAlign: 'center', // Allinea il testo al centro
|
||||
zIndex: '10', // Assicura che il testo sia visibile sopra altri elementi
|
||||
}"
|
||||
>
|
||||
<div
|
||||
v-html="getTitoloPagina(null, recscheda)"
|
||||
style="display: flex; flex-direction: row; justify-content: center"
|
||||
></div>
|
||||
</div>
|
||||
<div
|
||||
v-if="recscheda.scheda.dimensioni.pagina?.testo_up?.contenuto"
|
||||
:style="{
|
||||
'--scalecatalog': tools.getScale(optcatalogo),
|
||||
'line-height': recscheda.scheda.dimensioni.pagina?.testo_up?.font.line_height,
|
||||
display: 'flex',
|
||||
flexDirection: 'column',
|
||||
}"
|
||||
@@ -401,9 +462,7 @@
|
||||
@selauthor="selauthor"
|
||||
/>
|
||||
<CProductCard
|
||||
v-else-if="
|
||||
prod && (prod.active || show_hide)
|
||||
"
|
||||
v-else-if="prod && (prod.active || show_hide)"
|
||||
:id="prod._id"
|
||||
:complete="false"
|
||||
:cosa="cosa"
|
||||
@@ -414,18 +473,13 @@
|
||||
|
||||
<!-- Separatore -->
|
||||
<div
|
||||
v-if="
|
||||
recscheda.scheda?.show_separatore &&
|
||||
rowIndex !== page.length - 1
|
||||
"
|
||||
v-if="recscheda.scheda?.show_separatore && rowIndex !== page.length - 1"
|
||||
class="text-center"
|
||||
:style="getStyleRow(recscheda)"
|
||||
>
|
||||
<q-separator
|
||||
inset
|
||||
:size="
|
||||
tools.adjustSize(optcatalogo, '1px')
|
||||
"
|
||||
:size="tools.adjustSize(optcatalogo, '1px')"
|
||||
></q-separator>
|
||||
</div>
|
||||
</div>
|
||||
@@ -446,9 +500,7 @@
|
||||
optcatalogo.last_page.text_html &&
|
||||
optcatalogo.last_page.text_html.contenuto
|
||||
"
|
||||
:style="
|
||||
generateStyleByPageDim(optcatalogo, optcatalogo.last_page)
|
||||
"
|
||||
:style="generateStyleByPageDim(optcatalogo, optcatalogo.last_page)"
|
||||
>
|
||||
<div v-html="optcatalogo.last_page.text_html.contenuto"></div>
|
||||
</div>
|
||||
@@ -461,19 +513,13 @@
|
||||
<div class="row justify-center q-mx-auto bg-blue-1">
|
||||
<div>
|
||||
Sfondo:
|
||||
{{
|
||||
tools.getDirUpload() +
|
||||
costanti.DIR_CATALOGO +
|
||||
optcatalogo.dimensioni_def?.pagina.imgsfondo?.imagefile
|
||||
}}
|
||||
{{ tools.getDirUpload() + costanti.DIR_CATALOGO + optcatalogo.dimensioni_def?.pagina.imgsfondo?.imagefile }}
|
||||
</div>
|
||||
|
||||
<q-img
|
||||
v-if="optcatalogo.dimensioni_def?.pagina.imgsfondo?.imagefile"
|
||||
:src="
|
||||
tools.getDirUpload() +
|
||||
costanti.DIR_CATALOGO +
|
||||
optcatalogo.dimensioni_def?.pagina.imgsfondo?.imagefile
|
||||
tools.getDirUpload() + costanti.DIR_CATALOGO + optcatalogo.dimensioni_def?.pagina.imgsfondo?.imagefile
|
||||
"
|
||||
>
|
||||
</q-img>
|
||||
@@ -483,37 +529,17 @@
|
||||
<div class="row justify-center q-mx-auto bg-blue-1">
|
||||
<div>
|
||||
Prima Pagina:
|
||||
{{
|
||||
tools.getDirUpload() +
|
||||
costanti.DIR_CATALOGO +
|
||||
optcatalogo.first_page.imgsfondo.imagefile
|
||||
}}
|
||||
{{ tools.getDirUpload() + costanti.DIR_CATALOGO + optcatalogo.first_page.imgsfondo.imagefile }}
|
||||
</div>
|
||||
|
||||
<q-img
|
||||
:src="
|
||||
tools.getDirUpload() +
|
||||
costanti.DIR_CATALOGO +
|
||||
optcatalogo.first_page.imgsfondo.imagefile
|
||||
"
|
||||
>
|
||||
<q-img :src="tools.getDirUpload() + costanti.DIR_CATALOGO + optcatalogo.first_page.imgsfondo.imagefile">
|
||||
</q-img>
|
||||
<div>
|
||||
Ultima Pagina:
|
||||
{{
|
||||
tools.getDirUpload() +
|
||||
costanti.DIR_CATALOGO +
|
||||
optcatalogo.last_page.imgsfondo.imagefile
|
||||
}}
|
||||
{{ tools.getDirUpload() + costanti.DIR_CATALOGO + optcatalogo.last_page.imgsfondo.imagefile }}
|
||||
</div>
|
||||
|
||||
<q-img
|
||||
:src="
|
||||
tools.getDirUpload() +
|
||||
costanti.DIR_CATALOGO +
|
||||
optcatalogo.last_page.imgsfondo.imagefile
|
||||
"
|
||||
>
|
||||
<q-img :src="tools.getDirUpload() + costanti.DIR_CATALOGO + optcatalogo.last_page.imgsfondo.imagefile">
|
||||
</q-img>
|
||||
</div>
|
||||
</q-tab-panel>
|
||||
@@ -528,6 +554,12 @@
|
||||
</div>
|
||||
</q-tab-panel>
|
||||
<q-tab-panel name="opzioni">
|
||||
<q-btn
|
||||
rounded
|
||||
label="Genera Lista Libri"
|
||||
color="primary"
|
||||
@click="generaListaLibri()"
|
||||
></q-btn>
|
||||
<pre>
|
||||
<strong>PASSI DA COMPIERE PER FARE AGGIORNAMENTI :</strong>
|
||||
|
||||
@@ -606,9 +638,8 @@
|
||||
</q-page>
|
||||
</template>
|
||||
|
||||
<script lang="ts" src="./catalogo.ts">
|
||||
</script>
|
||||
<script lang="ts" src="./catalogo.ts"></script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@import "./catalogo.scss";
|
||||
@import './catalogo.scss';
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user