J’ai un administrateur de site qui essaie de mettre à jour le logo sur son site, mais il reçoit l’erreur « Désolé, aucun fichier n’est autorisé à être téléchargé ». D’après ma lecture du code, il semble que cela ne devrait être signalé que si authorizesOneOrMoreExtensions renvoie false, et que cette fonction devrait renvoyer true si l’utilisateur est un membre du personnel et que authorized_extensions_for_staff contient *, et sur ce site :
discourse(prod)> SiteSetting.authorized_extensions
=> ""
discourse(prod)> SiteSetting.authorized_extensions_for_staff
=> "*"
Sur la base de cela, je suis quelque peu perplexe quant à la façon dont ils pourraient voir cette erreur, et je suppose que je comprends mal le fonctionnement du code. Des indications sur ce que je fais de mal, ou d’autres pistes d’investigation, seraient grandement appréciées.
Je suis relativement confiant que l’utilisateur que je soutiens est bien connecté en tant qu’administrateur, car la capture d’écran qu’il m’a partagée (désolé, je ne peux pas la publier publiquement pour des raisons de confidentialité) est de la page « Admin > Logo du site », avec la boîte de dialogue d’erreur affichant l’erreur ci-dessus superposée. S’il existe une explication plausible sur la façon/pourquoi un non-membre du personnel pourrait se retrouver sur cet écran, je serais prêt à essayer de modifier temporairement le paramètre des extensions de fichiers utilisateur, mais les propriétaires du site sont assez catégoriques sur le fait de ne pas laisser les utilisateurs ordinaires télécharger des médias, ce n’est donc pas quelque chose à entreprendre à la légère.