-
Notifications
You must be signed in to change notification settings - Fork 160
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
Ajoute des champs DCMI aux pages des contenus - Rends le site compatible avec Zotero #4392
Conversation
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.
Ça semble marcher sans problème de mon côté. Il y a quelques machins que j'améliorerais bien et des erreurs PEP-8 à corriger. :)
|
||
{% block DCMI_cards %} | ||
<link rel="schema.DC" href="http://purl.org/dc/elements/1.1/" /> | ||
<meta name="DC.publisher" lang="fr" content="{{app.site.name}}" /> |
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.
Plutôt {{ app.site.litteral_name }}
pour un rendu plus correct ("Zeste de Savoir" au lieu de "ZesteDeSavoir").
templates/base.html
Outdated
@@ -721,7 +725,7 @@ <h2 class="subtitle" {% if schema %}itemprop="description"{% endif %}>{{ headlin | |||
{% endif %} | |||
{% if app.site.social.googleplus %} | |||
<li><a href="{{app.site.social.googleplus}}" title="Retrouvez-nous sur Google+" class="btn ico-after google-plus light btn-google-plus btn-holder"></a></li> | |||
{% endif %} | |||
{% endif %} |
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'ai pas vraiment compris cette modification, mais j'ai une indentation incorrecte sur ta branche :
Actuellement :
{% if app.site.social.googleplus %}
<li><a href="{{app.site.social.googleplus}}" title="Retrouvez-nous sur Google+" class="btn ico-after google-plus light btn-google-plus btn-holder"></a></li>
{% endif %}
Correct :
{% if app.site.social.googleplus %}
<li><a href="{{app.site.social.googleplus}}" title="Retrouvez-nous sur Google+" class="btn ico-after google-plus light btn-google-plus btn-holder"></a></li>
{% endif %}
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.
Ah oui en effet, ça doit être une fausse manip', désolé.
zds/utils/templatetags/joinby.py
Outdated
|
||
|
||
@register.simple_tag | ||
def joinby(values, separator=", ", same_final_separator=False): |
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.
PEP-8 : il faudrait des guillemets simples.
zds/utils/templatetags/joinby.py
Outdated
by a comma. | ||
""" | ||
if not values: | ||
return "" |
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.
PEP-8 : il faudrait des guillemets simples.
zds/utils/templatetags/joinby.py
Outdated
if same_final_separator: | ||
final_sep = separator | ||
else: | ||
final_sep = unicode(_(" et ")) |
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.
PEP-8 : il faudrait des guillemets simples. Je n'ai pas vraiment compris pourquoi tu as utilisé unicode
.
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.
Pour le unicode
, c'est parce que j'avais une erreur étrange à la ligne d'après quand je concatenais final_sep
avec l'autre string.
Voilà ce que j'obtenais : TypeError: coercing to Unicode: need string or buffer, __proxy__ found
. Je n'ai pu résoudre ça qu'en rajoutant un unicode()
, j'ignores pourquoi.
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.
Dans ce cas, essaye de rajouter sous l'encodage la ligne from __future__ import unicode_literals
, je pense que ça devrait marcher. ;)
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.
Update : J'avais bêtement oublié de mettre à jour mon virtualenv avec les derniers paquets utilisés par ZdS. Je l'ai mis à jour et ça marche correctement sans nouvelle importation. :)
zds/utils/templatetags/joinby.py
Outdated
final_sep = separator | ||
else: | ||
final_sep = unicode(_(" et ")) | ||
return separator.join(map(str, values[:len(values)-1])) + ( |
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.
PEP-8 : il faut des espaces autour des opérateur mathématiques. ;)
zds/utils/templatetags/joinby.py
Outdated
if not values: | ||
return "" | ||
if len(values) == 1: | ||
return values[0].__str__() |
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.
- return values[0].__str__()
+ return str(values[0])
zds/utils/templatetags/joinby.py
Outdated
else: | ||
final_sep = unicode(_(" et ")) | ||
return separator.join(map(str, values[:len(values)-1])) + ( | ||
final_sep + values.last().__str__() |
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.
- values.last().__str__()
+ str(values.last())
<meta name="DC.type" content="text" /> | ||
<meta name="DC.title" content="{{ content.title }}" /> | ||
<meta name="DC.abstract" content="{{ content.type.title }} : {{ content.title }}{% if content.description %} - {{ content.description }}{% endif %}" /> | ||
<meta name="DC.subject" lang="fr" content="{% joinby content.subcategory.all %}{% if content.tags.all %} - {% joinby content.tags.all separator=' ; ' same_final_separator=True %}{% endif %}" /> |
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.
Pour ces deux lignes, j'utiliserais plutôt le tiret –
au lieu de -
. :)
Changements effectués, désolé pour le délai. :) Je suis passé par Github directement, d'où le triple commit. |
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.
Il y a juste un oubli qui a provoqué l'échec de Travis. Sinon, tout est OK.
Un rebase est requis par contre :
git fetch upstream
git rebase upstream/dev
zds/utils/templatetags/joinby.py
Outdated
if same_final_separator: | ||
final_sep = separator | ||
else: | ||
final_sep = _(" et ") |
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.
L'erreur de Travis vient d'ici, il faut des guillemets simples. :)
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.
Ah ? Il me semblait que c'était pythonique de mettre des guillemets doubles pour des mots. Je refais un commit.
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.
@rezemika : en fait, on met en règle générale des guillemets simples. On met des guillemets doubles quand il y a une apostrophe dans la chaîne (pour éviter d'avoir à utiliser un antislash). ;)
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.
Ah ok. De mon côté j'ai toujous mis des guillemets doubles pour les mots ou les phrases (genre "Hello world !") et des simples pour le reste (les séparateurs pour les split, ce genre de choses). My bad.
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.
Ce n'est pas vraiment un problème, ça. La règle que j'ai citée est celle qui a été choisie pour ce dépôt, mais PEP-8 est beaucoup plus permissif (d'où le fait qu'une règle ait été décidée afin de garder une certaine cohérence dans l'utilisation des guillemets).
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.
Ah je vois. Merci de cette précision. :)
Ah, y'a un test à réparer, ici. |
{% block DCMI_cards %} | ||
<link rel="schema.DC" href="http://purl.org/dc/elements/1.1/" /> | ||
<meta name="DC.publisher" lang="fr" content="{{ app.site.litteral_name }}" /> | ||
<meta name="DC.creator" content="{% joinby content.authors.all %}" /> |
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.
La gestion des auteurs est un peu particulière : pour que ça fonctionne, ça devrait probablement être joinby content|displayable_authors:True
. Ça provient du fait que les auteurs peuvent varier en fonction des mises à jour d'un tuto.
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.
@@ -0,0 +1,28 @@ | |||
# coding: utf-8 |
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.
Si tu ajoute un templatetag, il faut le documenter ici ;)
…ble avec Zotero (#4392) * Ajoute des champs DCMI aux pages des contenus (#4261) * Corrige le commit précédent pour les champs DCMI (#4392) * Corrige le commit précédent pour les champs DCMI (#4392) * Corrige le commit précédent pour les champs DCMI (#4392) * Remplace les guillemets simples par des guillemets doubles * Ajoute la documentation du tag 'joinby' * N'affiche que les auteurs de la version courante * Corrige une variable dans le template
QA
Voici le formatage que j'ai utilisé pour les champs DCMI, à modifier au besoin. La liste des auteurs est de type "Auteur 1, Auteur 2 et Auteur 3". Celle des tags est de type "Tag 1 ; Tag 2 ; Tag 3".
PS : J'ai eu quelques soucis lors du merge. J'espère que ça ne posera pas de problème ici.