How to allow downloading images along with other user data (csv) from activity section?

We (few volunteers from the Krita community) have setup a discourse server for the Krita artist community. The setup is very much similar to Blenderartists.org.

Being a forum related to art software the discussions will have a lot of images. From the GDPR perspective discourse provides a way to download the user data from the activities section in profile. However I noticed that the download doesn’t include the images that user has posted to the forum. I would like to ask if there is any way to include the images posted by the users in the downloaded zip files. Is there any plugin to provide such feature?

Thank you.

8 « J'aime »

It’s not currently available in core nor in any plugins I know of unfortunately.

3 « J'aime »

We should arguably include any images the user uploaded in the data download.

2 « J'aime »

Technically they still have the URLs so they could just parse and pull them. I worry about image heavy users ending up costing lots and lots of server time when they click the button.

2 « J'aime »

Sorry if this seems a silly idea, will a predetermined time frame given to user to come back for the zip file help. During this period the zip creation can be done when there is less server activity.

I am uneasy allowing a random end user with lots of activity the ability to trigger downloading half a gig of data from s3 for re-packaging.

Much prefer to provide them with a link to a script they can run against the export to download images.

2 « J'aime »

I’m not an expert, but I believe that from a GDPR perspective this is not an acceptable solution. @RGJ do you know?

1 « J'aime »

closing this for 6 days so our lawyer has a chance to read this before this gets derailed into a GDPR drama.

you still have the ability to run the script as an admin for the user and email them images if you want.

3 « J'aime »

This topic was automatically opened after 5 days.

Any update on this? Either a script/tool to use or core fix?

I know how to manually do it, but I’m more sophisticated than others.

Just to expand on that,

![Screenshot_20200422-132435|281x500](upload://dYJTG1LPTCy8fp52SrPh7a1p89j.png)

came out of a user-archive.csv generated today. That’s not a very user-friendly link.

6 « J'aime »

I did a post export for the first time since May yesterday and see that it has been given some love, but a strange (to me) choice:

But no images in there and I still see fragments (tested with meta) with very hard to use URLs like: ![screen-20200627-125657|385x397](upload://nsHMu7zGRvQ1Y9WuIPrrygpWbC6.png) (note that’s an image I uploaded after the May update).

1 « J'aime »

Putting images in the archive would be a PITA. What we could easily include is the cooked post alongside the raw so images and everything else that is transformed is associated in a standard way that can easily be parsed.

3 « J'aime »

How does that work with the pre-signed URLs option recently introduced? I confess I don’t know much about how that’s implemented, but my fear is that the URLs would not be stable.

(By which I mean: Secure Media Uploads )

If we put the cooked post in like @Falco suggests then the URLs will be /secure-media-uploads/blah. The presigned URL is only generated when the upload is requested from the secure media URL, so you should have no problems.

5 « J'aime »

Quel est l’état de cette demande de fonctionnalité (si c’est bien le cas) ?

Décomposons cela en plusieurs questions plus petites :

  1. Existe-t-il actuellement un moyen pour un utilisateur d’obtenir une copie de toutes les images incluses dans ses publications ?
  2. Existe-t-il un moyen d’obtenir (ou de recréer) ces publications dans leur format “cuit”, au moins dans la mesure où les images téléchargées sont à l’endroit où elles sont censées être ?

Bien que je ne sois pas sûr de pouvoir écrire un script complet, j’ai essayé de comprendre comment reconstruire l’URL des images en me basant sur les informations actuellement incluses dans le fichier user_archive.csv, mais je ne vois pas comment cela serait possible, étant donné qu’il semble n’y avoir aucune corrélation entre le lien de l’image fourni dans le fichier csv et l’URL publique de cette image sur le forum.

Par exemple, j’ai ![image|499x436](upload://tIh81VxrDGPzUkxhikPmbgFGbO6.png) dans mon fichier csv et l’URL de cette image sur le forum est https://forum.example.com/uploads/default/original/2X/d/d04053334ed6a40db3cdcf83c1c6eb139079494e.png, donc même si le script utilisait tIh81VxrDGPzUkxhikPmbgFGbO6.png en combinaison avec une URL de base, il ne pourrait pas récupérer l’image, n’est-ce pas ? Ou une image a-t-elle une sorte d’identité multiple ?

Merci d’avoir fait remonter ce sujet ! Je ne l’avais pas vu auparavant. :smiley:

En l’examinant, je partage à la fois la conviction apparente de @codinghorror que les images devraient être accessibles de cette manière, et la préoccupation de @sam concernant les exigences que cela imposerait aux ressources côté serveur - en particulier dans les cas où l’utilisateur ne s’intéresse pas aux images en soi.

Je ne peux pas me prononcer sur la faisabilité, mais d’un point de vue strictement UX, j’ai l’impression qu’un bouton séparé télécharger les images présenté à côté de l’option de téléchargement existante, ou une fenêtre contextuelle demandant si vous souhaitez inclure les images lors de l’utilisation de l’option de téléchargement existante serait le mieux.

1 « J'aime »

Pas pour le moment, vous devriez aller sur le forum. Je soutiens le changement de @Falco comme une amélioration rapide et provisoire de la situation.

3 « J'aime »

Vous voulez dire que vous devriez obtenir les images en naviguant vers les publications réelles ? Mais cela ne vous donnerait pas les images des publications qui ont été supprimées ou qui vous sont cachées, n’est-ce pas ?

Concernant le

Lorsque @sam et @Falco se mettent d’accord sur quelque chose, cela signifie-t-il que cela a été ajouté à un pipeline ?

1 « J'aime »

Parfois oui… parfois non. Ceci n’a pas encore été planifié.

Je vais donner la priorité à l’ajout de « cooked » à l’exportation, c’est un changement facile, cela devrait se produire dans le mois prochain.

1 « J'aime »