- Aggiunta possibilità di disattivare i link alle immagini dei libri. (opzione sul catalogo: disattiva_link_immagini)

This commit is contained in:
Surya Paolo
2025-07-18 10:43:08 +02:00
parent 43938023ee
commit f12341f780
9 changed files with 32 additions and 8 deletions

View File

@@ -39,6 +39,7 @@ import type {
IProduct, IProduct,
IVariazione, IVariazione,
IRecFields, IRecFields,
ICatalog,
} from '@src/model'; } from '@src/model';
import { IBaseOrder } from '@src/model'; import { IBaseOrder } from '@src/model';
import { tools } from '@tools'; import { tools } from '@tools';
@@ -58,6 +59,11 @@ export default defineComponent({
required: false, required: false,
default: null, default: null,
}, },
myCatalog: {
type: Object as PropType<ICatalog | null>,
required: false,
default: null,
},
id: { id: {
type: String, type: String,
required: false, required: false,

View File

@@ -88,8 +88,9 @@
:style="`position: relative; align-content: center;`" :style="`position: relative; align-content: center;`"
> >
<a <a
:href="myproduct.productInfo.link_macro"
target="_blank" target="_blank"
:href="myCatalog?.disattiva_link_immagini ? null : myproduct.productInfo.link_macro"
:style="myCatalog?.disattiva_link_immagini ? 'cursor: normal !important;' : ''"
> >
<q-img <q-img
v-if="myproduct.productInfo" v-if="myproduct.productInfo"
@@ -105,7 +106,7 @@
:fit="scheda.dimensioni?.immagine_prodotto?.size?.fit ?? 'cover'" :fit="scheda.dimensioni?.immagine_prodotto?.size?.fit ?? 'cover'"
:class="{ :class="{
'book-image-fixed': complete, 'book-image-fixed': complete,
'cursor-pointer': !complete, 'cursor-pointer': !complete && !myCatalog?.disattiva_link_immagini,
'shadow-4': !optcatalogo.pdf, 'shadow-4': !optcatalogo.pdf,
}" }"
:img-class="optcatalogo.pdf ? 'border-box' : ''" :img-class="optcatalogo.pdf ? 'border-box' : ''"
@@ -142,7 +143,7 @@
: undefined, : undefined,
display: 'block', display: 'block',
}" }"
@click.stop.prevent="tools.openUrl(myproduct.productInfo.link_macro)" @click.stop.prevent="myCatalog?.disattiva_link_immagini ? null : tools.openUrl(myproduct.productInfo.link_macro)"
> >
</q-img> </q-img>
</a> </a>
@@ -157,18 +158,18 @@
z-index: 10; z-index: 10;
" "
> >
<div v-if="!optcatalogo.generazionePDFInCorso"> <div v-if="!optcatalogo.generazionePDFInCorso && !myCatalog?.disattiva_link_immagini">
<q-btn <q-btn
icon="fas fa-external-link-alt" icon="fas fa-external-link-alt"
color="primary" color="primary"
class="no-print" class="no-print"
rounded rounded
size="sm" size="sm"
@click.stop.prevent="tools.openUrl(myproduct.productInfo.link_macro)" @click.stop.prevent="tools.openUrl(myCatalog?.disattiva_link_immagini ? null : myproduct.productInfo.link_macro)"
> >
</q-btn> </q-btn>
</div> </div>
<div v-if="!optcatalogo.generazionePDFInCorso && tools.isLogged()"> <div v-if="!optcatalogo.generazionePDFInCorso && tools.isLogged() && !myCatalog?.disattiva_link_immagini">
<q-btn <q-btn
icon-right="fas fa-cart-plus" icon-right="fas fa-cart-plus"
color="positive" color="positive"

View File

@@ -16,7 +16,7 @@ import { shared_consts } from '@src/common/shared_vuejs'
import { useRouter } from 'vue-router' import { useRouter } from 'vue-router'
import { costanti } from '@costanti' import { costanti } from '@costanti'
import type { IOptCatalogo, IMyScheda, IProduct } from '@src/model' import type { IOptCatalogo, IMyScheda, IProduct, ICatalog } from '@src/model'
export default defineComponent({ export default defineComponent({
@@ -33,6 +33,11 @@ export default defineComponent({
required: false, required: false,
default: null, default: null,
}, },
myCatalog: {
type: Object as PropType<ICatalog | null>,
required: false,
default: null,
},
cosa: { cosa: {
type: Number, type: Number,
required: false, required: false,

View File

@@ -10,6 +10,7 @@
@opendetail="opendetail" @opendetail="opendetail"
v-model="optcatalogo" v-model="optcatalogo"
:scheda="scheda" :scheda="scheda"
:myCatalog="myCatalog"
> >
</CCatalogoCard> </CCatalogoCard>
<q-dialog <q-dialog
@@ -38,6 +39,7 @@
@selauthor="selauthor" @selauthor="selauthor"
@updateproductmodif="updateproductmodif" @updateproductmodif="updateproductmodif"
:scheda="scheda" :scheda="scheda"
:myCatalog="myCatalog"
> >
</CCatalogoCard> </CCatalogoCard>
</div> </div>

View File

@@ -32,6 +32,8 @@ export interface ICatalog {
pagina_introduttiva_sfondo_nero?: boolean pagina_introduttiva_sfondo_nero?: boolean
backcolor?: string backcolor?: string
disattiva_link_immagini?: boolean
pdf_generato?: string pdf_generato?: string
pdf_generato_compressed?: string pdf_generato_compressed?: string
pdf_generato_compr_size?: string pdf_generato_compr_size?: string

View File

@@ -2057,6 +2057,7 @@ const msg_it = {
}, },
cataloglist: { cataloglist: {
disattiva_link_immagini: 'Disattiva i link sulle immagini',
nomefile_generare: 'Nome del File da generare (PDF)', nomefile_generare: 'Nome del File da generare (PDF)',
op_andor: 'Condizione', op_andor: 'Condizione',
casaeditrice: 'Casa Editrice', casaeditrice: 'Casa Editrice',

View File

@@ -307,6 +307,11 @@ export const colTableCatalogList = [
label_trans: 'cataloglist.pdf_online_stampa', label_trans: 'cataloglist.pdf_online_stampa',
dont_clone: true, dont_clone: true,
}), }),
AddCol({
name: 'disattiva_link_immagini',
label_trans: 'cataloglist.disattiva_link_immagini',
fieldtype: costanti.FieldType.boolean,
}),
// AddCol({ name: 'data_online', label_trans: 'dataloglist.data_online', fieldtype: costanti.FieldType.date }), // AddCol({ name: 'data_online', label_trans: 'dataloglist.data_online', fieldtype: costanti.FieldType.date }),
AddCol(ModifRec), AddCol(ModifRec),

View File

@@ -8295,7 +8295,7 @@ export const tools = {
} }
} }
}, },
getFullFileNameByImageFile(table: string, imagefile: string, id: string) { getFullFileNameByImageFile(table: string, imagefile: string, id: string = '') {
// console.log('arrimage', arrimage) // console.log('arrimage', arrimage)
if (shared_consts.TABLES_IMAGEFILE_SINGOLO.includes(table)) { if (shared_consts.TABLES_IMAGEFILE_SINGOLO.includes(table)) {

View File

@@ -1186,6 +1186,7 @@
in_3d: false, in_3d: false,
}" }"
@selauthor="selauthor" @selauthor="selauthor"
:myCatalog="myCatalog"
/> />
<CProductCard <CProductCard
v-else-if="product.active || show_hide" v-else-if="product.active || show_hide"
@@ -1486,6 +1487,7 @@
in_3d: false, in_3d: false,
}" }"
@selauthor="selauthor" @selauthor="selauthor"
:myCatalog="myCatalog"
/> />
<CProductCard <CProductCard
v-else-if="prod && (prod.active || show_hide)" v-else-if="prod && (prod.active || show_hide)"