regNameSurnameMandatory

askUSernameTelegramToTheReg
@ davanti all'username
This commit is contained in:
Surya Paolo
2024-01-19 23:38:15 +01:00
parent 1ea2ef1ea3
commit fbebd925b1
8 changed files with 53 additions and 16 deletions

View File

@@ -1197,6 +1197,8 @@ export const shared_consts = {
AskInvitantesulBot: 8, AskInvitantesulBot: 8,
AskUsernameSulBot: 16, AskUsernameSulBot: 16,
registerUserWithBot: 32, registerUserWithBot: 32,
regNameSurnameMandatory: 64,
askUSernameTelegramToTheReg: 128,
}, },
MsgTeleg: { MsgTeleg: {

View File

@@ -44,14 +44,14 @@
<q-separator></q-separator> <q-separator></q-separator>
<div <div
v-if="myTotalPriceCalc() !== myTotalPrice() && myTotalPriceCalc() !== ''" v-if="
myTotalPriceCalc() !== myTotalPrice() && myTotalPriceCalc() !== ''
"
class="col-6 q-mr-sm" class="col-6 q-mr-sm"
style="text-align: right" style="text-align: right"
> >
<span class="text-grey q-mr-xs">{{ t('ecomm.calcolato') }}:</span> <span class="text-grey q-mr-xs">{{ t('ecomm.calcolato') }}:</span>
<span class="text-subtitle1 q-mr-sm" <span class="text-subtitle1 q-mr-sm">€ {{ myTotalPriceCalc() }}</span>
> {{ myTotalPriceCalc() }}</span
>
</div> </div>
<div class="col-6 q-mr-sm" style="text-align: right"> <div class="col-6 q-mr-sm" style="text-align: right">
<q-input <q-input
@@ -60,7 +60,7 @@
:label="t('ecomm.totalPrice')" :label="t('ecomm.totalPrice')"
filled filled
dense dense
style="width: 150px;" style="width: 150px"
debounce="1000" debounce="1000"
@change="changeTotalPrice" @change="changeTotalPrice"
> >
@@ -94,8 +94,11 @@
@update:model-value="change_field('note')" @update:model-value="change_field('note')"
> >
</q-input> </q-input>
<q-field v-else> Note: {{ myrec.note }} </q-field> <div v-else>
<q-field> Note: {{ myrec.note }} </q-field>
<q-field color="red"> Note per il Gestore: {{ myrec.note_per_gestore }} </q-field>
</div>
<q-input <q-input
v-if="editOn && tools.isManager() && getNumItems() > 0" v-if="editOn && tools.isManager() && getNumItems() > 0"
v-model="myrec.note_per_gestore" v-model="myrec.note_per_gestore"

View File

@@ -18,6 +18,8 @@ import { DefaultProfile, useUserStore } from '@store/UserStore'
import useValidate from '@vuelidate/core' import useValidate from '@vuelidate/core'
import useVuelidate from '@vuelidate/core' import useVuelidate from '@vuelidate/core'
import { shared_consts } from '@/common/shared_vuejs'
import { minLength, required, sameAs } from '@vuelidate/validators' import { minLength, required, sameAs } from '@vuelidate/validators'
// import { ValidationRuleset } from 'vuelidate' // import { ValidationRuleset } from 'vuelidate'
@@ -118,6 +120,11 @@ export default defineComponent({
} else if (slide.value === '2') { } else if (slide.value === '2') {
// Username // Username
ret = !signup.username || (inputUsername.value && inputUsername.value.hasError) ret = !signup.username || (inputUsername.value && inputUsername.value.hasError)
if (tools.getConfSiteOptionEnabled(shared_consts.ConfSite.regNameSurnameMandatory)) {
ret = ret || (!signup.name || (inputName.value && inputName.value.hasError))
ret = ret || (!signup.surname || (inputSurname.value && inputSurname.value.hasError))
}
} else if (slide.value === '3') { } else if (slide.value === '3') {
// Password // Password
ret = !signup.password || (!inputPassword.value || (inputPassword.value && inputPassword.value.hasError)) || (!inputPassword2.value || (inputPassword2.value && inputPassword2.value.hasError)) ret = !signup.password || (!inputPassword.value || (inputPassword.value && inputPassword.value.hasError)) || (!inputPassword2.value || (inputPassword2.value && inputPassword2.value.hasError))
@@ -163,7 +170,10 @@ export default defineComponent({
registereduser, registereduser,
}, },
name: { name: {
required: props.collettivo ? true : false, required: (props.collettivo || tools.getConfSiteOptionEnabled(shared_consts.ConfSite.regNameSurnameMandatory)) ? true : false,
},
surname: {
required: (tools.getConfSiteOptionEnabled(shared_consts.ConfSite.regNameSurnameMandatory)) ? true : false,
}, },
terms: { terms: {
required, required,
@@ -432,6 +442,8 @@ export default defineComponent({
inputSurname, inputSurname,
inputPassword, inputPassword,
inputPassword2, inputPassword2,
shared_consts,
} }
}, },
}) })

View File

