merge pull request
authorymh <ymh.work@gmail.com>
Mon, 02 Dec 2013 17:44:50 +0100
changeset 156 894a01c6a2b2
parent 155 7e8034bec089
child 157 f57f7f7f973a
merge pull request
doc/description_interface.rst
src/p4l/locale/fr/LC_MESSAGES/django.po
src/p4l/settings.py
src/p4l/templates/p4l/record_view.html
--- a/doc/description_interface.rst	Tue Nov 26 23:54:13 2013 +0100
+++ b/doc/description_interface.rst	Mon Dec 02 17:44:50 2013 +0100
@@ -25,10 +25,9 @@
     :width: 600pt
 
 Cet écram donne la liste des notices et permet la recherche.
-La recherche se fait sur l'identifiant d'une notice, le(s) titre(s) d'une notice et les autheurs (personnes ou institutions).
+La recherche se fait sur l'identifiant d'une notice, le(s) titre(s) d'une notice et les auteurs (personnes ou institutions).
 
-Sans recherche, les notices sont affichées dans l'ordre de leur identifiant (tri lexicographique ascendant).
-Par contre lorsque'une recherche à été lancée, les notices sont affichées dans l'ordre retourné par le moteur d'indexation.
+Les notices sont affichées dans l'ordre de leur identifiant (tri lexicographique ascendant) lorsque qu'aucune recherche n'est faite. Elles sont triées par tri de pertinence lorsqu'une recherche a été effectuée.
 
 En haut de la liste un bouton permet l'ouverture du dialogue de création d'une nouvelle notice.
 Pour chaque notice de la liste 2 boutons sont proposés : vue de du détail de la liste ou bien édition. 
@@ -39,15 +38,50 @@
   
     * identifiant
     * titres (dans toutes les langues)
-    * années de publication
-    * autheurs (personnes et entités)
+    * auteurs (personnes et entités)
 
 Le champ de recherche permet l'utilisation d'un mini language de requête décrit à l'adresse suivante : http://pythonhosted.org/Whoosh/querylang.html
 Les points à noter à ce ce sujet sont :
   
+    * La recherche ne tient pas compte des accents
     * L'opérateur par défaut est le ``OR``.
     * la valeur du spécifieur ``field`` doit être dans la liste suivante : ``identifier``, ``titles``, ``years``, ``authors``.
 
+Opérateurs de recherche : AND, OR, NOT
+--------------------------------------
+
+    * Les opérateurs de recherche AND, OR et NOT doivent s'écrire en majuscules.
+    * ``032221`` cherche ``032221`` dans les titres et les auteurs et les identifiants.
+    * ``032221 021099`` trouvera les deux notices avec ces deux identifiants.
+    * ``language education`` cherche les mots ``language`` OU ``education`` dans les titres et les auteurs et les identifiants.
+    * ``language AND education`` cherche les mots ``language`` ET ``education`` dans les titres et les auteurs et les identifiants.
+    * ``language NOT education`` cherche le mot ``language`` SANS le mot ``education`` dans les titres et les auteurs et les identifiants.
+
+Guillemets
+----------
+
+    * On peut mettre entre guillemets deux ou plusieurs termes pour chercher exactement sur cette expression
+    * ``"school factors"`` cherche exactement l'expression "school factors" (et non pas "school OR factor", ni "school AND factor")
+
+Parenthèses
+-----------
+ 
+    * ``(language AND education) OR maternelle`` cherche les notices contenant soit les mots ``language`` ET ``education``, soit le mot ``maternelle``
+
+Troncature et joker ('*' et '?')
+--------------------------------
+
+    * le caractère ``*`` remplace n'importe quel nombre de lettres à la fin d'un terme. Le caractère ``?`` remplace un caractère et un seul, à la fin ou au milieu d'un terme de recherche.
+    * ``lang*`` cherche tous les mots qui commencent par "lang" (language, langage, langagier, etc.)
+    * ``l?ng`` trouvera à la fois "lang" et "long"
+
+Champs de recherche
+-------------------
+
+    * ``titles:education`` cherche ``education`` uniquement dans les titres
+    * ``authors:caillods`` cherche ``caillods`` uniquement dans les auteurs
+    * ``years:2005`` cherche toutes les notices dont l'année est 2005 (ne cherche pas 2005 dans le titre)
+    * ``education AND years:2005`` cherche ``education`` pour toutes les notices dont la date est 2005
 
 .. _interface-detail:
 
