diff --git a/taiga/projects/management/commands/sample_data.py b/taiga/projects/management/commands/sample_data.py index 147ca0a7..f5c7b6ea 100644 --- a/taiga/projects/management/commands/sample_data.py +++ b/taiga/projects/management/commands/sample_data.py @@ -30,11 +30,11 @@ from sampledatahelper.helper import SampleDataHelper from taiga.users.models import * from taiga.permissions.permissions import ANON_PERMISSIONS +from taiga.projects.choices import BLOCKED_BY_STAFF from taiga.projects.models import * from taiga.projects.milestones.models import * from taiga.projects.notifications.choices import NotifyLevel from taiga.projects.services.stats import get_stats_for_project - from taiga.projects.userstories.models import * from taiga.projects.tasks.models import * from taiga.projects.issues.models import * @@ -105,6 +105,7 @@ NUM_USERS = getattr(settings, "SAMPLE_DATA_NUM_USERS", 10) NUM_INVITATIONS =getattr(settings, "SAMPLE_DATA_NUM_INVITATIONS", 2) NUM_PROJECTS =getattr(settings, "SAMPLE_DATA_NUM_PROJECTS", 4) NUM_EMPTY_PROJECTS = getattr(settings, "SAMPLE_DATA_NUM_EMPTY_PROJECTS", 2) +NUM_BLOCKED_PROJECTS = getattr(settings, "SAMPLE_DATA_NUM_BLOCKED_PROJECTS", 1) NUM_MILESTONES = getattr(settings, "SAMPLE_DATA_NUM_MILESTONES", (1, 5)) NUM_USS = getattr(settings, "SAMPLE_DATA_NUM_USS", (3, 7)) NUM_TASKS_FINISHED = getattr(settings, "SAMPLE_DATA_NUM_TASKS_FINISHED", (1, 5)) @@ -138,8 +139,19 @@ class Command(BaseCommand): self.users.append(self.create_user(counter=x)) # create project - for x in range(NUM_PROJECTS + NUM_EMPTY_PROJECTS): - project = self.create_project(x, is_private=(x in [2, 4] or self.sd.boolean())) + projects_range = range(NUM_PROJECTS + NUM_EMPTY_PROJECTS + NUM_BLOCKED_PROJECTS) + empty_projects_range = range(NUM_PROJECTS, NUM_PROJECTS + NUM_EMPTY_PROJECTS ) + blocked_projects_range = range( + NUM_PROJECTS + NUM_EMPTY_PROJECTS, + NUM_PROJECTS + NUM_EMPTY_PROJECTS + NUM_BLOCKED_PROJECTS + ) + + for x in projects_range: + project = self.create_project( + x, + is_private=(x in [2, 4] or self.sd.boolean()), + blocked_code = BLOCKED_BY_STAFF if x in(blocked_projects_range) else None + ) # added memberships computable_project_roles = set() @@ -194,8 +206,8 @@ class Command(BaseCommand): project=project, order=i) - - if x < NUM_PROJECTS: + # If the project isn't empty + if x not in empty_projects_range: start_date = now() - datetime.timedelta(55) # create milestones @@ -457,7 +469,7 @@ class Command(BaseCommand): return milestone - def create_project(self, counter, is_private=None): + def create_project(self, counter, is_private=None, blocked_code=None): if is_private is None: is_private=self.sd.boolean() @@ -475,7 +487,8 @@ class Command(BaseCommand): tags=self.sd.words(1, 10).split(" "), is_looking_for_people=counter in LOOKING_FOR_PEOPLE_PROJECTS_POSITIONS, looking_for_people_note=self.sd.short_sentence(), - is_featured=counter in FEATURED_PROJECTS_POSITIONS) + is_featured=counter in FEATURED_PROJECTS_POSITIONS, + blocked_code=blocked_code) project.is_kanban_activated = True project.save()