diff options
Diffstat (limited to 'archaeological_finds/views.py')
-rw-r--r-- | archaeological_finds/views.py | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/archaeological_finds/views.py b/archaeological_finds/views.py index 29f0f75af..125567044 100644 --- a/archaeological_finds/views.py +++ b/archaeological_finds/views.py @@ -109,12 +109,19 @@ show_find = show_item(models.Find, 'find') display_find = display_item(models.Find) revert_find = revert_item(models.Find) -show_findbasket = show_item(models.FindBasket, 'findbasket') +show_findbasket = show_item(models.FindBasket, 'findbasket', + model_for_perms=models.Find) display_findbasket = display_item(models.FindBasket, show_url='show-find/basket-') get_find_basket = get_item( models.FindBasket, 'get_findbasket', 'findbasket', + model_for_perms=models.Find +) + +get_find_basket_for_write = get_item( + models.FindBasket, 'get_findbasket', 'findbasket', + model_for_perms=models.Find, alt_query_own='get_write_query_owns' ) basket_search_wizard = FindBasketSearch.as_view( @@ -125,10 +132,10 @@ basket_search_wizard = FindBasketSearch.as_view( basket_modify_wizard = FindBasketEditWizard.as_view( [ - ('selec-find_basket_modification', FindBasketFormSelection), + ('selec-find_basket_modification', FindBasketForWriteFormSelection), ('basket-find_basket_modification', FindBasketForm), ('final-find_basket_modification', FinalForm) - ], + ], label=_(u"Basket modify"), url_name='find_basket_modification', ) @@ -290,8 +297,8 @@ class OwnBasket(object): def get_basket(self, user, pk): try: return models.FindBasket.objects.filter( - Q(user=user) | Q(shared_with=user) - ).get(pk=pk) + Q(user=user) | Q(shared_with=user) | Q(shared_write_with=user) + ).distinct().get(pk=pk) except models.FindBasket.DoesNotExist: raise PermissionDenied |