Affichage d'un svg via downloadFile

Salut,

J’aimerai afficher un .svg se trouvant dans le répertoire data d’un plugin en utilisant downloadFile.php

dans la fonction toHtml() :

    $filename = $this->getId() . '.svg';
    $dir = '/var/www/html/plugins/monplugin/data';
    $replace['#url#'] = 'core/php/downloadFile.php?pathfile=' . urlencode($dir . '/' . $filename);

Dans le fichier .html du template :
<img class="img-responsive cursor displayImage" src=#url# style="max-width:90%;" />

J’ai placé un .htaccess dans le répertoire data de monplugin afin que le téléchargement du .svg ne soit pas possible dans passer par Jeedom (mais même sans, l’affichage ne se fait pas) :

Require all denied

image

Note : ça fonctionne comme il faut avec un .png du coup j’imagine que c’est pas comme ça qu’il faut appeler le .svg mais je ne trouve pas.

Note2 : Si je mets directement le chemin /plugins/monplugin/data/fichier.svg à la place de 'core/php/downloadFile.php?pathfile=' . urlencode($dir . '/' . $filename), ça ne fonctionne pas non plus.

Bonne soirée :slight_smile:

Est fait pour lancer un telechargement. Le retour ne donne pas de format pour aller la balise src

Il faudrait faire un curl ou equivalent sur ton download file, et utiliser le path du fichier téléchargé dans ton src

Hello,

Je me suis rendu compte que j’avais tapé une boulette et donc :

Si je mets directement le chemin /plugins/monplugin/data/fichier.svg à la place de ‹ core/php/downloadFile.php?pathfile= › . urlencode($dir . ‹ / › . $filename), ça ne fonctionne pas non plus.

Du coup je pense que ce que tu indiques reviens au même que de mettre directement le chemin du .svg ?