user management
This commit is contained in:
@@ -53,7 +53,7 @@ export default function AddCredits() {
|
|||||||
const addCreditsToAllUsers = async () => {
|
const addCreditsToAllUsers = async () => {
|
||||||
if (
|
if (
|
||||||
!confirm(
|
!confirm(
|
||||||
"Êtes-vous sûr de vouloir ajouter 5 millions de crédits à TOUS les utilisateurs ? Cette action est irréversible."
|
"Êtes-vous sûr de vouloir ajouter 3 millions de crédits à TOUS les utilisateurs ? Cette action est irréversible."
|
||||||
)
|
)
|
||||||
) {
|
) {
|
||||||
return;
|
return;
|
||||||
@@ -90,7 +90,7 @@ export default function AddCredits() {
|
|||||||
Ajouter des Crédits
|
Ajouter des Crédits
|
||||||
</CardTitle>
|
</CardTitle>
|
||||||
<CardDescription>
|
<CardDescription>
|
||||||
Ajouter 5 millions de tokens à tous les utilisateurs existants
|
Ajouter 3 millions de tokens à tous les utilisateurs existants
|
||||||
</CardDescription>
|
</CardDescription>
|
||||||
</CardHeader>
|
</CardHeader>
|
||||||
<CardContent className="space-y-4">
|
<CardContent className="space-y-4">
|
||||||
|
|||||||
@@ -7,7 +7,6 @@ export function convertCreditsToEuros(credits: number): {
|
|||||||
eur: string;
|
eur: string;
|
||||||
};
|
};
|
||||||
} {
|
} {
|
||||||
// Votre règle : 5 millions de crédits = 5 USD
|
|
||||||
// Donc : 1 million de crédits = 1 USD
|
// Donc : 1 million de crédits = 1 USD
|
||||||
const usdAmount = credits / 1_000_000;
|
const usdAmount = credits / 1_000_000;
|
||||||
|
|
||||||
@@ -21,8 +20,8 @@ export function convertCreditsToEuros(credits: number): {
|
|||||||
eur: eurAmount,
|
eur: eurAmount,
|
||||||
formatted: {
|
formatted: {
|
||||||
usd: `$${usdAmount.toFixed(2)}`,
|
usd: `$${usdAmount.toFixed(2)}`,
|
||||||
eur: `€${eurAmount.toFixed(2)}`
|
eur: `€${eurAmount.toFixed(2)}`,
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -36,11 +35,15 @@ export function formatCreditsWithCurrency(credits: number): string {
|
|||||||
export async function getCurrentExchangeRate(): Promise<number> {
|
export async function getCurrentExchangeRate(): Promise<number> {
|
||||||
try {
|
try {
|
||||||
// Vous pouvez utiliser une API gratuite comme exchangerate-api.com
|
// Vous pouvez utiliser une API gratuite comme exchangerate-api.com
|
||||||
const response = await fetch('https://api.exchangerate-api.com/v4/latest/USD');
|
const response = await fetch(
|
||||||
|
"https://api.exchangerate-api.com/v4/latest/USD"
|
||||||
|
);
|
||||||
const data = await response.json();
|
const data = await response.json();
|
||||||
return data.rates.EUR || 0.92; // Fallback au taux fixe
|
return data.rates.EUR || 0.92; // Fallback au taux fixe
|
||||||
} catch {
|
} catch {
|
||||||
console.warn('Impossible de récupérer le taux de change, utilisation du taux fixe');
|
console.warn(
|
||||||
|
"Impossible de récupérer le taux de change, utilisation du taux fixe"
|
||||||
|
);
|
||||||
return 0.92; // Taux fixe de fallback
|
return 0.92; // Taux fixe de fallback
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user