Enhance UI and functionality: Update main page layout, add contribution options in join form, and improve member dashboard display. Refactor API endpoints for member creation and login.
This commit is contained in:
parent
3ad127ed78
commit
6e7e27ac4e
8 changed files with 885 additions and 44 deletions
|
|
@ -1,25 +1,17 @@
|
|||
// server/api/members/create.post.js
|
||||
import Member from '../../models/member'
|
||||
|
||||
// server/models/member.js
|
||||
import mongoose from 'mongoose'
|
||||
|
||||
const memberSchema = new mongoose.Schema({
|
||||
email: { type: String, required: true, unique: true },
|
||||
name: { type: String, required: true },
|
||||
circle: {
|
||||
type: String,
|
||||
enum: ['community', 'founder', 'practitioner'],
|
||||
required: true
|
||||
},
|
||||
contributionTier: {
|
||||
type: String,
|
||||
enum: ['0', '5', '15', '30', '50'],
|
||||
required: true
|
||||
},
|
||||
helcimCustomerId: String,
|
||||
helcimSubscriptionId: String,
|
||||
slackInvited: { type: Boolean, default: false },
|
||||
createdAt: { type: Date, default: Date.now },
|
||||
lastLogin: Date
|
||||
})
|
||||
|
||||
export default mongoose.model('Member', memberSchema)
|
||||
export default defineEventHandler(async (event) => {
|
||||
const body = await readBody(event)
|
||||
|
||||
try {
|
||||
const member = new Member(body)
|
||||
await member.save()
|
||||
return { success: true, member }
|
||||
} catch (error) {
|
||||
throw createError({
|
||||
statusCode: 400,
|
||||
statusMessage: error.message
|
||||
})
|
||||
}
|
||||
})
|
||||
Loading…
Add table
Add a link
Reference in a new issue