Skip to content

Commit

Permalink
Fixing ordering in archived states
Browse files Browse the repository at this point in the history
  • Loading branch information
jespino committed May 18, 2017
1 parent a385c73 commit deece59
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions taiga/projects/userstories/api.py
Expand Up @@ -18,6 +18,7 @@

from django.apps import apps
from django.db import transaction
from django.db.models import Max

from django.utils.translation import ugettext as _
from django.http import HttpResponse
Expand Down Expand Up @@ -156,6 +157,10 @@ def pre_save(self, obj):
related_data = getattr(obj, "_related_data", {})
self._role_points = related_data.pop("role_points", None)

if obj.kanban_order == -1:
if self._max_order:
obj.kanban_order = self._max_order + 1;

if not obj.id:
obj.owner = self.request.user
else:
Expand Down Expand Up @@ -276,6 +281,12 @@ def update(self, request, *args, **kwargs):
except Project.DoesNotExist:
return response.BadRequest(_("The project doesn't exist"))

if self.object and self.object.project_id:
self._max_order = models.UserStory.objects.filter(
project_id=self.object.project_id,
status_id=request.DATA.get('status', None)
).aggregate(Max('kanban_order'))['kanban_order__max']

return super().update(request, *args, **kwargs)

@list_route(methods=["GET"])
Expand Down

0 comments on commit deece59

Please sign in to comment.