Minor codee improvements

remotes/origin/issue/4795/notification_even_they_are_disabled
David Barragán Merino 2016-08-19 09:59:41 +02:00
parent 275ce381f9
commit 1cb9248912
2 changed files with 49 additions and 52 deletions

View File

@ -37,7 +37,7 @@ MEMBERS_PERMISSIONS = [
('add_milestone', _('Add milestone')), ('add_milestone', _('Add milestone')),
('modify_milestone', _('Modify milestone')), ('modify_milestone', _('Modify milestone')),
('delete_milestone', _('Delete milestone')), ('delete_milestone', _('Delete milestone')),
# US permissions # Epic permissions
('view_epics', _('View epic')), ('view_epics', _('View epic')),
('add_epic', _('Add epic')), ('add_epic', _('Add epic')),
('modify_epic', _('Modify epic')), ('modify_epic', _('Modify epic')),

View File

@ -111,16 +111,15 @@ class EpicViewSet(OCCResourceMixin, VotedResourceMixin, HistoryResourceMixin,
def _reorder_if_needed(self, obj, old_order_key, order_key): def _reorder_if_needed(self, obj, old_order_key, order_key):
# Executes the extra ordering if there is a difference in the ordering keys # Executes the extra ordering if there is a difference in the ordering keys
if old_order_key != order_key: if old_order_key == order_key:
return {}
extra_orders = json.loads(self.request.META.get("HTTP_SET_ORDERS", "{}")) extra_orders = json.loads(self.request.META.get("HTTP_SET_ORDERS", "{}"))
data = [{"epic_id": obj.id, "order": getattr(obj, "epics_order")}] data = [{"epic_id": obj.id, "order": getattr(obj, "epics_order")}]
for id, order in extra_orders.items(): for id, order in extra_orders.items():
data.append({"epic_id": int(id), "order": order}) data.append({"epic_id": int(id), "order": order})
return services.update_epics_order_in_bulk(data, return services.update_epics_order_in_bulk(data, "epics_order", project=obj.project)
"epics_order",
project=obj.project)
return {}
def post_save(self, obj, created=False): def post_save(self, obj, created=False):
if not created: if not created:
@ -205,7 +204,9 @@ class EpicViewSet(OCCResourceMixin, VotedResourceMixin, HistoryResourceMixin,
@list_route(methods=["POST"]) @list_route(methods=["POST"])
def bulk_create(self, request, **kwargs): def bulk_create(self, request, **kwargs):
validator = validators.EpicsBulkValidator(data=request.DATA) validator = validators.EpicsBulkValidator(data=request.DATA)
if validator.is_valid(): if not validator.is_valid():
return response.BadRequest(validator.errors)
data = validator.data data = validator.data
project = Project.objects.get(id=data["project_id"]) project = Project.objects.get(id=data["project_id"])
self.check_permissions(request, "bulk_create", project) self.check_permissions(request, "bulk_create", project)
@ -224,8 +225,6 @@ class EpicViewSet(OCCResourceMixin, VotedResourceMixin, HistoryResourceMixin,
return response.Ok(epics_serialized.data) return response.Ok(epics_serialized.data)
return response.BadRequest(validator.errors)
class EpicRelatedUserStoryViewSet(NestedViewSetMixin, BlockedByProjectMixin, ModelCrudViewSet): class EpicRelatedUserStoryViewSet(NestedViewSetMixin, BlockedByProjectMixin, ModelCrudViewSet):
queryset = models.RelatedUserStory.objects.all() queryset = models.RelatedUserStory.objects.all()
@ -254,18 +253,16 @@ class EpicRelatedUserStoryViewSet(NestedViewSetMixin, BlockedByProjectMixin, Mod
def _reorder_if_needed(self, obj, old_order_key, order_key): def _reorder_if_needed(self, obj, old_order_key, order_key):
# Executes the extra ordering if there is a difference in the ordering keys # Executes the extra ordering if there is a difference in the ordering keys
if old_order_key != order_key: if old_order_key == order_key:
return {}
extra_orders = json.loads(self.request.META.get("HTTP_SET_ORDERS", "{}")) extra_orders = json.loads(self.request.META.get("HTTP_SET_ORDERS", "{}"))
data = [{"us_id": obj.id, "order": getattr(obj, "order")}] data = [{"us_id": obj.id, "order": getattr(obj, "order")}]
for id, order in extra_orders.items(): for id, order in extra_orders.items():
data.append({"epic_id": int(id), "order": order}) data.append({"epic_id": int(id), "order": order})
return services.update_epic_related_userstories_order_in_bulk( return services.update_epic_related_userstories_order_in_bulk(data, epic=obj.epic)
data,
epic=obj.epic
)
return {}
def post_save(self, obj, created=False): def post_save(self, obj, created=False):
if not created: if not created:
@ -280,7 +277,9 @@ class EpicRelatedUserStoryViewSet(NestedViewSetMixin, BlockedByProjectMixin, Mod
@list_route(methods=["POST"]) @list_route(methods=["POST"])
def bulk_create(self, request, **kwargs): def bulk_create(self, request, **kwargs):
validator = validators.CrateRelatedUserStoriesBulkValidator(data=request.DATA) validator = validators.CrateRelatedUserStoriesBulkValidator(data=request.DATA)
if validator.is_valid(): if not validator.is_valid():
return response.BadRequest(validator.errors)
data = validator.data data = validator.data
epic = get_object_or_404(models.Epic, id=kwargs["epic"]) epic = get_object_or_404(models.Epic, id=kwargs["epic"])
@ -300,8 +299,6 @@ class EpicRelatedUserStoryViewSet(NestedViewSetMixin, BlockedByProjectMixin, Mod
related_uss_serialized = self.get_serializer_class()(epic.relateduserstory_set.all(), many=True) related_uss_serialized = self.get_serializer_class()(epic.relateduserstory_set.all(), many=True)
return response.Ok(related_uss_serialized.data) return response.Ok(related_uss_serialized.data)
return response.BadRequest(validator.errors)
class EpicVotersViewSet(VotersViewSetMixin, ModelListViewSet): class EpicVotersViewSet(VotersViewSetMixin, ModelListViewSet):
permission_classes = (permissions.EpicVotersPermission,) permission_classes = (permissions.EpicVotersPermission,)