- sistemazioni Email : registrazione, invio invito, email di benvenuto

- fix circuito
- profilo
This commit is contained in:
Surya Paolo
2025-11-21 20:47:35 +01:00
parent 3c5287a13c
commit 8ab7594f16
88 changed files with 1494 additions and 320 deletions

View File

@@ -199,7 +199,9 @@ export default defineComponent({
return (
userStore.IsMyCircuitByName(circuititalia.value.name) ||
userStore.IsAskedCircuitByName(circuititalia.value.name) ||
userStore.my.profile.noCircIta || userStore.my.profile.noCircuit || userStore.my.profile.insert_circuito_ita
userStore.my.profile.noCircIta ||
userStore.my.profile.noCircuit ||
userStore.my.profile.insert_circuito_ita
);
}
return false;
@@ -257,7 +259,8 @@ export default defineComponent({
visible: !isTelegramVerified.value,
disabled: false,
title: 'Verifica Telegram',
description: 'Collega il tuo account Telegram per accedere alle community RISO!',
description:
'Collega il tuo account Telegram per partecipare alle community RISO ed essere contattato!',
completed: isTelegramVerified.value,
avatar: {
color: isTelegramVerified.value ? 'positive' : telegramStatus.value.color,
@@ -266,8 +269,16 @@ export default defineComponent({
},
caption: isTelegramVerified.value ? 'Completato!' : telegramStatus.value.message,
badge: {
color: isTelegramVerified.value ? 'positive' : (isTelegramSkipped ? 'red' : 'orange'),
label: isTelegramVerified.value ? 'Fatto' : (isTelegramSkipped ? 'Saltato' : 'Da fare'),
color: isTelegramVerified.value
? 'positive'
: (isTelegramSkipped.value
? 'red'
: 'orange'),
label: isTelegramVerified.value
? 'Fatto'
: (isTelegramSkipped.value
? 'Saltato'
: 'Da fare'),
},
},
{
@@ -275,7 +286,8 @@ export default defineComponent({
visible: true,
disabled: false,
title: 'Circuito RIS Locale',
description: 'Seleziona la tua provincia di residenza per connetterti con la community locale.',
description:
'Seleziona la tua provincia di residenza per connetterti con la community locale.',
completed: stepCircuit.value.checkOk(),
avatar: {
color: stepCircuit.value.checkOk() ? 'positive' : 'orange',
@@ -287,8 +299,16 @@ export default defineComponent({
? 'Completato: ' + stepCircuit.value.extratitle()
: stepCircuit.value.extratitle() || 'Unisciti al circuito della tua zona',
badge: {
color: stepCircuit.value.checkOkReal() ? 'positive' : isSalta(STEP_CIRCUIT) ? 'red' : 'orange',
label: stepCircuit.value.checkOkReal() ? 'Fatto' : isSalta(STEP_CIRCUIT) ? 'Saltato' : 'Da fare',
color: stepCircuit.value.checkOkReal()
? 'positive'
: (isSalta(STEP_CIRCUIT)
? 'red'
: 'orange'),
label: stepCircuit.value.checkOkReal()
? 'Fatto'
: (isSalta(STEP_CIRCUIT)
? 'Saltato'
: 'Da fare'),
},
},
{
@@ -296,7 +316,8 @@ export default defineComponent({
visible: true,
disabled: !(circuititalia.value && stepCircuit.value.checkOkReal()),
title: 'Circuito Italia',
description: 'Entra nel circuito nazionale per accedere a opportunità in tutta Italia.',
description:
'Entra nel circuito nazionale per accedere a opportunità in tutta Italia.',
completed: stepCircuitItalia.value.checkOk(),
avatar: {
color: stepCircuitItalia.value.checkOk() ? 'positive' : 'grey-6',
@@ -308,8 +329,16 @@ export default defineComponent({
? 'Completato!'
: 'Unisciti al circuito nazionale (opzionale)',
badge: {
color: stepCircuitItalia.value.checkOkReal() ? 'positive' : (isSalta(STEP_CIRCUIT_ITALIA)) ? 'red' : 'grey',
label: stepCircuitItalia.value.checkOkReal() ? 'Fatto' : (isSalta(STEP_CIRCUIT_ITALIA)) ? 'Saltato' : 'opzionale',
color: stepCircuitItalia.value.checkOkReal()
? 'positive'
: isSalta(STEP_CIRCUIT_ITALIA)
? 'red'
: 'grey',
label: stepCircuitItalia.value.checkOkReal()
? 'Fatto'
: isSalta(STEP_CIRCUIT_ITALIA)
? 'Saltato'
: 'opzionale',
},
},
]);
@@ -426,8 +455,8 @@ export default defineComponent({
$q.notify({
type: 'positive',
message:
'Token generato! Clicca su "Apri Telegram" per completare la verifica.',
timeout: 3000,
'Token generato! Clicca su "Apri Telegram" per completare la verifica e clicca su START.',
timeout: 5000,
});
} catch (error) {
console.error('Errore nella generazione del token:', error);
@@ -448,7 +477,26 @@ export default defineComponent({
};
const openTelegramDownload = () => {
window.open('https://telegram.org/apps', '_blank');
const userAgent = navigator.userAgent.toLowerCase();
// iOS - vai su App Store
if (/iphone|ipad|ipod/.test(userAgent)) {
window.open(
'https://apps.apple.com/app/telegram-messenger/id686449807',
'_blank'
);
}
// Android - vai su Google Play
else if (/android/.test(userAgent)) {
window.open(
'https://play.google.com/store/apps/details?id=org.telegram.messenger',
'_blank'
);
}
// Desktop - vai alla pagina download
else {
window.open('https://desktop.telegram.org/', '_blank');
}
};
const skipTelegramVerification = () => {
@@ -457,6 +505,7 @@ export default defineComponent({
message:
'<p><strong>RISO utilizza Telegram per connettere la sua community in tutta Italia!</strong></p>' +
'<p style="margin-top: 12px;">' +
'✅ Contatta direttamente i membri usando il bottone "Messaggia"<br>' +
'✅ Chat provinciali e nazionali RISO attive<br>' +
'✅ Migliaia di utenti con cui interagire<br>' +
'✅ Eventi, iniziative e aggiornamenti in tempo reale<br>' +
@@ -516,6 +565,28 @@ export default defineComponent({
}
});
};
const infoTelegramVerification = () => {
$q.dialog({
title: 'Perché Telegram?',
message:
'<p><strong>RISO utilizza Telegram per connettere la sua community in tutta Italia!</strong></p>' +
'<p style="margin-top: 12px;">' +
'✅ Contatta direttamente i membri usando il bottone "Messaggia"<br>' +
'✅ Chat provinciali e nazionali RISO attive<br>' +
'✅ Migliaia di utenti con cui interagire<br>' +
'✅ Eventi, iniziative e aggiornamenti in tempo reale<br>' +
'✅ Gruppi ampi senza limiti WhatsApp<br>' +
'✅ Gratuito, sicuro e senza pubblicità' +
'</p>' +
'<p style="margin-top: 12px;"><em>Unisciti alla community su Telegram e scopri tutto quello che RISO ha da offrire!</em></p>',
html: true,
ok: {
label: 'Chiudi',
color: 'primary',
},
persistent: true,
});
};
const startPolling = () => {
pollingInterval.value = setInterval(async () => {
@@ -541,7 +612,7 @@ export default defineComponent({
} catch (error) {
console.error('Errore nel controllo verifica:', error);
}
}, 3000);
}, 5000);
};
const stopPolling = () => {
@@ -573,7 +644,9 @@ export default defineComponent({
function isSalta(step: number) {
return (
(step === STEP_CIRCUIT && mycircuit.value && userStore.my.profile.noCircuit) ||
(step === STEP_CIRCUIT_ITALIA && circuititalia.value && userStore.my.profile.noCircIta)
(step === STEP_CIRCUIT_ITALIA &&
circuititalia.value &&
userStore.my.profile.noCircIta)
);
}
@@ -808,6 +881,7 @@ export default defineComponent({
startTelegramVerification,
openTelegramBot,
skipTelegramVerification,
infoTelegramVerification,
openTelegramDownload,
// Methods - Navigation