@@ -13,6 +13,7 @@
</span> </span>
</q-banner> </q-banner>
<div class="row q-ma-sm q-pa-sm justify-center"> <div class="row q-ma-sm q-pa-sm justify-center">
<q-btn <q-btn
class="q-ma-sm" class="q-ma-sm"
@@ -157,7 +158,7 @@
tools.errorMsg('username', v$.username) || tools.errorMsg('username', v$.username) ||
(isalreadyReg ? 'L\'Username è gia stato registrato!' : '') (isalreadyReg ? 'L\'Username è gia stato registrato!' : '')
" "
:label="$t('reg.username_reg')" :label="tools.getConfSiteOptionEnabled(shared_consts.ConfSite.askUSernameTelegramToTheReg) ? $t('reg.username_telegram') : $t('reg.username_reg')"
> >
<template v-slot:prepend> <template v-slot:prepend>
<q-icon name="person" /> <q-icon name="person" />
@@ -198,7 +199,7 @@
debounce="1000" debounce="1000"
@keyup.enter="$refs.inputSurname.focus()" @keyup.enter="$refs.inputSurname.focus()"
:error-message="tools.errorMsg('name', v$.name)" :error-message="tools.errorMsg('name', v$.name)"
:label="$t('reg.name_opt')" :label="tools.getConfSiteOptionEnabled(shared_consts.ConfSite.regNameSurnameMandatory) ? $t('reg.name') : $t('reg.name_opt')"
> >
<template v-slot:prepend> <template v-slot:prepend>
<q-icon name="person" /> <q-icon name="person" />
@@ -427,7 +428,7 @@
tools.errorMsg('username', v$.username) || tools.errorMsg('username', v$.username) ||
(isalreadyReg ? 'L\'Username è gia stato registrato!' : '') (isalreadyReg ? 'L\'Username è gia stato registrato!' : '')
" "
:label="collettivo ? $t('reg.username_reg_collettivo') : $t('reg.username_reg')" :label="collettivo ? $t('reg.username_reg_collettivo') : (tools.getConfSiteOptionEnabled(shared_consts.ConfSite.askUSernameTelegramToTheReg) ? $t('reg.username_telegram') : $t('reg.username_reg'))"
> >
<template v-slot:prepend> <template v-slot:prepend>
<q-icon name="person" /> <q-icon name="person" />
@@ -468,7 +469,7 @@
debounce="1000" debounce="1000"
@keyup.enter="$refs.inputSurname.focus()" @keyup.enter="$refs.inputSurname.focus()"
:error-message="tools.errorMsg('name', v$.name)" :error-message="tools.errorMsg('name', v$.name)"
:label="$t('reg.name_opt')" :label="tools.getConfSiteOptionEnabled(shared_consts.ConfSite.regNameSurnameMandatory) ? $t('reg.name') : $t('reg.name_opt')"
> >
<template v-slot:prepend> <template v-slot:prepend>
<q-icon name="person" /> <q-icon name="person" />
@@ -488,7 +489,7 @@
!checkifDisabled ? $refs.carousel.next() : null !checkifDisabled ? $refs.carousel.next() : null
" "
:error-message="tools.errorMsg('surname', v$.surname)" :error-message="tools.errorMsg('surname', v$.surname)"
:label="$t('reg.surname_opt')" :label="tools.getConfSiteOptionEnabled(shared_consts.ConfSite.regNameSurnameMandatory) ? $t('reg.surname') : $t('reg.surname_opt')"
> >
<template v-slot:prepend> <template v-slot:prepend>
<q-icon name="person" /> <q-icon name="person" />

View File

@@ -291,6 +291,14 @@ export const tools = {
label: 'Permetti di registrarsi in automatico solo entrando sul BOT', label: 'Permetti di registrarsi in automatico solo entrando sul BOT',
value: shared_consts.ConfSite.registerUserWithBot, value: shared_consts.ConfSite.registerUserWithBot,
}, },
{
label: 'Nome e Cognome Obbligatori in fase di registrazione',
value: shared_consts.ConfSite.regNameSurnameMandatory,
},
{
label: 'Username Telegram in fase di Registrazione',
value: shared_consts.ConfSite.askUSernameTelegramToTheReg,
},
], ],
@@ -8365,6 +8373,14 @@ export const tools = {
return mylink.replace('{site}', site).replace('{value}', value); return mylink.replace('{site}', site).replace('{value}', value);
}, },
rimuoviAtInizio(stringa: string) {
if (stringa.startsWith('@')) {
return stringa.substring(1);
} else {
return stringa;
}
},
// FINE ! // FINE !
// getLocale() { // getLocale() {

View File

@@ -1289,7 +1289,7 @@ export const useUserStore = defineStore('UserStore', {
} }
const usertosend = { const usertosend = {
username: authData.username.trim(), username: tools.rimuoviAtInizio(authData.username.trim()),
password: authData.password.trim(), password: authData.password.trim(),
lang: this.lang, lang: this.lang,
options, options,

View File

@@ -1,9 +1,10 @@
import { Patterns } from '@/common' import { Patterns } from '@/common'
import { tools } from '../store/Modules/tools'
export function complexity(password: string) { export function complexity(password: string) {
return Patterns.Password.test(password) return Patterns.Password.test(password)
} }
export function complexityUser(username: string) { export function complexityUser(username: string) {
return Patterns.Username.test(username) return Patterns.Username.test(tools.rimuoviAtInizio(username))
} }

View File

@@ -2,6 +2,8 @@ import { default as Axios, AxiosResponse } from 'axios'
// import { IPayload } from 'model' // import { IPayload } from 'model'
import { GlobalConfig, PayloadMessageTypes } from '../common' import { GlobalConfig, PayloadMessageTypes } from '../common'
import { tools } from '@store/Modules/tools'
import { helpers } from '@vuelidate/validators' import { helpers } from '@vuelidate/validators'
const { withAsync } = helpers const { withAsync } = helpers
@@ -16,7 +18,7 @@ export function _registereduser (userName: string) {
return res.status !== PayloadMessageTypes.statusfound return res.status !== PayloadMessageTypes.statusfound
} }
return Axios.get(VALIDATE_USER_URL + process.env.APP_ID + '/' + userName) return Axios.get(VALIDATE_USER_URL + process.env.APP_ID + '/' + tools.rimuoviAtInizio(userName))
.then(onSuccess) .then(onSuccess)
.catch((err) => { .catch((err) => {
return true return true