Ordini
@@ -306,12 +306,17 @@ module.exports = function (ctx) {
|
|||||||
background_color: '#ffffff',
|
background_color: '#ffffff',
|
||||||
icons: [
|
icons: [
|
||||||
{
|
{
|
||||||
'src': 'statics/icons/android-chrome-192x192.png',
|
'src': 'statics/icons/android-chrome-36x36.png',
|
||||||
'sizes': '192x192',
|
'sizes': '36x36',
|
||||||
'type': 'image/png'
|
'type': 'image/png'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
'src': 'statics/icons/android-chrome-512x512',
|
'src': 'statics/icons/android-chrome-96x96.png',
|
||||||
|
'sizes': '96x96',
|
||||||
|
'type': 'image/png'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'src': 'statics/icons/android-chrome-512x512.png',
|
||||||
'sizes': '512x512',
|
'sizes': '512x512',
|
||||||
'type': 'image/png'
|
'type': 'image/png'
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,6 +24,9 @@ register(process.env.SERVICE_WORKER_FILE, {
|
|||||||
},
|
},
|
||||||
updated(registration) {
|
updated(registration) {
|
||||||
console.log('New content is available; please refresh.')
|
console.log('New content is available; please refresh.')
|
||||||
|
document.dispatchEvent(
|
||||||
|
new CustomEvent('swUpdated', { detail: registration })
|
||||||
|
)
|
||||||
},
|
},
|
||||||
offline() {
|
offline() {
|
||||||
console.log('No internet connection found. App is running in offline mode.')
|
console.log('No internet connection found. App is running in offline mode.')
|
||||||
|
|||||||
26
src/App.scss
@@ -262,7 +262,6 @@ $heightBtn: 100%;
|
|||||||
.text-sobig {
|
.text-sobig {
|
||||||
font-size: 1.50rem;
|
font-size: 1.50rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.my-card {
|
.my-card {
|
||||||
@@ -274,6 +273,14 @@ $heightBtn: 100%;
|
|||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.my-card-big {
|
||||||
|
width: 100%;
|
||||||
|
max-width: 400px;
|
||||||
|
padding: 1rem 1rem;
|
||||||
|
|
||||||
|
box-shadow: none;
|
||||||
|
}
|
||||||
|
|
||||||
.text-trans {
|
.text-trans {
|
||||||
opacity: 0.9;
|
opacity: 0.9;
|
||||||
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
|
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
|
||||||
@@ -741,6 +748,13 @@ $heightBtn: 100%;
|
|||||||
padding: 6px;
|
padding: 6px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.clBorderShare {
|
||||||
|
border-radius: 32px;
|
||||||
|
font-size: 1rem;
|
||||||
|
padding: 6px;
|
||||||
|
border: #666cf6 solid 3px;
|
||||||
|
}
|
||||||
|
|
||||||
.clBorderImportant, .clBorderSteps {
|
.clBorderImportant, .clBorderSteps {
|
||||||
border: red solid 5px;
|
border: red solid 5px;
|
||||||
border-radius: 16px;
|
border-radius: 16px;
|
||||||
@@ -910,10 +924,16 @@ $heightBtn: 100%;
|
|||||||
position:relative;
|
position:relative;
|
||||||
}
|
}
|
||||||
.myheader {
|
.myheader {
|
||||||
padding:5px;
|
padding: 5px;
|
||||||
|
@media (max-width: 500px) {
|
||||||
|
padding: 1px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#mybody {
|
#mybody {
|
||||||
padding:5px;
|
padding: 5px;
|
||||||
|
@media (max-width: 500px) {
|
||||||
|
padding: 1px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
.myfooter{
|
.myfooter{
|
||||||
|
|
||||||
|
|||||||
@@ -8,13 +8,13 @@ import { Header } from './components/Header'
|
|||||||
import globalroutines from './globalroutines/index'
|
import globalroutines from './globalroutines/index'
|
||||||
import { GlobalStore } from './store/Modules'
|
import { GlobalStore } from './store/Modules'
|
||||||
import { toolsext } from '@src/store/Modules/toolsext'
|
import { toolsext } from '@src/store/Modules/toolsext'
|
||||||
import { BannerCookies, CPreloadImages, CTesseraElettronica } from '@components'
|
import { BannerCookies, CPreloadImages } from '@components'
|
||||||
import { static_data } from '@src/db/static_data'
|
import { static_data } from '@src/db/static_data'
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
components: {
|
components: {
|
||||||
appHeader: Header,
|
appHeader: Header,
|
||||||
BannerCookies, CPreloadImages, CTesseraElettronica
|
BannerCookies, CPreloadImages
|
||||||
},
|
},
|
||||||
router
|
router
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
</CPreloadImages>
|
</CPreloadImages>
|
||||||
|
|
||||||
|
|
||||||
<q-page-container id="mypage" >
|
<q-page-container id="mypage">
|
||||||
<div v-if="finishLoading">
|
<div v-if="finishLoading">
|
||||||
<transition name="fade" mode="out-in">
|
<transition name="fade" mode="out-in">
|
||||||
<router-view/>
|
<router-view/>
|
||||||
@@ -31,5 +31,5 @@
|
|||||||
<script lang="ts" src="./App.ts">
|
<script lang="ts" src="./App.ts">
|
||||||
</script>
|
</script>
|
||||||
<style lang="scss">
|
<style lang="scss">
|
||||||
@import './App';
|
@import './App';
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -16,6 +16,10 @@ const msg_website_it = {
|
|||||||
projects: 'Progetti',
|
projects: 'Progetti',
|
||||||
producer: 'Produttore',
|
producer: 'Produttore',
|
||||||
products: 'Prodotti',
|
products: 'Prodotti',
|
||||||
|
collabora: 'Collabora',
|
||||||
|
storehouses: 'Magazzino',
|
||||||
|
sharewithus: 'Condividi con Noi',
|
||||||
|
checkout: 'Carrello',
|
||||||
payment: 'Pagamenti',
|
payment: 'Pagamenti',
|
||||||
regok: 'Registrazione Confermata',
|
regok: 'Registrazione Confermata',
|
||||||
presentazione: 'Presentazione',
|
presentazione: 'Presentazione',
|
||||||
@@ -66,7 +70,9 @@ const msg_website_it = {
|
|||||||
people: 'Inv.',
|
people: 'Inv.',
|
||||||
peoplelegend: 'Numero d\'Invitati'
|
peoplelegend: 'Numero d\'Invitati'
|
||||||
},
|
},
|
||||||
|
admin_ecommerce: 'ECommerce',
|
||||||
ecommerce: 'E-Commerce',
|
ecommerce: 'E-Commerce',
|
||||||
|
ecommerce_menu: 'ECommerce1'
|
||||||
|
|
||||||
},
|
},
|
||||||
msg: {
|
msg: {
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ const functionality: IFunctionality = {
|
|||||||
SHOW_MESSAGES: false,
|
SHOW_MESSAGES: false,
|
||||||
BOOKING_EVENTS: true,
|
BOOKING_EVENTS: true,
|
||||||
ENABLE_ECOMMERCE: true,
|
ENABLE_ECOMMERCE: true,
|
||||||
|
ENABLE_REG_CNM: true,
|
||||||
}
|
}
|
||||||
|
|
||||||
const routes_admin: IListRoutes[] = [
|
const routes_admin: IListRoutes[] = [
|
||||||
@@ -52,6 +53,19 @@ const routes_admin: IListRoutes[] = [
|
|||||||
inmenu: true,
|
inmenu: true,
|
||||||
submenu: true,
|
submenu: true,
|
||||||
onlyAdmin: true
|
onlyAdmin: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
active: true,
|
||||||
|
order: 1030,
|
||||||
|
path: '/admin/sendpushnotif',
|
||||||
|
materialIcon: 'event_seat',
|
||||||
|
name: 'otherpages.manage.sendpushnotif',
|
||||||
|
component: () => import('@/rootgen/admin/sendpushnotif/sendpushnotif.vue'),
|
||||||
|
level_parent: 0.0,
|
||||||
|
level_child: 0.5,
|
||||||
|
inmenu: true,
|
||||||
|
submenu: true,
|
||||||
|
onlyAdmin: true
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -132,13 +146,25 @@ const routes_ecommerce: IListRoutes[] = [
|
|||||||
level_parent: 0,
|
level_parent: 0,
|
||||||
level_child: 0.5,
|
level_child: 0.5,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
active: true,
|
||||||
|
order: 30,
|
||||||
|
path: '/orderinfo',
|
||||||
|
materialIcon: 'fas fa-shopping-cart',
|
||||||
|
name: 'pages.orderinfo',
|
||||||
|
component: () => import('@/views/ecommerce/orderInfo/orderInfo.vue'),
|
||||||
|
inmenu: true,
|
||||||
|
submenu: true,
|
||||||
|
level_parent: 0,
|
||||||
|
level_child: 0.5,
|
||||||
|
},
|
||||||
]
|
]
|
||||||
|
|
||||||
const routes_admin_ecommerce: IListRoutes[] = [
|
const routes_admin_ecommerce: IListRoutes[] = [
|
||||||
{
|
{
|
||||||
active: true,
|
active: true,
|
||||||
order: 30,
|
order: 30,
|
||||||
path: '/admin/products',
|
path: '/admin/ecommerce/products',
|
||||||
materialIcon: 'fas fa-file-alt',
|
materialIcon: 'fas fa-file-alt',
|
||||||
name: 'pages.products',
|
name: 'pages.products',
|
||||||
component: () => import('@/rootgen/admin/products/products.vue'),
|
component: () => import('@/rootgen/admin/products/products.vue'),
|
||||||
@@ -152,7 +178,7 @@ const routes_admin_ecommerce: IListRoutes[] = [
|
|||||||
{
|
{
|
||||||
active: true,
|
active: true,
|
||||||
order: 30,
|
order: 30,
|
||||||
path: '/admin/producers',
|
path: '/admin/ecommerce/producers',
|
||||||
materialIcon: 'fas fa-file-alt',
|
materialIcon: 'fas fa-file-alt',
|
||||||
name: 'pages.producer',
|
name: 'pages.producer',
|
||||||
component: () => import('@/rootgen/admin/producer/producer.vue'),
|
component: () => import('@/rootgen/admin/producer/producer.vue'),
|
||||||
@@ -166,7 +192,7 @@ const routes_admin_ecommerce: IListRoutes[] = [
|
|||||||
{
|
{
|
||||||
active: true,
|
active: true,
|
||||||
order: 30,
|
order: 30,
|
||||||
path: '/admin/storehouses',
|
path: '/admin/ecommerce/storehouses',
|
||||||
materialIcon: 'fas fa-file-alt',
|
materialIcon: 'fas fa-file-alt',
|
||||||
name: 'pages.storehouses',
|
name: 'pages.storehouses',
|
||||||
component: () => import('@/rootgen/admin/storehouses/storehouses.vue'),
|
component: () => import('@/rootgen/admin/storehouses/storehouses.vue'),
|
||||||
@@ -180,6 +206,36 @@ const routes_admin_ecommerce: IListRoutes[] = [
|
|||||||
|
|
||||||
]
|
]
|
||||||
|
|
||||||
|
const routes_admin_ecommerce_menu: IListRoutes[] = [
|
||||||
|
{
|
||||||
|
active: true,
|
||||||
|
order: 30,
|
||||||
|
path: '/admin/ecommerce/products',
|
||||||
|
name: 'pages.products',
|
||||||
|
component: () => import('@/rootgen/admin/products/products.vue'),
|
||||||
|
inmenu: false,
|
||||||
|
infooter: false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
active: true,
|
||||||
|
order: 31,
|
||||||
|
path: '/admin/ecommerce/producers',
|
||||||
|
name: 'pages.producer',
|
||||||
|
component: () => import('@/rootgen/admin/producer/producer.vue'),
|
||||||
|
inmenu: false,
|
||||||
|
infooter: false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
active: true,
|
||||||
|
order: 32,
|
||||||
|
path: '/admin/ecommerce/storehouses',
|
||||||
|
name: 'pages.storehouses',
|
||||||
|
component: () => import('@/rootgen/admin/storehouses/storehouses.vue'),
|
||||||
|
infooter: false,
|
||||||
|
},
|
||||||
|
|
||||||
|
]
|
||||||
|
|
||||||
const routes_newsletter: IListRoutes[] = [
|
const routes_newsletter: IListRoutes[] = [
|
||||||
{
|
{
|
||||||
active: true,
|
active: true,
|
||||||
@@ -298,7 +354,39 @@ const routes_manager: IListRoutes[] = [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
active: true,
|
active: true,
|
||||||
order: 30,
|
path: '/admin/newsletter',
|
||||||
|
order: 60,
|
||||||
|
faIcon: 'fa fa-list-alt',
|
||||||
|
materialIcon: 'fas fa-users',
|
||||||
|
name: 'otherpages.admin.newsletter',
|
||||||
|
routes2: routes_newsletter,
|
||||||
|
inmenu: false,
|
||||||
|
submenu: true,
|
||||||
|
level_parent: 0.5,
|
||||||
|
level_child: 0.5,
|
||||||
|
solotitle: true,
|
||||||
|
onlyAdmin: true,
|
||||||
|
onlyManager: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
active: functionality.ENABLE_ECOMMERCE,
|
||||||
|
path: '/admin/ecommerce',
|
||||||
|
order: 31,
|
||||||
|
faIcon: 'fa fa-list-alt',
|
||||||
|
materialIcon: 'next_week',
|
||||||
|
name: 'pages.admin_ecommerce',
|
||||||
|
routes2: routes_admin_ecommerce,
|
||||||
|
inmenu: false,
|
||||||
|
submenu: true,
|
||||||
|
level_parent: 0.5,
|
||||||
|
level_child: 0.5,
|
||||||
|
solotitle: true,
|
||||||
|
onlyAdmin: true,
|
||||||
|
onlyManager: true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
active: true,
|
||||||
|
order: 35,
|
||||||
path: '/admin/msg_template',
|
path: '/admin/msg_template',
|
||||||
materialIcon: 'fas fa-file-alt',
|
materialIcon: 'fas fa-file-alt',
|
||||||
name: 'msgs.messages',
|
name: 'msgs.messages',
|
||||||
@@ -339,37 +427,6 @@ const routes_manager: IListRoutes[] = [
|
|||||||
onlyAdmin: true,
|
onlyAdmin: true,
|
||||||
onlyManager: true
|
onlyManager: true
|
||||||
},
|
},
|
||||||
{
|
|
||||||
active: true,
|
|
||||||
order: 60,
|
|
||||||
path: '/admin/newsletter',
|
|
||||||
materialIcon: 'fas fa-users',
|
|
||||||
name: 'otherpages.admin.newsletter',
|
|
||||||
inmenu: false,
|
|
||||||
submenu: true,
|
|
||||||
routes2: routes_newsletter,
|
|
||||||
solotitle: true,
|
|
||||||
level_parent: 0.5,
|
|
||||||
level_child: 0.5,
|
|
||||||
onlyAdmin: true,
|
|
||||||
onlyManager: true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
active: functionality.ENABLE_ECOMMERCE,
|
|
||||||
path: '',
|
|
||||||
order: 65,
|
|
||||||
faIcon: 'fa fa-list-alt',
|
|
||||||
materialIcon: 'next_week',
|
|
||||||
name: 'pages.ecommerce',
|
|
||||||
routes2: routes_admin_ecommerce,
|
|
||||||
inmenu: true,
|
|
||||||
submenu: true,
|
|
||||||
level_parent: 0.5,
|
|
||||||
level_child: 0.5,
|
|
||||||
solotitle: true,
|
|
||||||
onlyAdmin: true,
|
|
||||||
onlyManager: true
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
active: functionality.BOOKING_EVENTS,
|
active: functionality.BOOKING_EVENTS,
|
||||||
order: 70,
|
order: 70,
|
||||||
@@ -427,6 +484,17 @@ const baseroutes: IListRoutes[] = [
|
|||||||
inmenu: false,
|
inmenu: false,
|
||||||
infooter: false
|
infooter: false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
active: true,
|
||||||
|
order: 1000,
|
||||||
|
path: '/product/:codprod',
|
||||||
|
materialIcon: 'event',
|
||||||
|
name: 'otherpages.product',
|
||||||
|
component: () => import('@/views/ecommerce/productInfo/productInfo.vue'),
|
||||||
|
inmenu: false,
|
||||||
|
infooter: false
|
||||||
|
},
|
||||||
|
...routes_admin_ecommerce_menu,
|
||||||
{
|
{
|
||||||
active: true,
|
active: true,
|
||||||
order: 1000,
|
order: 1000,
|
||||||
@@ -516,7 +584,7 @@ const baseroutes: IListRoutes[] = [
|
|||||||
path: '/signup',
|
path: '/signup',
|
||||||
materialIcon: 'how_to_reg',
|
materialIcon: 'how_to_reg',
|
||||||
name: 'pages.SignUp',
|
name: 'pages.SignUp',
|
||||||
component: () => import('@/views/login/signup_complete/signup_complete.vue'),
|
component: () => import('@/views/login/signup/signup.vue'),
|
||||||
inmenu: false,
|
inmenu: false,
|
||||||
infooter: false,
|
infooter: false,
|
||||||
separator: false
|
separator: false
|
||||||
@@ -589,7 +657,8 @@ export const routes = baseroutes
|
|||||||
|
|
||||||
const preLoadImages: IPreloadImages[] = [
|
const preLoadImages: IPreloadImages[] = [
|
||||||
{ imgname: '../../statics/images/logo.png', alt: 'logo', mobile: false },
|
{ imgname: '../../statics/images/logo.png', alt: 'logo', mobile: false },
|
||||||
{ imgname: '../../statics/icons/flag_it.svg', alt: 'flag it', mobile: false }
|
{ imgname: '../../statics/icons/flag_it.svg', alt: 'flag it', mobile: false },
|
||||||
|
{ imgname: '../../statics/icons/flag_uk.svg', alt: 'flag en', mobile: false }
|
||||||
// { imgname: '../../statics/images/background.jpg', alt: 'corsi di formazione per operatori del massaggio del benessere', mobile: true },
|
// { imgname: '../../statics/images/background.jpg', alt: 'corsi di formazione per operatori del massaggio del benessere', mobile: true },
|
||||||
// { imgname: '../../statics/images/background2.jpg', alt: 'stanza con cuscini per seminario reiki', mobile: true },
|
// { imgname: '../../statics/images/background2.jpg', alt: 'stanza con cuscini per seminario reiki', mobile: true },
|
||||||
// { imgname: '../../statics/images/background3.jpg', alt: 'foto di gruppo seminaristi reiki', mobile: true },
|
// { imgname: '../../statics/images/background3.jpg', alt: 'foto di gruppo seminaristi reiki', mobile: true },
|
||||||
@@ -601,13 +670,13 @@ export function preloadedimages() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const arrLangUsed = [
|
const arrLangUsed = [
|
||||||
'it',
|
'it'
|
||||||
'enUs'
|
// 'enUs'
|
||||||
]
|
]
|
||||||
|
|
||||||
const lang_available: ILang[] = [
|
const lang_available: ILang[] = [
|
||||||
{ label: 'Italiano', icon: 'fa-flag-it', value: 'it', image: '../statics/icons/flag_it.svg', short: 'IT' },
|
{ label: 'Italiano', icon: 'fa-flag-it', value: 'it', image: '../statics/icons/flag_it.svg', short: 'IT' },
|
||||||
{ label: 'English', icon: 'fa-flag-us', value: 'enUs', image: '../statics/icons/flag_gb.svg', short: 'EN' }
|
// { label: 'English', icon: 'fa-flag-us', value: 'enUs', image: '../statics/icons/flag_gb.svg', short: 'EN' }
|
||||||
// { label: 'German', icon: 'fa-flag-de', value: 'de', image: '../statics/images/de.png', short: 'DE' },
|
// { label: 'German', icon: 'fa-flag-de', value: 'de', image: '../statics/images/de.png', short: 'DE' },
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
@@ -505,3 +505,6 @@ body.mobile .landing:before {
|
|||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
background-position: 50%;
|
background-position: 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.add-button {
|
||||||
|
}
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ import {
|
|||||||
CStatus,
|
CStatus,
|
||||||
CStatusReg,
|
CStatusReg,
|
||||||
CNextZoom,
|
CNextZoom,
|
||||||
CVerifyTelegram, CVerifyEmail, CECommerce
|
CVerifyTelegram, CVerifyEmail, CECommerce, CShareWithUs
|
||||||
} from '@components'
|
} from '@components'
|
||||||
import MixinBase from '@src/mixins/mixin-base'
|
import MixinBase from '@src/mixins/mixin-base'
|
||||||
import { static_data } from '@src/db/static_data'
|
import { static_data } from '@src/db/static_data'
|
||||||
@@ -37,10 +37,13 @@ import { INotData } from '@src/model'
|
|||||||
CNextZoom,
|
CNextZoom,
|
||||||
CVerifyTelegram,
|
CVerifyTelegram,
|
||||||
CVerifyEmail,
|
CVerifyEmail,
|
||||||
CECommerce
|
CECommerce,
|
||||||
|
CShareWithUs
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
export default class Home extends MixinBase {
|
export default class Home extends MixinBase {
|
||||||
|
public deferredPrompt: any = null
|
||||||
|
public showbuttonHS: boolean = false
|
||||||
public text: string = ''
|
public text: string = ''
|
||||||
public visibile: boolean = false
|
public visibile: boolean = false
|
||||||
public cardvisible: string = 'hidden'
|
public cardvisible: string = 'hidden'
|
||||||
@@ -63,6 +66,7 @@ export default class Home extends MixinBase {
|
|||||||
public arrvideo_yt = []
|
public arrvideo_yt = []
|
||||||
public arrvideo_mp4 = []
|
public arrvideo_mp4 = []
|
||||||
|
|
||||||
|
|
||||||
public arrsteps = [
|
public arrsteps = [
|
||||||
{
|
{
|
||||||
label: '1',
|
label: '1',
|
||||||
@@ -170,6 +174,14 @@ export default class Home extends MixinBase {
|
|||||||
return UserStore.state.isLogged
|
return UserStore.state.isLogged
|
||||||
}
|
}
|
||||||
|
|
||||||
|
get isSocio() {
|
||||||
|
return UserStore.state.my.profile.socio
|
||||||
|
}
|
||||||
|
|
||||||
|
get isSocioResidente() {
|
||||||
|
return UserStore.state.my.profile.socioresidente
|
||||||
|
}
|
||||||
|
|
||||||
get static_data() {
|
get static_data() {
|
||||||
return static_data
|
return static_data
|
||||||
}
|
}
|
||||||
@@ -195,13 +207,38 @@ export default class Home extends MixinBase {
|
|||||||
tools.showNotif(this.$q, String(my))
|
tools.showNotif(this.$q, String(my))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public addtoHomeScreen() {
|
||||||
|
if (!!this.deferredPrompt) {
|
||||||
|
this.deferredPrompt.prompt()
|
||||||
|
// Wait for the user to respond to the prompt
|
||||||
|
this.deferredPrompt.userChoice.then((choiceResult) => {
|
||||||
|
if (choiceResult.outcome === 'accepted') {
|
||||||
|
this.showbuttonHS = false
|
||||||
|
console.log('User accepted the A2HS prompt')
|
||||||
|
} else {
|
||||||
|
console.log('User dismissed the A2HS prompt')
|
||||||
|
}
|
||||||
|
this.deferredPrompt = null
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public initprompt() {
|
public initprompt() {
|
||||||
|
|
||||||
window.addEventListener('beforeinstallprompt', (event) => {
|
window.addEventListener('beforeinstallprompt', (event) => {
|
||||||
// console.log('******************************** beforeinstallprompt fired')
|
console.log('******************************** beforeinstallprompt fired')
|
||||||
event.preventDefault()
|
event.preventDefault()
|
||||||
// console.log('§§§§§§§§§§§§§§§§§§§§ IMPOSTA DEFERRED PROMPT !!!!!!!!!!!!!!!!! ')
|
|
||||||
// #Todo++ IMPOSTA DEFERRED PROMPT
|
this.deferredPrompt = event
|
||||||
return false
|
|
||||||
|
// Update UI to notify the user they can add to home screen
|
||||||
|
this.showbuttonHS = true
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
window.addEventListener('appinstalled', (evt) => {
|
||||||
|
// Log install to analytics
|
||||||
|
console.log('INSTALL: Success')
|
||||||
})
|
})
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -273,7 +310,8 @@ export default class Home extends MixinBase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public openrighttoolbar() {
|
public openrighttoolbar() {
|
||||||
GlobalStore.state.RightDrawerOpen = true
|
GlobalStore.state.rightDrawerOpen = true
|
||||||
|
GlobalStore.state.rightCartOpen = false
|
||||||
}
|
}
|
||||||
|
|
||||||
get TelegCode() {
|
get TelegCode() {
|
||||||
|
|||||||
@@ -57,6 +57,9 @@
|
|||||||
@input="changetab"
|
@input="changetab"
|
||||||
>
|
>
|
||||||
<q-tab name="guida" icon="fas fa-check" :label="$t('pages.home')"></q-tab>
|
<q-tab name="guida" icon="fas fa-check" :label="$t('pages.home')"></q-tab>
|
||||||
|
<q-tab v-if="isLogged && isSocio" name="prodotti" icon="fas fa-shopping-cart"
|
||||||
|
:label="$t('pages.products')"></q-tab>
|
||||||
|
<q-tab v-if="isLogged" name="collabora" icon="fas fa-users" :label="$t('pages.collabora')"></q-tab>
|
||||||
<!--<q-tab name="zoom" icon="fas fa-video" :label="$t('pages.nextzoom')"></q-tab>-->
|
<!--<q-tab name="zoom" icon="fas fa-video" :label="$t('pages.nextzoom')"></q-tab>-->
|
||||||
<!--<q-tab name="statistiche" icon="fas fa-chart-line" :label="$t('pages.status')"></q-tab>-->
|
<!--<q-tab name="statistiche" icon="fas fa-chart-line" :label="$t('pages.status')"></q-tab>-->
|
||||||
|
|
||||||
@@ -64,9 +67,58 @@
|
|||||||
|
|
||||||
<q-tab-panels v-model="tab" animated>
|
<q-tab-panels v-model="tab" animated>
|
||||||
<q-tab-panel name="guida">
|
<q-tab-panel name="guida">
|
||||||
|
<div class="q-ma-xs q-pa-xs text-center rounded-borders">
|
||||||
<div v-if="isLogged">
|
<div v-if="isLogged">
|
||||||
|
<div>
|
||||||
|
<!--<q-field-->
|
||||||
|
<!--v-if="getPermission() === 'granted'"-->
|
||||||
|
<!--icon="notifications"-->
|
||||||
|
<!--class="shadow"-->
|
||||||
|
<!--:label="$t('notification.titlegranted')"-->
|
||||||
|
<!--:helper="$t('notification.statusnot')">-->
|
||||||
|
<!--</q-field>-->
|
||||||
|
<q-field
|
||||||
|
v-if="NotServiceWorker()"
|
||||||
|
class="shadow"
|
||||||
|
icon="notifications"
|
||||||
|
label="Service Worker not present"
|
||||||
|
>
|
||||||
|
</q-field>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<q-btn v-if="getPermission() !== 'granted'"
|
||||||
|
class="enable-notifications shadow"
|
||||||
|
color="primary" rounded
|
||||||
|
size="md"
|
||||||
|
icon="notifications" @click="tools.askfornotification(mythis)"
|
||||||
|
:label="$t('notification.ask')"/>
|
||||||
|
<!--<q-btn v-if="getPermission() === 'granted'" class="enable-notifications" color="primary" rounded size="lg" icon="notifications" @click="showNotificationExample" label="Send Notification"/>-->
|
||||||
|
<!--<q-btn v-if="getPermission() === 'granted'" class="enable-notifications" color="secondary" rounded size="lg" icon="notifications" @click="createPushSubscription" label="Create Push Subscription !"/>-->
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<q-btn class="enable-notifications shadow add-button" v-if="showbuttonHS" @click="addtoHomeScreen"
|
||||||
|
color="primary" rounded
|
||||||
|
size="md"
|
||||||
|
icon="fas fa-plus"
|
||||||
|
label="Aggiungi alle tue Applicazioni">
|
||||||
|
</q-btn>
|
||||||
|
|
||||||
|
<div class="q-pt-md q-pl-sm">
|
||||||
|
<div class="text-body2 text-italic text-grey">Versione App {{ getenv('APP_VERSION') }}</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</q-tab-panel>
|
||||||
|
<q-tab-panel name="prodotti">
|
||||||
|
<CECommerce>
|
||||||
|
|
||||||
|
</CECommerce>
|
||||||
|
</q-tab-panel>
|
||||||
|
<q-tab-panel name="collabora">
|
||||||
|
<CShareWithUs></CShareWithUs>
|
||||||
|
|
||||||
</q-tab-panel>
|
</q-tab-panel>
|
||||||
<q-tab-panel name="zoom">
|
<q-tab-panel name="zoom">
|
||||||
@@ -83,10 +135,6 @@
|
|||||||
</q-tab-panel>
|
</q-tab-panel>
|
||||||
</q-tab-panels>
|
</q-tab-panels>
|
||||||
|
|
||||||
<CECommerce>
|
|
||||||
|
|
||||||
</CECommerce>
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</CMyPage>
|
</CMyPage>
|
||||||
@@ -97,5 +145,5 @@
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
@import './home.scss';
|
@import './home.scss';
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
BIN
src/statics/icons/android-chrome-144x144.png
Executable file
|
After Width: | Height: | Size: 50 KiB |
BIN
src/statics/icons/android-chrome-192x192.png
Executable file
|
After Width: | Height: | Size: 85 KiB |
BIN
src/statics/icons/android-chrome-36x36.png
Executable file
|
After Width: | Height: | Size: 3.9 KiB |
BIN
src/statics/icons/android-chrome-48x48.png
Executable file
|
After Width: | Height: | Size: 6.6 KiB |
BIN
src/statics/icons/android-chrome-512x512.png
Executable file
|
After Width: | Height: | Size: 451 KiB |
BIN
src/statics/icons/android-chrome-72x72.png
Executable file
|
After Width: | Height: | Size: 14 KiB |
BIN
src/statics/icons/android-chrome-96x96.png
Executable file
|
After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 4.5 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 813 B |
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 2.6 KiB |
BIN
src/statics/icons/favicon-48x48.png
Executable file
|
After Width: | Height: | Size: 5.5 KiB |
BIN
src/statics/icons/favicon-64x64.png
Executable file
|
After Width: | Height: | Size: 9.3 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 4.2 KiB |
|
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 288 KiB |
|
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 288 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 207 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 27 KiB |
0
src/statics/images/prodotti.jpg
Normal file → Executable file
|
Before Width: | Height: | Size: 808 KiB After Width: | Height: | Size: 808 KiB |
0
src/statics/images/products/arance.jpg
Normal file → Executable file
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 35 KiB |
0
src/statics/images/products/pane.jpg
Normal file → Executable file
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 29 KiB |