@@ -57,7 +91,7 @@
 .. image:: _static/p4l_detail.png
     :width: 600pt
 
-Cet écran donne accès à l'affichage du deetail d'une notice. Deux boutons permettent soit de passer à l'écran d'édition de la notice, soit de pouvoir l'éfacer.
+Cet écran donne accès à l'affichage du détail d'une notice. Deux boutons permettent soit de passer à l'écran d'édition de la notice, soit de pouvoir l'éfacer.
 Un dialogue de confirmation de l'effacement sera affiché préalablement à l'utilisateur.
 Par contre, tout effacement d'une notice est définitif.
 
@@ -79,6 +113,6 @@
 
 Tous les champs sont éditables, a part les champs "identifiant" et "URI" qui sont en lecture seule.
 
-Deux boutons sont disponibles pour accéder au deetail de la notice ou bien à son effacement. Dans ce dernier cas un dialogue de confirmation sera affiché anant l'effacement définitif de la notice.
+Deux boutons sont disponibles pour accéder au détail de la notice ou bien à son effacement. Dans ce dernier cas un dialogue de confirmation sera affiché anant l'effacement définitif de la notice.
 
-  
\ No newline at end of file
+  
--- a/src/p4l/locale/fr/LC_MESSAGES/django.po	Tue Nov 26 23:54:13 2013 +0100
+++ b/src/p4l/locale/fr/LC_MESSAGES/django.po	Mon Dec 02 17:44:50 2013 +0100
@@ -86,12 +86,12 @@
 
 #: templates/p4l/base.html:36
 msgid "logout"
-msgstr "déconnection"
+msgstr "déconnexion"
 
 #: templates/p4l/base.html:38 templates/registration/login.html:4
 #: templates/registration/login.html:27
 msgid "login"
-msgstr "connection"
+msgstr "connexion"
 
 #: templates/p4l/home.html:6 templates/p4l/home.html.py:15
 msgid "Record List"
--- a/src/p4l/settings.py	Tue Nov 26 23:54:13 2013 +0100
+++ b/src/p4l/settings.py	Mon Dec 02 17:44:50 2013 +0100
@@ -338,7 +338,7 @@
                     "FILTER (lang(?label) = {lang}). " 
                     "FILTER NOT EXISTS {{ [skos:member ?uri] }}. "
                 "}} "
