Initial commit: teaching institution management API.

Express/MongoDB backend with JWT auth, RBAC, S3 uploads, notifications, and scheduled jobs.
This commit is contained in:
2026-08-09 04:18:08 +02:00
commit f04c797be6
107 changed files with 9190 additions and 0 deletions
@@ -0,0 +1,47 @@
// /components/certificates/certificateModel.js
const mongoose = require('mongoose');
const certificateSchema = new mongoose.Schema({
user: {
type: mongoose.Schema.Types.ObjectId,
ref: 'User',
required: true,
index: true
},
course: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Course',
index: true
},
title: {
type: String,
required: true,
trim: true
},
issuer: {
type: String,
trim: true
},
fileKey: {
type: String,
required: true,
trim: true
},
originalName: {
type: String,
trim: true
},
issuedAt: {
type: Date,
default: Date.now
},
isOfficial: {
type: Boolean,
default: false
}
}, {
timestamps: true
});
module.exports = mongoose.model('Certificate', certificateSchema);