-
Notifications
You must be signed in to change notification settings - Fork 161
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implémentation simplifiée du support de svg #5421
Conversation
3772b0e
to
a98eaba
Compare
a98eaba
to
400ab04
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Une première review rapide.
physical = serializers.FileField(write_only=True, required=False) | ||
|
||
class Meta: | ||
model = Image |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
je trouve ça déroutant de voir model = Image
ici alors que l'on est sur DrawingSerializer
|
||
|
||
{% block title %} | ||
{% trans "Éditer une image" %} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Éditer un dessin
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Je n'aime pas trop dessin, les svg ne sont pas forcement des dessins.
Image vectorielle ? Ou directement mettre "SVG" ça évite toute confusion et met en évidence que les SVG c'est ici.
|
||
{% block breadcrumb %} | ||
<li><a href="{{ gallery.get_absolute_url }}">{{ gallery.title }}</a></li> | ||
<li>{% trans "Éditer une image" %}</li> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Éditer une dessin
|
||
|
||
{% block headline %} | ||
{% trans "Éditer une image" %} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Éditer une dessin
{% block content %} | ||
<div class="gallery-col-image"> | ||
<p> | ||
{% trans "Image :" %} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Dessin
|
||
{% if perms.featured.change_featuredresource %} | ||
<p> | ||
{% trans "Lien pour utiliser cette image en une :" %} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lien pour utiliser ce dessin en une
{% endif %} | ||
|
||
<p> | ||
{% trans "Code markdown pour insérer cette image :" %} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code markdown pour insérer ce dessin
{% trans "Code markdown pour insérer cette image :" %} | ||
<br> | ||
|
||
{% trans "Taille normale : " %} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Est-ce qu'on a besoin de préciser ici taille normal, si on a une seule taille ? J'aurai juste parlé de "code markdown"
<form id="form-delete-image" name="form" method="post" action="{% url "gallery-drawing-delete" gallery.pk %}" class="modal modal-flex"> | ||
{% csrf_token %} | ||
<input type="hidden" name="image" value="{{ image.pk }}"> | ||
<p>{% trans "Attention, vous vous apprêtez à supprimer cette image." %}</p> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Attention, vous vous apprêtez à supprimer ce dessin.
Rapport de QAProbleme 1J'ai un svg dans ma gallerie, je clique dessus pour l'éditer, je choisi un svg, je clique sur mettre à jour, j'ai comme message d'erreur sur le champ : "Transférez une image valide. Le fichier que vous avez transféré n'est pas une image, ou il est corrompu." Probleme 2Lorsque je supprime le svg de la galérie, il est bien supprimé dans l'interface, mais le fichier existe toujours sur le serveur, contrairement à un fichier non-svg qui lui se supprime bien du serveur. Problème 3Le bouton pour rajouter un svg s'appelle "Ajouter un dessin" et pour les non svg c'est "Ajouter une image". C'est cool! Par contre, lorsqu'on clique sur "Ajouter un dessin", dans la barre de navigation on à des résidus de "Ajouter une image", "Éditer une image", "Sélectionnez votre image". Le mieux serait d'harmoniser tout le terme dessin, partout là ou on est au niveau du dessin. Problème 4Lorsque j'utilise le bouton "Importer une archive" dans lequel il y a du svg et du jpeg. L'import du jpeg se fait, mais j'ai un message visuel qui me dit que le svg n'a pas pu être importé. On ne peut donc pas importer d'archive contenant du svg. C'est dommage, parce que ça ne me parait pas compliqué a corriger. Review
Je n'ai pas encore testé la partie |
Ce n'était pas possible d'utiliser le même formulaire, pour rendre ça transparent à l'utilisateur ? On ne pouvait pas rajouter un |
Il y a une PR sur easythumbnails pour supporter SVG SmileyChris/easy-thumbnails#560 |
Reprise avec la nouvelle version de easy-thumbnail |
Résumer
Le but de cette PR est de supporter l'ajout d'image au format SVG pour les forums et les tuto.
J'ai tenté pendant un long moment d'adapter easy_thumbnails pour le SVG mais il y a des appels statics à PIL à peu près partout dans le code et y'a aucun intérêt à convertir des svg en png.
J'ai donc changé mon fusil d'épaule, plutôt que de forcer au talon une adaptation de la lib, j'ai créé un modèle "parallèle" à notre modèle d'image qui n'utilise pas de thumbnail. Du coup je peux manipuler les svg comme je veux. Cette méthode a généré beaucoup de duplication de codes mais avec l'aide de personnes qui s'y connaissent un peu genre @gustavi ça pourra devenir propre.
Etat des lieux
QA
step 1
step 2
step 3
step 4
step 5