-                "ORDER BY ?label"
+                "ORDER BY str(?label)"
             ),
             "childs" : (
                 "PREFIX skos:<http://www.w3.org/2004/02/skos/core#> "
@@ -354,7 +354,7 @@
                   "?uri skos:prefLabel|rdfs:label ?label. "
                   "FILTER (lang(?label) = {lang}). "
                 "}} "
-                "ORDER BY ?label"
+                "ORDER BY str(?label)"
             ),
             "child-count" : (
                 "PREFIX skos:<http://www.w3.org/2004/02/skos/core#> "
@@ -403,7 +403,7 @@
                     "FILTER (lang(?label) = {lang}). " 
                     "FILTER NOT EXISTS {{ [skos:member ?uri] }} "
                 "}} "
-                "ORDER BY ?label"
+                "ORDER BY str(?label)"
             ),
             'childs' : (
                 "PREFIX skos:<http://www.w3.org/2004/02/skos/core#> "
@@ -419,7 +419,7 @@
                   "?uri skos:prefLabel|rdfs:label ?label. "
                   "FILTER (lang(?label) = {lang}). "
                 "}} "
-                "ORDER BY ?label "
+                "ORDER BY str(?label)"
             ),
             'child-count' : (
                 "PREFIX skos:<http://www.w3.org/2004/02/skos/core#> "
@@ -467,7 +467,7 @@
                     "FILTER (lang(?label) = {lang}). " 
                     "FILTER NOT EXISTS {{ [skos:narrower ?uri] }} "
                 "}} "
-                "ORDER BY ?label "
+                "ORDER BY str(?label)"
             ),
             'childs' : (
                 "PREFIX skos:<http://www.w3.org/2004/02/skos/core#> "
@@ -483,7 +483,7 @@
                   "?uri skos:prefLabel|rdfs:label ?label. "
                   "FILTER (lang(?label) = {lang}). "
                 "}} "
-                "ORDER BY ?label"
+                "ORDER BY str(?label)"
             ),
             'child-count' : (
                 "PREFIX skos:<http://www.w3.org/2004/02/skos/core#> "
@@ -531,7 +531,7 @@
                     "FILTER (lang(?label) = {lang}).  "
                     "FILTER NOT EXISTS {{ [skos:narrower ?uri] }} "
                 "}} "
-                "ORDER BY ?label"
+                "ORDER BY str(?label)"
             )
         },
         'projects': {
@@ -546,7 +546,7 @@
                     "?uri a skos:Concept. "
                     "?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Projects> . "
                     "?uri skos:prefLabel ?label. "
-                    "?uri skos:prefLabel ?lab. "
+                    "?uri skos:prefLabel|skos:altLabel ?lab. "
                     "OPTIONAL {{ ?uri skos:altLabel ?acro }}. "
                     "FILTER regex (str(?lab), ?reg, 'i'). "
                     "BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place). "
@@ -566,7 +566,7 @@
                     "skos:prefLabel ?label . "
                     "OPTIONAL {{ ?uri skos:altLabel ?acro }} "
                 "}} "
-                "ORDER BY ?label"
+                "ORDER BY str(?label)"
             )
         },
         'organizations': {
@@ -581,7 +581,7 @@
                     "?uri a skos:Concept. "
                     "?uri skos:inScheme <http://www.iiep.unesco.org/plan4learning/scheme/Organizations> . "
                     "?uri skos:prefLabel ?label. "
-                    "?uri skos:prefLabel ?lab. "
+                    "?uri skos:prefLabel|skos:altLabel ?lab. "
                     "OPTIONAL {{ ?uri skos:altLabel ?acro }}. "
                     "FILTER regex (str(?lab), ?reg, 'i'). "
                     "BIND (STRLEN(STRBEFORE (str(?lab), ?reg)) AS ?place). "
@@ -601,7 +601,7 @@
                          "skos:prefLabel ?label . "
                     "OPTIONAL {{ ?uri skos:altLabel ?acro }} "
                 "}} "
-                "ORDER BY ?label"
+                "ORDER BY str(?label)"
             )
         },
         'types': {
@@ -638,7 +638,7 @@
                     "FILTER (lang(?label) = {lang}).  "
                     "FILTER NOT EXISTS {{ [skos:narrower ?uri] }} "
                 "}} "
-                "ORDER BY ?label "
+                "ORDER BY str(?label)"
             )
         },
         'audiences': {
--- a/src/p4l/templates/p4l/record_view.html	Tue Nov 26 23:54:13 2013 +0100
+++ b/src/p4l/templates/p4l/record_view.html	Mon Dec 02 17:44:50 2013 +0100
@@ -7,6 +7,12 @@
 {% block page_title %}{% trans 'Record' %} {{ record.identifier }} - {% trans 'View' %}{% endblock %}
 
 {% block content %}
+<div class="col-md-6">
+    <a class="btn btn-primary" id="record-back" href="javascript: window.history.back();" target="_self">
+        <span class="glyphicon glyphicon-arrow-left"></span>
+        <span>{% trans 'Cancel' %}</span>
+    </a>
+</div>
 <div class="row text-right">
     <a class="btn btn-default" href="{% url 'p4l_record_edit' slug=record.identifier %}?previous={{request.get_full_path|urlencode}}">{% trans 'Edit the record' %} <i class="glyphicon glyphicon-pencil"></i></a>
     <a class="btn btn-default" href="{% url 'p4l_record_delete' slug=record.identifier %}" onclick="return confirm('{% trans 'Are your sure you want to delete this record ? This action is irreversible.' %}')">{% trans 'Delete the record' %} <i class="glyphicon glyphicon-trash"></i></a>