Nuovo Sistema di registrazione, Completato.

This commit is contained in:
Paolo Arena
2022-05-05 00:38:26 +02:00
parent dafee01e20
commit b01de2d003
10 changed files with 117 additions and 26 deletions

View File

@@ -1,7 +1,7 @@
<template>
<div class="q-ma-sm">
<div class="column cursor-pointer" @click="copytoclip">
<q-field outlined :label="title" stack-label class="text-center cursor-pointer" label-color="text-blue">
<div class="bg-white column cursor-pointer" @click="copytoclip">
<q-field outlined :label="title" stack-label class="text-center cursor-pointer" label-color="blue">
<template v-slot:prepend v-if="!tools.isMobile()">
<q-btn round dense flat icon="far fa-copy"/>
</template>

View File

@@ -31,4 +31,8 @@
border-radius: 32px;
}
.myuserinvitante{
font-weight: bold;
color: red;
font-size: 1.5rem;
}

View File

@@ -7,6 +7,7 @@ import { Logo } from '@/components/logo'
// import 'vue-country-code/dist/vue-country-code.css'
import { CTitleBanner } from '../CTitleBanner'
import { CCopyBtn } from '../CCopyBtn'
import { PagePolicy } from '../PagePolicy'
import { computed, defineComponent, reactive, ref, watch } from 'vue'
import { CSignIn } from '@/components/CSignIn'
@@ -30,7 +31,7 @@ import { useGlobalStore } from '@store/globalStore'
export default defineComponent({
name: 'CSignUp',
components: { Logo, CTitleBanner, PagePolicy },
components: { Logo, CTitleBanner, PagePolicy, CCopyBtn },
props: {
showadultcheck: {
type: Boolean,
@@ -76,6 +77,8 @@ export default defineComponent({
const duplicate_username = ref(false)
const visureg = ref(false)
const showpolicy = ref(false)
const visubuttBOT = ref(false)
const isalreadyReg = ref(false)
const globalStore = useGlobalStore()
@@ -238,12 +241,15 @@ export default defineComponent({
signup.username = value.trim()
}
function created() {
async function created() {
console.log('$route.params', $route.params)
signup.aportador_solidario = !!$route.params.invited ? $route.params.invited.toString() : ''
signup.username = !!$route.params.usernameteleg ? $route.params.usernameteleg.toString() : ''
if (signup.username)
isalreadyReg.value = await tools.registeredusername(signup.username);
signup.profile.username_telegram = signup.username
if (!!$route.params.idteleg) {
signup.profile.teleg_id = $route.params.idteleg ? parseInt($route.params.idteleg.toString()) : 0
@@ -260,11 +266,17 @@ export default defineComponent({
console.log('signup.aportador_solidario', signup.aportador_solidario)
if (!signup.username || !signup.profile.teleg_id) {
window.location.href = tools.getLinkBotTelegram()
if (tools.getAskToVerifyReg()) {
if (!signup.username || !signup.profile.teleg_id) {
tools.copyStringToClipboard($q, signup.aportador_solidario, true)
visubuttBOT.value = true
// window.location.href = tools.getLinkBotTelegram()
}
}
}
function myRuleEmail(val: string) {
return new Promise((resolve, reject) => {
@@ -311,6 +323,8 @@ export default defineComponent({
myRuleEmail,
visureg,
showpolicy,
visubuttBOT,
isalreadyReg,
}
},
})

View File

@@ -23,24 +23,50 @@
class="text-center">
<div>
<p>
<div>
<logo></logo>
<q-btn class="q-ma-sm" color="positive" icon="fas fa-home" label="Se sei già Registrato CLICCA QUI" to="/"></q-btn>
<CTitleBanner :title="$t('pages.SignUp')"></CTitleBanner>
<div v-if="!isalreadyReg">
<CTitleBanner :title="$t('pages.SignUp')"></CTitleBanner>
<q-banner
rounded
class="bg-warning text-black"
style="text-align: center;"
>
<span class="mybanner" v-html="t('pages.need_Telegram')"></span>
</q-banner>
</p>
<q-banner
rounded
class="bg-warning text-black"
style="text-align: center;"
>
<span class="mybanner" v-html="t('pages.need_Telegram')"></span>
</q-banner>
</div>
</div>
</div>
<div class="q-gutter-sm">
<div v-if="visubuttBOT" class="q-gutter-md">
<q-banner
rounded
class="bg-green-5 text-white"
style="text-align: center;"
>
<span class="mybanner" v-html="t('pages.Registrazione_Con_Bot')"></span>
<CCopyBtn :title="$t('reg.invitante')" :texttocopy="signup.aportador_solidario">
</CCopyBtn>
<span class="myuserinvitante">{{}}</span>
<div class="q-ma-md">
<q-btn rounded color="primary" icon="fab fa-telegram" :label="$t('components.authentication.telegram.regbot', {botname: tools.getBotName() })"
type="a"
:href="tools.getLinkBotTelegram()" target="_blank"></q-btn>
<br>
</div>
</q-banner>
</div>
<div v-else-if="!isalreadyReg" class="q-gutter-sm">
<q-input
v-if="showaportador && signup.aportador_solidario !== tools.APORTADOR_NONE"
@@ -81,7 +107,7 @@
<q-input
v-model="signup.username"
:readonly="true"
:readonly="tools.getAskToVerifyReg()"
rounded outlined
@blur="v$.username.$touch"
@update:model-value="changeusername"
@@ -89,7 +115,7 @@
@keydown.space="(event) => event.preventDefault()"
maxlength="20"
debounce="1000"
:error-message="tools.errorMsg( 'username', v$.username)"
:error-message="tools.errorMsg( 'username', v$.username) || (isalreadyReg ? 'L\'Username è gia stato registrato!' : '')"
:label="$t('reg.username_reg')">
<template v-slot:prepend>