- added Aportador Solidario to registration

- added email_paypal and username_telegram
This commit is contained in:
Paolo Arena
2019-12-29 01:54:00 +01:00
parent 8beb8162dd
commit cf91d45427
23 changed files with 471 additions and 292 deletions

View File

@@ -800,6 +800,12 @@ namespace Actions {
GlobalStore.state.mypage = (res.data.mypage) ? [...res.data.mypage] : []
}
if (res.data.myuser) {
UserStore.mutations.authUser(res.data.myuser)
UserStore.mutations.updateLocalStorage(res.data.myuser)
}
CalendarStore.state.editable = UserStore.state.isAdmin || UserStore.state.isManager
})

View File

@@ -1,5 +1,5 @@
import Api from '@api'
import { ISignupOptions, ISigninOptions, IUserState, IUserFields } from 'model'
import { ISignupOptions, ISigninOptions, IUserState, IUserFields, IUserProfile } from 'model'
import { ILinkReg, IResult, IIdToken, IToken } from 'model/other'
import { storeBuilder } from './Store/Store'
import router from '@router'
@@ -34,6 +34,15 @@ const DefaultUser: IUserFields = {
}
}
const DefaultProfile: IUserProfile = {
img: '',
cell: '',
dateofbirth: new Date(),
sex: 0,
email_paypal: '',
username_telegram: ''
}
// State
const state: IUserState = {
my: DefaultUser,
@@ -203,6 +212,9 @@ namespace Getters {
namespace Mutations {
function authUser(mystate: IUserState, data: IUserFields) {
mystate.my = { ...data }
if (!mystate.my.profile) {
mystate.my.profile = DefaultProfile
}
mystate.isAdmin = tools.isBitActive(mystate.my.perm, shared_consts.Permissions.Admin.value)
mystate.isManager = tools.isBitActive(mystate.my.perm, shared_consts.Permissions.Manager.value)
@@ -231,6 +243,29 @@ namespace Mutations {
mystate.my.password = newstr
}
function updateLocalStorage(mystate: IUserState, myuser: IUserFields) {
const now = tools.getDateNow()
// const expirationDate = new Date(now.getTime() + myres.data.expiresIn * 1000);
const expirationDate = new Date(now.getTime() * 1000)
localStorage.setItem(tools.localStorage.lang, state.lang)
localStorage.setItem(tools.localStorage.userId, myuser._id)
localStorage.setItem(tools.localStorage.username, myuser.username)
localStorage.setItem(tools.localStorage.name, myuser.name)
localStorage.setItem(tools.localStorage.surname, myuser.surname)
localStorage.setItem(tools.localStorage.perm, String(myuser.perm) || '')
if (myuser.profile !== undefined)
localStorage.setItem(tools.localStorage.img, (!!myuser.profile.img) ? String(myuser.profile.img) || '' : '')
else
localStorage.setItem(tools.localStorage.img, '')
localStorage.setItem(tools.localStorage.token, state.x_auth_token)
localStorage.setItem(tools.localStorage.expirationDate, expirationDate.toString())
localStorage.setItem(tools.localStorage.isLogged, String(true))
localStorage.setItem(tools.localStorage.verified_email, String(myuser.verified_email))
localStorage.setItem(tools.localStorage.wasAlreadySubOnDb, String(GlobalStore.state.wasAlreadySubOnDb))
}
function setusersList(mystate: IUserState, usersList: IUserFields[]) {
// console.log('setusersList', usersList)
mystate.usersList = [...usersList]
@@ -325,6 +360,7 @@ namespace Mutations {
}
export const mutations = {
updateLocalStorage: b.commit(updateLocalStorage),
authUser: b.commit(authUser),
setpassword: b.commit(setpassword),
setemail: b.commit(setemail),
@@ -609,24 +645,7 @@ namespace Actions {
Mutations.mutations.authUser(myuser)
const now = tools.getDateNow()
// const expirationDate = new Date(now.getTime() + myres.data.expiresIn * 1000);
const expirationDate = new Date(now.getTime() * 1000)
localStorage.setItem(tools.localStorage.lang, state.lang)
localStorage.setItem(tools.localStorage.userId, myuser._id)
localStorage.setItem(tools.localStorage.username, myuser.username)
localStorage.setItem(tools.localStorage.name, myuser.name)
localStorage.setItem(tools.localStorage.surname, myuser.surname)
localStorage.setItem(tools.localStorage.perm, String(myuser.perm) || '')
if (myuser.profile !== undefined)
localStorage.setItem(tools.localStorage.img, (!!myuser.profile.img) ? String(myuser.profile.img) || '' : '')
else
localStorage.setItem(tools.localStorage.img, '')
localStorage.setItem(tools.localStorage.token, state.x_auth_token)
localStorage.setItem(tools.localStorage.expirationDate, expirationDate.toString())
localStorage.setItem(tools.localStorage.isLogged, String(true))
localStorage.setItem(tools.localStorage.verified_email, String(myuser.verified_email))
localStorage.setItem(tools.localStorage.wasAlreadySubOnDb, String(GlobalStore.state.wasAlreadySubOnDb))
Mutations.mutations.updateLocalStorage(myuser)
}
}
@@ -739,6 +758,7 @@ namespace Actions {
const token = localStorage.getItem(tools.localStorage.token)
if (token) {
const expirationDateStr = localStorage.getItem(tools.localStorage.expirationDate)
const expirationDate = new Date(String(expirationDateStr))
const now = tools.getDateNow()
@@ -753,7 +773,7 @@ namespace Actions {
GlobalStore.state.wasAlreadySubOnDb = localStorage.getItem(tools.localStorage.wasAlreadySubOnDb) === 'true'
console.log('************* autologin _id', _id)
// console.log('************* autologin _id', _id)
UserStore.mutations.setAuth(token)

View File

@@ -378,7 +378,9 @@ export const fieldsTable = {
AddCol({ name: 'name', label_trans: 'reg.name' }),
AddCol({ name: 'surname', label_trans: 'reg.surname' }),
AddCol({ name: 'email', label_trans: 'reg.email' }),
AddCol({ name: 'cell', label_trans: 'reg.cell' }),
AddCol({ name: 'profile.cell', field: 'profile', subfield: 'cell', label_trans: 'reg.cell' }),
AddCol({ name: 'profile.email_paypal', field: 'profile', subfield: 'email_paypal', label_trans: 'reg.email_paypal' }),
AddCol({ name: 'profile.username_telegram', field: 'profile', subfield: 'username_telegram', label_trans: 'reg.username_telegram' }),
AddCol({ name: 'profile.img', field: 'profile', subfield: 'img', label_trans: 'reg.img', sortable: false }),
AddCol({ name: 'date_reg', label_trans: 'reg.date_reg', fieldtype: tools.FieldType.date }),
// AddCol({ name: 'idapp', label_trans: 'reg.idapp', fieldtype: tools.FieldType.string }),

View File

@@ -47,6 +47,8 @@ export interface INotify {
export const tools = {
CAN_EDIT: 'q-ce',
APORTADOR_SOLIDARIO: 'apsol',
listBestColor: [
'blue',
'green',
@@ -141,6 +143,7 @@ export const tools = {
multiselect: 256,
password: 512,
listimages: 1024,
image: 2048,
},
FieldTypeArr: [
@@ -2123,6 +2126,7 @@ export const tools = {
,
heightgallery(coeff) {
// console.log('heightgallery')
return tools.heightGallVal(coeff).toString() + 'px'
}
,
@@ -2694,6 +2698,7 @@ export const tools = {
},
getheightbywidth(mythis, mywidth, myheight, maxwidth) {
console.log('getheightbywidth')
const myw = this.getwidthscale(mythis, mywidth, maxwidth)
return myw * (myheight / mywidth)
},
@@ -2811,10 +2816,16 @@ export const tools = {
else
return ''
},
getsuffisso() {
if (tools.isTest())
return 'TEST: '
else
return ''
},
metafunc(mythis) {
return {
title: mythis.$t('msg.myAppName'),
titleTemplate: (title) => `${mythis.mymeta.title} - ${mythis.$t('msg.myAppName')}`,
titleTemplate: (title) => `${tools.getsuffisso()} ${mythis.mymeta.title} - ${mythis.$t('msg.myAppName')}`,
meta: {
keywords: {
name: 'keywords',
@@ -2836,6 +2847,10 @@ export const tools = {
return process.env.DEV
},
isTest() {
return process.env.ISTEST === '1'
},
geturlupload() {
return process.env.MONGODB_HOST + '/upload'
},