- Versione 1.0.33

- Aggiornato le varie librerie package
This commit is contained in:
Surya Paolo
2024-03-23 00:21:39 +01:00
parent 44ee68f8c6
commit 9be104f605
36 changed files with 1698 additions and 1554 deletions

View File

@@ -162,6 +162,7 @@ export const shared_consts = {
TOOLSAI: 320,
MAPPA: 350,
MAPPAUTENTI: 360,
MAPPACOMUNI: 370,
},
QUERYTYPE_MYGROUP: 1,
@@ -1714,6 +1715,10 @@ export const shared_consts = {
value: 360,
label: 'MAPPAUTENTI',
},
{
value: 370,
label: 'MAPPACOMUNI',
},
],

View File

@@ -2,44 +2,8 @@
<div v-if="showalways || (!showalways && !tools.isLogged())">
<div class="q-pa-md q-gutter-sm">
<div class=" text-center">
<transition-group
name="fade"
mode="out-in"
appear
enter-active-class="animazione fadeIn"
leave-active-class="animazione fadeOut"
>
<q-banner
:key="1"
rounded
class="text-white bg-red"
color="primary q-title"
style="text-align: center"
>
<template v-slot:avatar>
<q-icon :key="2" name="fas fa-sign-in-alt" color="white" />
</template>
<div :key="3">
Accedi con le tue credenziali per utilizzare la APP e per unirti
al Circuito di scambio RIS del tuo territorio
</div>
<template v-slot:action>
<div>
<q-btn
flat
color="white"
@click="tools.openrighttoolbar()"
>{{ $t('login.enter') }}
</q-btn>
</div>
<!--<CRegistration />-->
</template>
</q-banner>
</transition-group>
<q-separator inset />
<br>
<q-banner
v-if="false"
rounded
dense
size="lg"
@@ -56,7 +20,7 @@
rounded
icon="fab fa-telegram"
color="primary"
href="https://t.me/+pZ40VpmL1NhkZjE0"
href="https://t.me/riso_canale/3"
target="_blank"
label="Progetto RISO"
>

View File

@@ -1,3 +0,0 @@
.map-container {
height: 400px;
}

View File

@@ -1,146 +0,0 @@
import { tools } from '@store/Modules/tools'
import { useQuasar } from 'quasar'
import { PropType, defineComponent, onMounted, ref, computed } from 'vue'
import 'leaflet/dist/leaflet.css'
// @ts-ignore
import * as L from 'leaflet'
import 'leaflet.markercluster/dist/MarkerCluster.css'
import 'leaflet.markercluster/dist/MarkerCluster.Default.css'
import 'leaflet.markercluster'
import { useUserStore } from '@src/store/UserStore'
export default defineComponent({
name: 'CMapUsers',
setup(props, { emit }) {
const $q = useQuasar()
const userStore = useUserStore()
const iconWidth = ref(25)
const iconHeight = ref(40)
const map = ref(<any>null)
const zoom = ref(6)
const arrprovince = ref(<any>[])
const initialMap = ref(<any>null);
const myIcon = L.icon({
iconUrl: 'images/icon.png',
iconSize: [30, 30],
iconAnchor: [22, 35],
popupAnchor: [-6, -36],
shadowUrl: 'images/marker-shadow.png',
shadowSize: [60, 30],
shadowAnchor: [22, 35]
});
function mywidth() {
return tools.getwidth($q) - 20
}
function myheight() {
return $q.screen.height - 50
}
const iconUrl = computed(() => {
return `https://placekitten.com/${iconWidth.value}/${iconHeight.value}`;
})
const iconSize = computed(() => {
return [iconWidth.value, iconHeight.value];
})
function changeIcon() {
iconWidth.value += 2;
if (iconWidth.value > iconHeight.value) {
iconWidth.value = Math.floor(iconHeight.value / 2);
}
}
function getColor(d: any) {
return d > 1000 ? '#800026' :
d > 500 ? '#BD0026' :
d > 200 ? '#E31A1C' :
d > 100 ? '#FC4E2A' :
d > 50 ? '#FD8D3C' :
d > 20 ? '#FEB24C' :
d > 10 ? '#FED976' :
'#FFEDA0';
}
function style(feature: any) {
return {
fillColor: getColor(feature.properties.density),
weight: 2,
opacity: 1,
color: 'white',
dashArray: '3',
fillOpacity: 0.7
};
}
onMounted(async () => {
// Ottengo la lista degli utenti con i lat e long
arrprovince.value = await userStore.getProvincesForMap()
initialMap.value = L.map('map',
{
zoomControl: true, zoom: zoom.value, zoomAnimation: false,
fadeAnimation: true, markerZoomAnimation: true,
center: [42.71, 12.934],
}
);
L.tileLayer('https://tile.openstreetmap.org/{z}/{x}/{y}.png', {
maxZoom: 13,
attribution: ''
}).addTo(initialMap.value);
// @ts-ignore
const markers = L.markerClusterGroup();
for (const provincia of arrprovince.value) {
if (provincia.lat && provincia.long && provincia.userCount > 1) {
// @ts-ignore
let each_marker = new L.marker(
[provincia.lat, provincia.long], { icon: myIcon })
.bindPopup(`<strong> ${provincia.descr}:
${provincia.userCount} utenti </strong>`);
markers.addLayer(each_marker);
}
}
initialMap.value.addLayer(markers);
});
function log(str: string) {
console.log(str)
}
function getCoordinates(e: any) {
// Ottieni la latitudine e la longitudine dal click
const lat = e.latlng.lat
const lng = e.latlng.lng
// Fai qualcosa con le coordinate, ad esempio stamparle in console
console.log(`Latitudine: ${lat}, Longitudine: ${lng}`)
}
return {
mywidth,
myheight,
map,
iconWidth,
iconHeight,
iconUrl,
iconSize,
changeIcon,
zoom,
log,
getCoordinates,
arrprovince,
}
}
})

