Development #45466
Indiquer à postériori la taille des exports incluant les ressources (assets) sur l'IHM d'export du site.
0%
Description
On pourrait même imaginer y avoir en asynchrone ajax calcul de la taille du media/, pour que la popup se complète.
[x] Inclure les ressources dans l'export (150 Mo)
Fichiers
Demandes liées
Révisions associées
manager: correct asset file size display on export site popup (#45466)
Historique
Mis à jour par Nicolas Roche il y a plus de 3 ans
- Lié à Development #45128: Importer des ressources (assets) via l'IHM d'import de site/pages ajouté
Mis à jour par Nicolas Roche il y a plus de 3 ans
- Fichier 0001-manager-use-ajax-to-display-tar-format-site-export-s.patch 0001-manager-use-ajax-to-display-tar-format-site-export-s.patch ajouté
- Statut changé de Nouveau à En cours
- Patch proposed changé de Non à Oui
J'ai testé une solution, en interprétant le ticket : "en asynchrone ajax calcul de la taille" par le fait que la taille est envoyée au fur et à mesure, alors que ce n'était peut-être pas du tout ce qui était demandé (désolé par avance d'avoir pourri le ticket dès son début).
Je n'ai rien trouvé dans l'existant pour afficher la taille au fur et à mesure qu'elle est calculée.
Par exemple, j'ai l'impression que les jauges font une animation en fonction du nombre initial retourné.
https://dev.entrouvert.org/issues/8477
J'appelle une vue en javascript et y lit la taille qui y est renseignée plusieurs fois au fur et à mesure qu'elle est calculée dans la vue (boucle infinie) :
https://web.archive.org/web/20111016010552/http://ajaxpatterns.org/HTTP_Streaming#Streaming_Wiki_Demo
La réponse HTTP est envoyée par morceaux :
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_buffering
https://stackoverflow.com/questions/15471103/django-return-http-early-flush-chunked-response
response['X-Accel-Buffering'] = 'no'
Pour injecter le javascript dans la popup ("<a rel=popup">) j'ai du le placer le script à l'intérieur de la balise <form>.
https://dev.entrouvert.org/issues/5111
https://dev.entrouvert.org/issues/16658
Mis à jour par Frédéric Péters il y a plus de 3 ans
J'ai testé une solution, en interprétant le ticket : "en asynchrone ajax calcul de la taille" par le fait que la taille est envoyée au fur et à mesure, alors que ce n'était peut-être pas du tout ce qui était demandé (désolé par avance d'avoir pourri le ticket dès son début).
Non. (n'hésite pas à poser la question avant de te lancer dans des trucs, surtout quand tu te vois partir faire des trucs qui n'existent nulle part ailleurs)
Pour reprendre ce que j'écrivais dans #45128#note-6,
Il y aurait :
[x] Inclure les ressources dans l'export
et à un moment la popup se compléterait :
[x] Inclure les ressources dans l'export (150 Mo)
Et c'est tout; c'est-à-dire en pratique, il y aurait eu
[x] Inclure les ressources dans l'export <span id="whatever"></span>
et
... $("#whatever").load('/ajax/assets/export-size');
et cette vue qui
class AssetExportSize(TemplateView): template_name = '...' def get_context_data(self, **kwargs): ... context['size'] = computed_size return context
et le gabarit associé qui
({{size|filesizeformat}})
et fin.
Mis à jour par Nicolas Roche il y a plus de 3 ans
- Fichier 0001-manager-load-ajax-assets-size-on-export-site-popup-4.patch 0001-manager-load-ajax-assets-size-on-export-site-popup-4.patch ajouté
- Statut changé de En cours à Solution proposée
Merci pour l'aide.
Mis à jour par Nicolas Roche il y a plus de 3 ans
- Fichier 0001-manager-load-ajax-assets-size-on-export-site-popup-4.patch 0001-manager-load-ajax-assets-size-on-export-site-popup-4.patch ajouté
(rebasé)
Mis à jour par Frédéric Péters il y a plus de 3 ans
Il faudrait rester sur un FormView, c'est nécessaire pour faciliter les évolutions futures.
$("#assets-export-size-value").load("{% url 'combo-manager-assets-export-size' %}");
Plutôt que ça tu peux juste en JS faire l'ajout du span souhaité puis le chargement dedans de la taille.
Mis à jour par Nicolas Roche il y a plus de 3 ans
- Fichier 0001-manager-load-ajax-assets-size-on-export-site-popup-4.patch 0001-manager-load-ajax-assets-size-on-export-site-popup-4.patch ajouté
Oui, encore merci pour l'aide.
Mis à jour par Frédéric Péters il y a plus de 3 ans
- Fichier 0001-adjustments.patch 0001-adjustments.patch ajouté
- Statut changé de Solution proposée à Solution validée
J'ajouterais le patch joint parce que je trouve que ça va mieux derrière le libellé.
(validé donc, en intégrant ma proposition dans ton patch)
Mis à jour par Nicolas Roche il y a plus de 3 ans
- Statut changé de Solution validée à Résolu (à déployer)
(j'ai mergé ton patch dans le mien)
commit d62592c7451fe3415980d28f3c0499aa55b739ee Author: Nicolas ROCHE <nroche@entrouvert.com> Date: Mon Sep 21 11:28:52 2020 +0200 manager: load (ajax) assets size on export site popup (#45466)
Mis à jour par Frédéric Péters il y a plus de 3 ans
- Statut changé de Résolu (à déployer) à Solution déployée
Mis à jour par Nicolas Roche il y a environ 3 ans
- Lié à Bug #52410: On n'indique plus la taille des exports incluant les ressources (assets) sur l'IHM d'export du site. ajouté
manager: load (ajax) assets size on export site popup (#45466)