summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES.md10
-rw-r--r--archaeological_files/models.py4
-rw-r--r--archaeological_finds/models_treatments.py2
-rw-r--r--archaeological_operations/admin.py2
-rw-r--r--ishtar_common/admin.py2
-rw-r--r--ishtar_common/tests.py29
-rw-r--r--ishtar_common/views.py5
-rw-r--r--translations/fr/ishtar_common.po18
-rw-r--r--version.py2
9 files changed, 53 insertions, 21 deletions
diff --git a/CHANGES.md b/CHANGES.md
index b9f44172a..73754910d 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -1,6 +1,16 @@
Ishtar changelog
================
+0.99.9 (2017-02-03)
+-------------------
+
+### Features ###
+- Admin: add comment columns for general types
+
+### Bug fixes ###
+- get_item: deactivate hierarchic dependency when the parent item is a basket
+- Fix find-basket for own request
+
0.99.8 (2017-02-02)
-------------------
diff --git a/archaeological_files/models.py b/archaeological_files/models.py
index 15e65579c..c8134f28f 100644
--- a/archaeological_files/models.py
+++ b/archaeological_files/models.py
@@ -68,8 +68,8 @@ if settings.COUNTRY == 'fr':
delay = models.IntegerField(_(u"Delay (in days)"), default=30)
class Meta:
- verbose_name = u"Type Saisine"
- verbose_name_plural = u"Types Saisine"
+ verbose_name = u"Type de saisine"
+ verbose_name_plural = u"Types de saisine"
ordering = ('label',)
post_save.connect(post_save_cache, sender=SaisineType)
post_delete.connect(post_save_cache, sender=SaisineType)
diff --git a/archaeological_finds/models_treatments.py b/archaeological_finds/models_treatments.py
index e94d1c272..57ab530bf 100644
--- a/archaeological_finds/models_treatments.py
+++ b/archaeological_finds/models_treatments.py
@@ -177,7 +177,7 @@ class Treatment(BaseHistorizedItem, ImageModel, OwnPerms, ShortMenuItem):
if menu_filtr:
if 'treatmentfile' in menu_filtr:
replace_query = Q(file=menu_filtr['treatmentfile'])
- if 'find' in menu_filtr:
+ if 'find' in menu_filtr and 'basket' not in menu_filtr['find']:
q = Q(upstream=menu_filtr['find']) | Q(
downstream=menu_filtr['find'])
if replace_query:
diff --git a/archaeological_operations/admin.py b/archaeological_operations/admin.py
index b97df85eb..d8ce23662 100644
--- a/archaeological_operations/admin.py
+++ b/archaeological_operations/admin.py
@@ -96,7 +96,7 @@ admin.site.register(models.RecordRelations, RecordRelationsAdmin)
class RelationTypeAdmin(admin.ModelAdmin):
list_display = ('label', 'txt_idx', 'tiny_label', 'available',
- 'symmetrical', 'inverse_relation')
+ 'symmetrical', 'inverse_relation', 'comment')
admin.site.register(models.RelationType, RelationTypeAdmin)
diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py
index b3e0763b5..bee35256f 100644
--- a/ishtar_common/admin.py
+++ b/ishtar_common/admin.py
@@ -161,7 +161,7 @@ admin.site.register(models.GlobalVar, GlobalVarAdmin)
class GeneralTypeAdmin(admin.ModelAdmin):
- list_display = ['label', 'txt_idx', 'available']
+ list_display = ['label', 'txt_idx', 'available', 'comment']
actions = ['import_generic']
import_generic = gen_import_generic
diff --git a/ishtar_common/tests.py b/ishtar_common/tests.py
index 9e5fc3466..90fc3f0f5 100644
--- a/ishtar_common/tests.py
+++ b/ishtar_common/tests.py
@@ -626,15 +626,18 @@ class ShortMenuTest(TestCase):
self.assertEqual(response.status_code, 200)
self.assertFalse(str(tf.cached_label) in response.content)
- def testTreatment(self):
- c = Client()
- c.login(username=self.username, password=self.password)
+ def _create_treatment(self):
from archaeological_finds.models import Treatment
- treat = Treatment.objects.create(
+ return Treatment.objects.create(
label="My treatment",
year=2052
)
+ def testTreatment(self):
+ c = Client()
+ c.login(username=self.username, password=self.password)
+ treat = self._create_treatment()
+
# not available at first
response = c.get(reverse('shortcut-menu'))
self.assertEqual(response.status_code, 200)
@@ -684,6 +687,24 @@ class ShortMenuTest(TestCase):
self.assertFalse(c.session['find'])
self.assertFalse(c.session['contextrecord'])
+ self._create_treatment()
+
+ def test_basket_is_current_item(self):
+ c = Client()
+ c.login(username=self.username, password=self.password)
+ from archaeological_finds.models import FindBasket
+ basket = FindBasket.objects.create(
+ label="My basket",
+ user=self.user.ishtaruser
+ )
+ session = c.session
+ session['find'] = 'basket-{}'.format(basket.pk)
+ session.save()
+ response = c.get(reverse('shortcut-menu'))
+ self.assertEqual(response.status_code, 200)
+ response = c.get(reverse('get-findsource'))
+ self.assertEqual(response.status_code, 200)
+
class ImportTest(TestCase):
def testDeleteRelated(self):
diff --git a/ishtar_common/views.py b/ishtar_common/views.py
index 33f4fac7f..467401b8f 100644
--- a/ishtar_common/views.py
+++ b/ishtar_common/views.py
@@ -691,7 +691,7 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
reqs = Q(**{req_keys[0]: val})
for req_key in req_keys[1:]:
q = Q(**{req_key: val})
- reqs = reqs | q
+ reqs |= q
and_reqs.append(reqs)
if 'submited' not in request_items and full != 'shortcut':
# default search
@@ -707,7 +707,8 @@ def get_item(model, func_name, default_name, extra_request_keys=[],
elif dct == (base_request or {}):
# a parent item may be selected in the default menu
for name, key in my_relative_session_names:
- if name in request.session and request.session[name]:
+ if name in request.session and request.session[name] \
+ and 'basket-' not in request.session[name]:
dct.update({key: request.session[name]})
break
if (not dct or data_type == 'csv') \
diff --git a/translations/fr/ishtar_common.po b/translations/fr/ishtar_common.po
index 6661c51d6..a5cd454fd 100644
--- a/translations/fr/ishtar_common.po
+++ b/translations/fr/ishtar_common.po
@@ -11,8 +11,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Transfer-Encoding: 8bit\n"
"Content-Type: text/plain; charset=UTF-8\n"
-"PO-Revision-Date: 2017-02-02 10:16-0500\n"
-"Last-Translator: Valérie-Emma Leroux <emma@iggdrasil.net>\n"
+"PO-Revision-Date: 2017-02-03 04:25-0500\n"
+"Last-Translator: Étienne Loks <etienne.loks@iggdrasil.net>\n"
"Language-Team: \n"
"Language: fr\n"
"Plural-Forms: nplurals=2; plural=n>1;\n"
@@ -637,7 +637,7 @@ msgstr "Euro"
#: models.py:1089
msgid "US dollar"
-msgstr "Dollars US"
+msgstr "Dollar US"
#: models.py:1095 models.py:1760
msgid "Slug"
@@ -789,9 +789,9 @@ msgid ""
"incorrect formula, the application might be unusable and import of external "
"data can be destructive."
msgstr ""
-"Formule pour gérer l'ID externe du contenant. À modifier avec précaution. "
-"Avec une formule incorrecte, le logiciel pourrait devenir inutilisable et "
-"l'import de données externes pourrait être destructif."
+"Formule pour gérer les identifiants externes de contenant. À manipuler avec "
+"précaution. Une formule incorrecte peut rendre l'application inutilisable et "
+"l'import de données externes peut alors être destructif."
#: models.py:1173
msgid "Warehouse external id"
@@ -803,9 +803,9 @@ msgid ""
"incorrect formula, the application might be unusable and import of external "
"data can be destructive."
msgstr ""
-"Formule pour gérer l'ID externe du dépôt. À modifier avec précaution. Avec "
-"une formule incorrecte, le logiciel pourrait devenir inutilisable et "
-"l'import de données externes pourrait être destructif."
+"Formule pour gérer les identifiants externes de dépôt. À manipuler avec "
+"précaution. Une formule incorrecte peut rendre l'application inutilisable et "
+"l'import de données externes peut alors être destructif."
#: models.py:1180
msgid "Raw name for person"
diff --git a/version.py b/version.py
index 5ba0bab42..f9e9cf869 100644
--- a/version.py
+++ b/version.py
@@ -1,4 +1,4 @@
-VERSION = (0, 99, 8)
+VERSION = (0, 99, 9)
def get_version():