Merge pull request #830 from taigaio/Improving-default-values-for-orders
Improving default values for ordersremotes/origin/issue/4795/notification_even_they_are_disabled
commit
480e5a2c55
|
@ -0,0 +1,23 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Copyright (C) 2014-2016 Andrey Antukh <niwi@niwi.nz>
|
||||||
|
# Copyright (C) 2014-2016 Jesús Espino <jespinog@gmail.com>
|
||||||
|
# Copyright (C) 2014-2016 David Barragán <bameda@dbarragan.com>
|
||||||
|
# Copyright (C) 2014-2016 Alejandro Alonso <alejandro.alonso@kaleidos.net>
|
||||||
|
# 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 <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
import time
|
||||||
|
|
||||||
|
|
||||||
|
def timestamp_ms():
|
||||||
|
return int(time.time() * 1000)
|
|
@ -0,0 +1,36 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.9.2 on 2016-09-28 05:40
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import taiga.base.utils.time
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('custom_attributes', '0009_auto_20160728_1002'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='epiccustomattribute',
|
||||||
|
name='order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='order'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='issuecustomattribute',
|
||||||
|
name='order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='order'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='taskcustomattribute',
|
||||||
|
name='order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='order'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='userstorycustomattribute',
|
||||||
|
name='order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='order'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -22,6 +22,7 @@ from django.utils import timezone
|
||||||
|
|
||||||
from django_pgjson.fields import JsonField
|
from django_pgjson.fields import JsonField
|
||||||
|
|
||||||
|
from taiga.base.utils.time import timestamp_ms
|
||||||
from taiga.projects.occ.mixins import OCCModelMixin
|
from taiga.projects.occ.mixins import OCCModelMixin
|
||||||
|
|
||||||
from . import choices
|
from . import choices
|
||||||
|
@ -37,7 +38,7 @@ class AbstractCustomAttribute(models.Model):
|
||||||
type = models.CharField(null=False, blank=False, max_length=16,
|
type = models.CharField(null=False, blank=False, max_length=16,
|
||||||
choices=choices.TYPES_CHOICES, default=choices.TEXT_TYPE,
|
choices=choices.TYPES_CHOICES, default=choices.TEXT_TYPE,
|
||||||
verbose_name=_("type"))
|
verbose_name=_("type"))
|
||||||
order = models.IntegerField(null=False, blank=False, default=10000, verbose_name=_("order"))
|
order = models.BigIntegerField(null=False, blank=False, default=timestamp_ms, verbose_name=_("order"))
|
||||||
project = models.ForeignKey("projects.Project", null=False, blank=False, related_name="%(class)ss",
|
project = models.ForeignKey("projects.Project", null=False, blank=False, related_name="%(class)ss",
|
||||||
verbose_name=_("project"))
|
verbose_name=_("project"))
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.9.2 on 2016-09-28 05:40
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import taiga.base.utils.time
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('epics', '0003_auto_20160901_1021'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='epic',
|
||||||
|
name='epics_order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='epics order'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='relateduserstory',
|
||||||
|
name='order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='order'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -23,6 +23,7 @@ from django.utils.translation import ugettext_lazy as _
|
||||||
from django.utils import timezone
|
from django.utils import timezone
|
||||||
|
|
||||||
from taiga.base.utils.colors import generate_random_predefined_hex_color
|
from taiga.base.utils.colors import generate_random_predefined_hex_color
|
||||||
|
from taiga.base.utils.time import timestamp_ms
|
||||||
from taiga.projects.tagging.models import TaggedMixin
|
from taiga.projects.tagging.models import TaggedMixin
|
||||||
from taiga.projects.occ import OCCModelMixin
|
from taiga.projects.occ import OCCModelMixin
|
||||||
from taiga.projects.notifications.mixins import WatchedModelMixin
|
from taiga.projects.notifications.mixins import WatchedModelMixin
|
||||||
|
@ -40,7 +41,7 @@ class Epic(OCCModelMixin, WatchedModelMixin, BlockedMixin, TaggedMixin, models.M
|
||||||
status = models.ForeignKey("projects.EpicStatus", null=True, blank=True,
|
status = models.ForeignKey("projects.EpicStatus", null=True, blank=True,
|
||||||
related_name="epics", verbose_name=_("status"),
|
related_name="epics", verbose_name=_("status"),
|
||||||
on_delete=models.SET_NULL)
|
on_delete=models.SET_NULL)
|
||||||
epics_order = models.IntegerField(null=False, blank=False, default=10000,
|
epics_order = models.BigIntegerField(null=False, blank=False, default=timestamp_ms,
|
||||||
verbose_name=_("epics order"))
|
verbose_name=_("epics order"))
|
||||||
|
|
||||||
created_date = models.DateTimeField(null=False, blank=False,
|
created_date = models.DateTimeField(null=False, blank=False,
|
||||||
|
@ -96,7 +97,7 @@ class RelatedUserStory(WatchedModelMixin, models.Model):
|
||||||
user_story = models.ForeignKey("userstories.UserStory", on_delete=models.CASCADE)
|
user_story = models.ForeignKey("userstories.UserStory", on_delete=models.CASCADE)
|
||||||
epic = models.ForeignKey("epics.Epic", on_delete=models.CASCADE)
|
epic = models.ForeignKey("epics.Epic", on_delete=models.CASCADE)
|
||||||
|
|
||||||
order = models.IntegerField(null=False, blank=False, default=10000,
|
order = models.BigIntegerField(null=False, blank=False, default=timestamp_ms,
|
||||||
verbose_name=_("order"))
|
verbose_name=_("order"))
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.9.2 on 2016-09-28 05:40
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import taiga.base.utils.time
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('projects', '0053_auto_20160927_0741'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='membership',
|
||||||
|
name='user_order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='user order'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='projecttemplate',
|
||||||
|
name='order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='user order'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -31,6 +31,7 @@ from django_pglocks import advisory_lock
|
||||||
|
|
||||||
from django_pgjson.fields import JsonField
|
from django_pgjson.fields import JsonField
|
||||||
|
|
||||||
|
from taiga.base.utils.time import timestamp_ms
|
||||||
from taiga.projects.tagging.models import TaggedMixin
|
from taiga.projects.tagging.models import TaggedMixin
|
||||||
from taiga.projects.tagging.models import TagsColorsdMixin
|
from taiga.projects.tagging.models import TagsColorsdMixin
|
||||||
from taiga.base.utils.files import get_file_path
|
from taiga.base.utils.files import get_file_path
|
||||||
|
@ -84,7 +85,7 @@ class Membership(models.Model):
|
||||||
invitation_extra_text = models.TextField(null=True, blank=True,
|
invitation_extra_text = models.TextField(null=True, blank=True,
|
||||||
verbose_name=_("invitation extra text"))
|
verbose_name=_("invitation extra text"))
|
||||||
|
|
||||||
user_order = models.IntegerField(default=10000, null=False, blank=False,
|
user_order = models.BigIntegerField(default=timestamp_ms, null=False, blank=False,
|
||||||
verbose_name=_("user order"))
|
verbose_name=_("user order"))
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
|
@ -730,7 +731,7 @@ class ProjectTemplate(models.Model):
|
||||||
verbose_name=_("slug"), unique=True)
|
verbose_name=_("slug"), unique=True)
|
||||||
description = models.TextField(null=False, blank=False,
|
description = models.TextField(null=False, blank=False,
|
||||||
verbose_name=_("description"))
|
verbose_name=_("description"))
|
||||||
order = models.IntegerField(default=10000, null=False, blank=False,
|
order = models.BigIntegerField(default=timestamp_ms, null=False, blank=False,
|
||||||
verbose_name=_("user order"))
|
verbose_name=_("user order"))
|
||||||
created_date = models.DateTimeField(null=False, blank=False,
|
created_date = models.DateTimeField(null=False, blank=False,
|
||||||
verbose_name=_("created date"),
|
verbose_name=_("created date"),
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.9.2 on 2016-09-28 07:55
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import taiga.base.utils.time
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('tasks', '0010_auto_20160614_1201'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='task',
|
||||||
|
name='taskboard_order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='taskboard order'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='task',
|
||||||
|
name='us_order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='us order'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -23,6 +23,7 @@ from django.conf import settings
|
||||||
from django.utils import timezone
|
from django.utils import timezone
|
||||||
from django.utils.translation import ugettext_lazy as _
|
from django.utils.translation import ugettext_lazy as _
|
||||||
|
|
||||||
|
from taiga.base.utils.time import timestamp_ms
|
||||||
from taiga.projects.occ import OCCModelMixin
|
from taiga.projects.occ import OCCModelMixin
|
||||||
from taiga.projects.notifications.mixins import WatchedModelMixin
|
from taiga.projects.notifications.mixins import WatchedModelMixin
|
||||||
from taiga.projects.mixins.blocked import BlockedMixin
|
from taiga.projects.mixins.blocked import BlockedMixin
|
||||||
|
@ -53,9 +54,9 @@ class Task(OCCModelMixin, WatchedModelMixin, BlockedMixin, TaggedMixin, models.M
|
||||||
subject = models.TextField(null=False, blank=False,
|
subject = models.TextField(null=False, blank=False,
|
||||||
verbose_name=_("subject"))
|
verbose_name=_("subject"))
|
||||||
|
|
||||||
us_order = models.IntegerField(null=False, blank=False, default=1,
|
us_order = models.BigIntegerField(null=False, blank=False, default=timestamp_ms,
|
||||||
verbose_name=_("us order"))
|
verbose_name=_("us order"))
|
||||||
taskboard_order = models.IntegerField(null=False, blank=False, default=1,
|
taskboard_order = models.BigIntegerField(null=False, blank=False, default=timestamp_ms,
|
||||||
verbose_name=_("taskboard order"))
|
verbose_name=_("taskboard order"))
|
||||||
|
|
||||||
description = models.TextField(null=False, blank=True, verbose_name=_("description"))
|
description = models.TextField(null=False, blank=True, verbose_name=_("description"))
|
||||||
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.9.2 on 2016-09-28 05:40
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import taiga.base.utils.time
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('userstories', '0013_auto_20160722_1018'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='userstory',
|
||||||
|
name='backlog_order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='backlog order'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='userstory',
|
||||||
|
name='kanban_order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='kanban order'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='userstory',
|
||||||
|
name='sprint_order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='sprint order'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -25,6 +25,7 @@ from django.utils import timezone
|
||||||
|
|
||||||
from picklefield.fields import PickledObjectField
|
from picklefield.fields import PickledObjectField
|
||||||
|
|
||||||
|
from taiga.base.utils.time import timestamp_ms
|
||||||
from taiga.projects.tagging.models import TaggedMixin
|
from taiga.projects.tagging.models import TaggedMixin
|
||||||
from taiga.projects.occ import OCCModelMixin
|
from taiga.projects.occ import OCCModelMixin
|
||||||
from taiga.projects.notifications.mixins import WatchedModelMixin
|
from taiga.projects.notifications.mixins import WatchedModelMixin
|
||||||
|
@ -75,11 +76,11 @@ class UserStory(OCCModelMixin, WatchedModelMixin, BlockedMixin, TaggedMixin, mod
|
||||||
related_name="userstories", through="RolePoints",
|
related_name="userstories", through="RolePoints",
|
||||||
verbose_name=_("points"))
|
verbose_name=_("points"))
|
||||||
|
|
||||||
backlog_order = models.IntegerField(null=False, blank=False, default=10000,
|
backlog_order = models.BigIntegerField(null=False, blank=False, default=timestamp_ms,
|
||||||
verbose_name=_("backlog order"))
|
verbose_name=_("backlog order"))
|
||||||
sprint_order = models.IntegerField(null=False, blank=False, default=10000,
|
sprint_order = models.BigIntegerField(null=False, blank=False, default=timestamp_ms,
|
||||||
verbose_name=_("sprint order"))
|
verbose_name=_("sprint order"))
|
||||||
kanban_order = models.IntegerField(null=False, blank=False, default=10000,
|
kanban_order = models.BigIntegerField(null=False, blank=False, default=timestamp_ms,
|
||||||
verbose_name=_("kanban order"))
|
verbose_name=_("kanban order"))
|
||||||
|
|
||||||
created_date = models.DateTimeField(null=False, blank=False,
|
created_date = models.DateTimeField(null=False, blank=False,
|
||||||
|
|
|
@ -0,0 +1,21 @@
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# Generated by Django 1.9.2 on 2016-09-28 05:40
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import taiga.base.utils.time
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('wiki', '0003_auto_20160615_0721'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='wikilink',
|
||||||
|
name='order',
|
||||||
|
field=models.BigIntegerField(default=taiga.base.utils.time.timestamp_ms, verbose_name='order'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -24,6 +24,7 @@ from django.utils import timezone
|
||||||
from django_pglocks import advisory_lock
|
from django_pglocks import advisory_lock
|
||||||
|
|
||||||
from taiga.base.utils.slug import slugify_uniquely_for_queryset
|
from taiga.base.utils.slug import slugify_uniquely_for_queryset
|
||||||
|
from taiga.base.utils.time import timestamp_ms
|
||||||
from taiga.projects.notifications.mixins import WatchedModelMixin
|
from taiga.projects.notifications.mixins import WatchedModelMixin
|
||||||
from taiga.projects.occ import OCCModelMixin
|
from taiga.projects.occ import OCCModelMixin
|
||||||
|
|
||||||
|
@ -72,7 +73,7 @@ class WikiLink(models.Model):
|
||||||
title = models.CharField(max_length=500, null=False, blank=False)
|
title = models.CharField(max_length=500, null=False, blank=False)
|
||||||
href = models.SlugField(max_length=500, db_index=True, null=False, blank=False,
|
href = models.SlugField(max_length=500, db_index=True, null=False, blank=False,
|
||||||
verbose_name=_("href"))
|
verbose_name=_("href"))
|
||||||
order = models.PositiveSmallIntegerField(null=False, blank=False, default="10000",
|
order = models.BigIntegerField(null=False, blank=False, default=timestamp_ms,
|
||||||
verbose_name=_("order"))
|
verbose_name=_("order"))
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|
Loading…
Reference in New Issue