View File

@@ -1,44 +0,0 @@
<template>
<div>
<div v-if="arrprovince" id="map" :style="`height:${myheight()}px; width:99%`">
</div>
<!--
<div :style="`height:${myheight()}px; width:99%`">
<l-map
v-model="zoom"
v-model:zoom="zoom"
:center="[42.71, 12.934]"
@move="log('move')"
@click="getCoordinates"
>
<l-tile-layer
url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
></l-tile-layer>
<l-control-layers />
<span v-for="provincia in arrprovince" :key="provincia.nome">
<l-marker-cluster :options="clusterOptions">
<l-marker
v-if="provincia.userCount > 0"
:lat-lng="[provincia.lat, provincia.long]"
>
<l-popup
>{{ provincia.descr }}:
{{ provincia.userCount }} utenti</l-popup
>
</l-marker>
</l-marker-cluster>
</span>
</l-map>
<button @click="changeIcon">New kitten icon</button>
</div>
-->
</div>
</template>
<script lang="ts" src="./CMapUsers.ts">
</script>
<style lang="scss" scoped>
@import './CMapUsers.scss';
</style>

View File

@@ -1 +0,0 @@
export {default as CMapUsers} from './CMapUsers.vue'

View File

@@ -17,7 +17,8 @@ import { CECommerce } from '@/components/CECommerce'
import { CAITools } from '@/components/CAITools'
import { CCatalogo } from '@/components/CCatalogo'
// import { CMapMarker } from '@src/components/CMapMarker.off'
import { CMapUsers } from '@/components/CMapUsers'
// import { CMapUsers } from '@/components/CMapUsers'
// import { CMapComuni } from '@/components/CMapComuni'
import { COpenStreetMap } from '@src/components/COpenStreetMap'
import { CCardCarousel } from '@src/components/CCardCarousel'
import { CMyPage } from '@src/components/CMyPage'
@@ -59,7 +60,7 @@ export default defineComponent({
CMyProfileTutorial, CSendRISTo,
CTitleBanner, CShareSocial, CCheckAppRunning, CRegistration,
CVisuVideoPromoAndPDF, CECommerce, CCatalogo, CAITools,
CMapUsers, //CMapMarker,
// CMapUsers, CMapComuni, //CMapMarker,
},
emits: ['selElemClick'],
props: {

View File

@@ -559,14 +559,19 @@
</div>
<div v-else-if="myel.type === shared_consts.ELEMTYPE.MAPPA">
<div v-if="editOn" class="elemEdit">MAPPA:</div>
<CMapMarker :coord_center="{lat: 47.41322, long: -1.219482}"
<!--<CMapMarker :coord_center="{lat: 47.41322, long: -1.219482}"
></CMapMarker>
></CMapMarker>-->
</div>
<div v-else-if="myel.type === shared_consts.ELEMTYPE.MAPPAUTENTI">
<div v-if="editOn" class="elemEdit">MAPPA UTENTI:</div>
<CMapUsers
></CMapUsers>
<!--<CMapUsers
></CMapUsers>-->
</div>
<div v-else-if="myel.type === shared_consts.ELEMTYPE.MAPPACOMUNI">
<div v-if="editOn" class="elemEdit">MAPPA COMUNI:</div>
<!--<CMapComuni
></CMapComuni>-->
</div>
<div v-else-if="myel.type === shared_consts.ELEMTYPE.TOOLSAI">
<div v-if="editOn" class="elemEdit">STRUMENTI AI:</div>
@@ -631,7 +636,7 @@
rounded
size="md"
color="primary"
to="/registrati"
to="/registrati/" + tools.getInvitante()
:label="$t('reg.submit')"
>
</q-btn>

View File

@@ -187,14 +187,6 @@
<section :class="`padding `+ ($q.dark.isActive ? `text-white bg-black ` : `text-grey-10 bg-white`) + ` text-center`">
<div class="landing__features row items-start q-col-gutter-sm">
<div class="col-12 text-center">
<div class="feature-item q-mx-md">
<img
src="images/group-together.jpg"
alt="together"
class="doc-img">
</div>
</div>
<div class="col-12 text-center"><h4>{{ t('homepage.descrapp_title1') }}</h4>
<p v-html="t('homepage.descrapp_pag1')"></p>
<p v-html="t('homepage.descrapp_pag2')"></p>

View File

@@ -47,15 +47,18 @@ export default defineComponent({
function clickToRegister() {
if (site.value.confpages.enableRegByBot) {
$router.push('/bot')
} else {
$router.push('/registrati')
}
//if (site.value.confpages.enableRegByBot) {
//$router.push('/bot')
//} else {
$router.push('/registrati/'+ tools.getInvitante())
//}
}
function mounted() {
const invitante = tools.getInvitante()
console.log('invitante', invitante)
if (props.invited) {
start.value = true
chooseReg.value = true
@@ -71,6 +74,19 @@ export default defineComponent({
}
}
function buttRegistrati() {
const invitante = tools.getCookie(tools.APORTADOR_SOLIDARIO)
if (invitante) {
start.value = true
slide.value = 'second';
noInvited.value = false;
chooseReg.value = true;
} else {
start.value = true
}
}
onMounted(mounted)
return {
@@ -82,6 +98,7 @@ export default defineComponent({
noInvited,
slide,
regEventEmail,
buttRegistrati,
}
},
})

View File

@@ -4,13 +4,14 @@
class="row q-ma-sm centermydiv2 q-pa-sm justify-center align-center"
>
<div v-if="!start">
<q-btn
rounded
glossy
icon="fas fa-user-plus"
size="lg"
size="md"
color="primary"
@click="start = true"
@click="buttRegistrati()"
:label="$t('reg.submit')"
>
</q-btn>
@@ -70,14 +71,14 @@
Se ancora non sei stato invitato:
</div>
<br />
1 👉🏻 Entra nel canale Telegram "Progetto RISO" cliccando qui:<br />
1 👉🏻 Entra nei gruppi Territoriali su Telegram:<br />
<div class="text-center">
<q-btn
type="a"
rounded
icon="fab fa-telegram"
color="positive"
href="https://t.me/+pZ40VpmL1NhkZjE0"
href="https://t.me/riso_canale/3"
target="_blank"
label="Progetto RISO"
>
@@ -104,7 +105,7 @@
<q-btn
rounded
type="a"
class="col-xs-12 col-sm-6 flex-item-btn items-center"
class="col-xs-12 col-sm-6 flex-item-btn items-center q-my-md"
icon="fab fa-telegram"
size="md"
color="primary"
@@ -119,6 +120,7 @@
>Consigliato</q-badge
>
</q-btn>
<br>
<div
:class="
$q.dark.isActive
@@ -126,20 +128,26 @@
: `text-black` + ` col-12 text-center`
"
>
se non riesci ad installare Telegram:
<div class="bg-grey-4">
<br />
se non hai Telegram puoi registrarti con solo l'email ma
<span style="text-decoration: underline"
>non potrai contattare gli iscritti</span
>.
<q-btn
rounded
class="flex-item-btn col-xs-12 col-sm-6"
outline
icon="fas fa-envelope"
size="0.75rem"
:color="$q.dark.isActive ? `black` : `white`"
:text-color="$q.dark.isActive ? `white` : `black`"
@click="regEventEmail"
:label="$t('reg.byemail')"
>
</q-btn>
</div>
</div>
<q-btn
rounded
class="flex-item-btn col-xs-12 col-sm-6"
outline
icon="fas fa-envelope"
size="md"
:color="$q.dark.isActive ? `black` : `white`"
:text-color="$q.dark.isActive ? `white` : `black`"
@click="regEventEmail"
:label="$t('reg.byemail')"
>
</q-btn>
</div>
<div v-else style="margin-top: 10px; text-align: center">
Registrati<br />

View File

@@ -292,6 +292,7 @@
</template>
</q-input>
<div class="column">
<q-btn
rounded

View File

@@ -1928,4 +1928,18 @@ h3 {
.clDescrEstesa {
font-size: 1rem;
line-height: normal !important;
}
.aspect-ratio-box {
position: relative;
width: 100%;
padding-top: 56.25%; /* 16:9 Aspect Ratio */
}
.aspect-ratio-box iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

View File

@@ -11,7 +11,6 @@ import { CDashboard } from '@/components/CDashboard'
import { CChartMap } from '@src/components/CChartMap'
import { CUserNonVerif } from '@/components/CUserNonVerif'
import { CTitlePage } from '@/components/CTitlePage'
import { CMapsEsempio } from '@src/components/CMapsEsempio'
import { CVerifyEmail } from '@src/components/CVerifyEmail'
import { CVerifyTelegram } from '@src/components/CVerifyTelegram'
import { useGlobalStore } from '@store/globalStore'
@@ -24,7 +23,7 @@ import { colmyBachecas } from '@store/Modules/fieldsTable'
export default defineComponent({
name: 'eventi',
components: { CSkill, CChartMap, CMapsEsempio, CFinder, CVerifyEmail, CVerifyTelegram, CDashboard, CUserNonVerif, CTitlePage, LandingFooter },
components: { CSkill, CChartMap, CFinder, CVerifyEmail, CVerifyTelegram, CDashboard, CUserNonVerif, CTitlePage, LandingFooter },
setup() {
return {
colmyBachecas,

View File

@@ -10,7 +10,7 @@ import { CDashboard } from '@/components/CDashboard'
import { CChartMap } from '@src/components/CChartMap'
import { CUserNonVerif } from '@/components/CUserNonVerif'
import { CTitlePage } from '@/components/CTitlePage'
import { CMapsEsempio } from '@src/components/CMapsEsempio'
// import { CMapsEsempio } from '@src/components/CMapsEsempio'
import { CVerifyEmail } from '@src/components/CVerifyEmail'
import { CNotifAtTop } from '@src/components/CNotifAtTop'
import { CVerifyTelegram } from '@src/components/CVerifyTelegram'
@@ -23,7 +23,7 @@ import MixinUsers from '@/mixins/mixin-users'
export default defineComponent({
name: 'Goods',
components: { CSkill, CChartMap, CMapsEsempio, CFinder,
components: { CSkill, CChartMap, CFinder,
CNotifAtTop, CVerifyEmail, CVerifyTelegram, CDashboard, CUserNonVerif, CTitlePage, LandingFooter },
setup() {

View File

@@ -11,7 +11,7 @@ import { CTitlePage } from '@/components/CTitlePage'
import { CChartMap } from '@src/components/CChartMap'
import { CUserNonVerif } from '@/components/CUserNonVerif'
import { CNotifAtTop } from '@src/components/CNotifAtTop'
import { CMapsEsempio } from '@src/components/CMapsEsempio'
// import { CMapsEsempio } from '@src/components/CMapsEsempio'
import { CVerifyEmail } from '@src/components/CVerifyEmail'
import { CVerifyTelegram } from '@src/components/CVerifyTelegram'
import { LandingFooter } from '@/components/LandingFooter'
@@ -24,7 +24,7 @@ import { costanti } from '@costanti'
export default defineComponent({
name: 'Services',
components: { CSkill, CChartMap, CNotifAtTop, CMapsEsempio, CFinder, CVerifyEmail, CVerifyTelegram, CDashboard, CUserNonVerif, CTitlePage, LandingFooter },
components: { CSkill, CChartMap, CNotifAtTop, CFinder, CVerifyEmail, CVerifyTelegram, CDashboard, CUserNonVerif, CTitlePage, LandingFooter },
setup() {
return {
tools,

View File

@@ -4270,7 +4270,7 @@ export const tools = {
getCookie(mytok: any, def?: any, convertint: any = false, convertbool: any = false) {
const ris = Cookies.get(mytok)
// console.log('getCookie', mytok, ris)
console.log('getCookie', mytok, ris)
if (ris === 'null')
return def
@@ -8502,6 +8502,11 @@ export const tools = {
}
},
getInvitante() {
const invitante = tools.getCookie(tools.APORTADOR_SOLIDARIO)
return invitante ? invitante : ''
}
// FINE !