Update files
This commit is contained in:
parent
f98ebc8e08
commit
56bdedacac
|
|
@ -180,20 +180,26 @@ const authenticate = async (req, res, next) => {
|
||||||
const normalizedStartParam = trimmedParam.toLowerCase();
|
const normalizedStartParam = trimmedParam.toLowerCase();
|
||||||
|
|
||||||
if (normalizedStartParam.startsWith('ref_')) {
|
if (normalizedStartParam.startsWith('ref_')) {
|
||||||
// referralCode в базе хранится с префиксом "ref_" в верхнем регистре
|
// Убираем все префиксы ref_/REF_ (может быть двойной префикс ref_REF_)
|
||||||
// Ищем регистронезависимо по полному коду
|
let codeToSearch = trimmedParam;
|
||||||
const escapedCode = trimmedParam.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
while (codeToSearch.toLowerCase().startsWith('ref_')) {
|
||||||
|
codeToSearch = codeToSearch.substring(4); // Убираем "ref_" или "REF_"
|
||||||
|
}
|
||||||
|
|
||||||
|
// referralCode в базе хранится с префиксом "REF_" (в верхнем регистре)
|
||||||
|
// Ищем по коду с префиксом REF_
|
||||||
|
const escapedCode = codeToSearch.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
||||||
const referrer = await User.findOne({
|
const referrer = await User.findOne({
|
||||||
referralCode: { $regex: new RegExp(`^${escapedCode}$`, 'i') }
|
referralCode: { $regex: new RegExp(`^REF_${escapedCode}$`, 'i') }
|
||||||
});
|
});
|
||||||
|
|
||||||
if (referrer) {
|
if (referrer) {
|
||||||
referredBy = referrer._id;
|
referredBy = referrer._id;
|
||||||
console.log(`🔗 Реферальная ссылка: пользователь ${normalizedUser.username || normalizedUser.id} зарегистрирован по ссылке от ${referrer.username} (${referrer._id}), код: ${trimmedParam}`);
|
console.log(`🔗 Реферальная ссылка: пользователь ${normalizedUser.username || normalizedUser.id} зарегистрирован по ссылке от ${referrer.username} (${referrer._id}), код: ${trimmedParam} -> REF_${codeToSearch}`);
|
||||||
} else {
|
} else {
|
||||||
// Дополнительная проверка: посмотрим все referralCode в базе для отладки
|
// Дополнительная проверка: посмотрим все referralCode в базе для отладки
|
||||||
const allCodes = await User.find({ referralCode: { $exists: true } }, { referralCode: 1, username: 1 }).limit(5);
|
const allCodes = await User.find({ referralCode: { $exists: true } }, { referralCode: 1, username: 1 }).limit(5);
|
||||||
console.warn(`⚠️ Реферальный код не найден: ${trimmedParam}`);
|
console.warn(`⚠️ Реферальный код не найден: ${trimmedParam} (искали: REF_${codeToSearch})`);
|
||||||
console.warn(` Примеры кодов в базе: ${allCodes.map(u => u.referralCode).join(', ')}`);
|
console.warn(` Примеры кодов в базе: ${allCodes.map(u => u.referralCode).join(', ')}`);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
|
|
@ -48,3 +48,4 @@ TagSchema.index({ usageCount: -1 });
|
||||||
|
|
||||||
module.exports = mongoose.model('Tag', TagSchema);
|
module.exports = mongoose.model('Tag', TagSchema);
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -61,3 +61,4 @@
|
||||||
0 0 30px rgba(255, 165, 0, 0.4);
|
0 0 30px rgba(255, 165, 0, 0.4);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -10,3 +10,4 @@ export function decodeHtmlEntities(str = '') {
|
||||||
return textarea.value;
|
return textarea.value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue