Files
ember-market-frontend/backend/utils/createAdmin.js
2025-03-10 17:39:37 +00:00

45 lines
1.1 KiB
JavaScript

import mongoose from "mongoose";
import bcrypt from "bcryptjs";
import dotenv from "dotenv";
import Staff from "../models/Staff.model.js";
dotenv.config();
mongoose
.connect(process.env.MONGO_URI, {
useNewUrlParser: true,
useUnifiedTopology: true,
})
.then(() => console.log("✅ MongoDB Connected"))
.catch((err) => console.error("❌ MongoDB Connection Error:", err));
const createAdmin = async () => {
const username = "admin";
const password = "88sO)£2igu-:";
try {
const existingAdmin = await Staff.findOne({ username });
if (existingAdmin) {
console.log("⚠️ Admin user already exists.");
process.exit(1);
}
const hashedPassword = await bcrypt.hash(password, 10);
const admin = new Staff({
username,
passwordHash: hashedPassword,
role: "admin",
});
await admin.save();
console.log(`✅ Admin user '${username}' created successfully!`);
process.exit();
} catch (error) {
console.error("❌ Error creating admin user:", error);
process.exit(1);
}
};
createAdmin();