Projet

Général

Profil

Development #45466

Indiquer à postériori la taille des exports incluant les ressources (assets) sur l'IHM d'export du site.

Ajouté par Nicolas Roche il y a plus de 3 ans. Mis à jour il y a plus de 3 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
26 juillet 2020
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

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

Lié à Combo - Development #45128: Importer des ressources (assets) via l'IHM d'import de site/pagesFermé15 juillet 2020

Actions
Lié à Combo - Bug #52410: On n'indique plus la taille des exports incluant les ressources (assets) sur l'IHM d'export du site.Fermé26 mars 2021

Actions

Révisions associées

Révision d62592c7 (diff)
Ajouté par Nicolas Roche il y a plus de 3 ans

manager: load (ajax) assets size on export site popup (#45466)

Révision d66fb506 (diff)
Ajouté par Nicolas Roche il y a environ 3 ans

manager: correct asset file size display on export site popup (#45466)

Historique

#1

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é
#2

Mis à jour par Nicolas Roche 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).

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

#3

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.

#4

Mis à jour par Nicolas Roche il y a plus de 3 ans

Merci pour l'aide.

#6

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.

#8

Mis à jour par Frédéric Péters il y a plus de 3 ans

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)

#9

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)

#10

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
#11

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é

Formats disponibles : Atom PDF