# Copyright (C) 2015 Andrey Antukh # Copyright (C) 2015 Jesús Espino # Copyright (C) 2015 David Barragán # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as # published by the Free Software Foundation, either version 3 of the # License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see . from django.utils.translation import ugettext as _ from taiga.base.api import serializers from . import models class ProjectExistsValidator: def validate_project_id(self, attrs, source): value = attrs[source] if not models.Project.objects.filter(pk=value).exists(): msg = _("There's no project with that id") raise serializers.ValidationError(msg) return attrs class UserStoryStatusExistsValidator: def validate_status_id(self, attrs, source): value = attrs[source] if not models.UserStoryStatus.objects.filter(pk=value).exists(): msg = _("There's no user story status with that id") raise serializers.ValidationError(msg) return attrs class TaskStatusExistsValidator: def validate_status_id(self, attrs, source): value = attrs[source] if not models.TaskStatus.objects.filter(pk=value).exists(): msg = _("There's no task status with that id") raise serializers.ValidationError(msg) return attrs