| | import User from '../models/User.js'; |
| |
|
| | export const updateKarma = async (userId, change, reason) => { |
| | try { |
| | const user = await User.findById(userId); |
| | if (!user) return; |
| |
|
| | |
| | let newScore = user.karma + change; |
| | |
| | |
| | if (newScore > 100) newScore = 100; |
| | if (newScore < 0) newScore = 0; |
| |
|
| | user.karma = newScore; |
| |
|
| | |
| | if (newScore < 30) { |
| | user.flags.isBanned = true; |
| | console.log(`🚫 BANNED User ${userId} (Karma: ${newScore})`); |
| | } |
| |
|
| | |
| | |
| | console.log(`Karma Update [${userId}]: ${change} (${reason}) => ${newScore}`); |
| |
|
| | await user.save(); |
| | return user; |
| | } catch (err) { |
| | console.error("Karma Update Failed", err); |
| | } |
| | }; |
| |
|