From 3080c0e5f27613a8c9476ae7300c4f6b86d6c2c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Barrag=C3=A1n=20Merino?= Date: Wed, 15 Jun 2016 09:21:41 +0200 Subject: [PATCH] Change default order for wiki links --- .../management/commands/sample_data.py | 35 ++++++++++++++----- .../migrations/0003_auto_20160615_0721.py | 24 +++++++++++++ taiga/projects/wiki/models.py | 4 +-- 3 files changed, 52 insertions(+), 11 deletions(-) create mode 100644 taiga/projects/wiki/migrations/0003_auto_20160615_0721.py diff --git a/taiga/projects/management/commands/sample_data.py b/taiga/projects/management/commands/sample_data.py index 0c355c2f..db7a696c 100644 --- a/taiga/projects/management/commands/sample_data.py +++ b/taiga/projects/management/commands/sample_data.py @@ -113,6 +113,7 @@ NUM_TASKS_FINISHED = getattr(settings, "SAMPLE_DATA_NUM_TASKS_FINISHED", (1, 5)) NUM_TASKS = getattr(settings, "SAMPLE_DATA_NUM_TASKS", (0, 4)) NUM_USS_BACK = getattr(settings, "SAMPLE_DATA_NUM_USS_BACK", (8, 20)) NUM_ISSUES = getattr(settings, "SAMPLE_DATA_NUM_ISSUES", (12, 25)) +NUM_WIKI_LINKS = getattr(settings, "SAMPLE_DATA_NUM_WIKI_LINKS", (0, 15)) NUM_ATTACHMENTS = getattr(settings, "SAMPLE_DATA_NUM_ATTACHMENTS", (0, 4)) NUM_LIKES = getattr(settings, "SAMPLE_DATA_NUM_LIKES", (0, 10)) NUM_VOTES = getattr(settings, "SAMPLE_DATA_NUM_VOTES", (0, 10)) @@ -186,22 +187,25 @@ class Command(BaseCommand): # added custom attributes if self.sd.boolean: - for i in range(1, 4): - UserStoryCustomAttribute.objects.create(name=self.sd.words(1, 3), + names = set([self.sd.words(1, 3) for i in range(1, 6)]) + for name in names: + UserStoryCustomAttribute.objects.create(name=name, description=self.sd.words(3, 12), type=self.sd.choice(TYPES_CHOICES)[0], project=project, order=i) if self.sd.boolean: - for i in range(1, 4): - TaskCustomAttribute.objects.create(name=self.sd.words(1, 3), + names = set([self.sd.words(1, 3) for i in range(1, 6)]) + for name in names: + TaskCustomAttribute.objects.create(name=name, description=self.sd.words(3, 12), type=self.sd.choice(TYPES_CHOICES)[0], project=project, order=i) if self.sd.boolean: - for i in range(1, 4): - IssueCustomAttribute.objects.create(name=self.sd.words(1, 3), + names = set([self.sd.words(1, 3) for i in range(1, 6)]) + for name in names: + IssueCustomAttribute.objects.create(name=name, description=self.sd.words(3, 12), type=self.sd.choice(TYPES_CHOICES)[0], project=project, @@ -243,8 +247,14 @@ class Command(BaseCommand): for y in range(self.sd.int(*NUM_ISSUES)): bug = self.create_bug(project) - # create a wiki page - wiki_page = self.create_wiki(project, "home") + # create a wiki pages and wiki links + wiki_page = self.create_wiki_page(project, "home") + + for y in range(self.sd.int(*NUM_WIKI_LINKS)): + wiki_link = self.create_wiki_link(project) + if self.sd.boolean(): + self.create_wiki_page(project, wiki_link.href) + # Set a value to total_story_points to show the deadline in the backlog project_stats = get_stats_for_project(project) @@ -270,7 +280,14 @@ class Command(BaseCommand): attached_file=attached_file) return attachment - def create_wiki(self, project, slug): + + def create_wiki_link(self, project, title=None): + wiki_link = WikiLink.objects.create(project=project, + title=title or self.sd.words(1, 3)) + return wiki_link + + + def create_wiki_page(self, project, slug): wiki_page = WikiPage.objects.create(project=project, slug=slug, content=self.sd.paragraphs(3,15), diff --git a/taiga/projects/wiki/migrations/0003_auto_20160615_0721.py b/taiga/projects/wiki/migrations/0003_auto_20160615_0721.py new file mode 100644 index 00000000..1e1876e0 --- /dev/null +++ b/taiga/projects/wiki/migrations/0003_auto_20160615_0721.py @@ -0,0 +1,24 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-06-15 07:21 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('wiki', '0002_remove_wikipage_watchers'), + ] + + operations = [ + migrations.AlterModelOptions( + name='wikilink', + options={'ordering': ['project', 'order', 'id'], 'verbose_name': 'wiki link', 'verbose_name_plural': 'wiki links'}, + ), + migrations.AlterField( + model_name='wikilink', + name='order', + field=models.PositiveSmallIntegerField(default='10000', verbose_name='order'), + ), + ] diff --git a/taiga/projects/wiki/models.py b/taiga/projects/wiki/models.py index 659e51f0..19cd6b25 100644 --- a/taiga/projects/wiki/models.py +++ b/taiga/projects/wiki/models.py @@ -70,13 +70,13 @@ class WikiLink(models.Model): title = models.CharField(max_length=500, null=False, blank=False) href = models.SlugField(max_length=500, db_index=True, null=False, blank=False, verbose_name=_("href")) - order = models.PositiveSmallIntegerField(default=1, null=False, blank=False, + order = models.PositiveSmallIntegerField(null=False, blank=False, default="10000", verbose_name=_("order")) class Meta: verbose_name = "wiki link" verbose_name_plural = "wiki links" - ordering = ["project", "order"] + ordering = ["project", "order", "id"] unique_together = ("project", "href") def __str__(self):