mirror of
https://github.com/R0m1k3/noteflow.git
synced 2026-10-11 17:29:37 +02:00
Fix: Chargement automatique des modèles OpenRouter dans le chatbox
Corrections pour permettre le chargement automatique des modèles IA: - Retrait de la restriction admin sur la route GET /api/openrouter/models - Retrait de la condition is_admin dans loadOpenRouterModels() - Ajout d'un useEffect pour charger les modèles à l'ouverture du chatbox - Ajout d'un indicateur "Chargement des modèles..." dans le sélecteur - Désactivation du sélecteur pendant le chargement Les modèles se chargent maintenant automatiquement quand l'utilisateur ouvre le chatbox, et tous les utilisateurs authentifiés peuvent y accéder (pas seulement les admins).
This commit is contained in:
2 files changed
+13
-4
No files matched your search
@@ -14,7 +14,7 @@ const CACHE_DURATION = 60 * 60 * 1000; // 1 heure
|
||||
* GET /api/openrouter/models
|
||||
* Récupérer la liste des modèles disponibles depuis OpenRouter
|
||||
*/
|
||||
router.get('/models', authenticateToken, requireAdmin, async (req, res) => {
|
||||
router.get('/models', authenticateToken, async (req, res) => {
|
||||
try {
|
||||
// Vérifier le cache
|
||||
const now = Date.now();
|
||||
|
||||
+12
-3
@@ -223,7 +223,7 @@ const Index = () => {
|
||||
};
|
||||
|
||||
const loadOpenRouterModels = async () => {
|
||||
if (user?.is_admin && settings.openrouter_api_key) {
|
||||
if (settings.openrouter_api_key) {
|
||||
setLoadingModels(true);
|
||||
try {
|
||||
const models = await OpenRouterService.getModels();
|
||||
@@ -528,6 +528,13 @@ const Index = () => {
|
||||
chatEndRef.current?.scrollIntoView({ behavior: 'smooth' });
|
||||
}, [chatMessages]);
|
||||
|
||||
// Load models when chatbox opens
|
||||
useEffect(() => {
|
||||
if (chatOpen && openRouterModels.length === 0) {
|
||||
loadOpenRouterModels();
|
||||
}
|
||||
}, [chatOpen]);
|
||||
|
||||
// Set default model when models are loaded
|
||||
useEffect(() => {
|
||||
if (openRouterModels.length > 0 && !selectedModel) {
|
||||
@@ -2329,9 +2336,11 @@ const Index = () => {
|
||||
value={selectedModel}
|
||||
onChange={(e) => setSelectedModel(e.target.value)}
|
||||
className="w-full text-xs px-2 py-1.5 border border-input rounded-md bg-background"
|
||||
disabled={chatLoading}
|
||||
disabled={chatLoading || loadingModels}
|
||||
>
|
||||
{openRouterModels.length === 0 ? (
|
||||
{loadingModels ? (
|
||||
<option value="">Chargement des modèles...</option>
|
||||
) : openRouterModels.length === 0 ? (
|
||||
<option value="">Aucun modèle disponible</option>
|
||||
) : (
|
||||
openRouterModels.map(model => (
|
||||
|
||||
Reference in new issue
Block a user