takahe/users/migrations/0005_report.py
Andrew Godwin ecec5d6c0a Implement snowflake IDs for some models.
Still needs fixes to the client API paginator.
2023-01-08 18:05:29 -07:00

119 lines
4.3 KiB
Python

# Generated by Django 4.1.4 on 2022-12-17 20:38
import django.db.models.deletion
from django.db import migrations, models
import core.snowflake
import stator.models
import users.models.report
class Migration(migrations.Migration):
dependencies = [
("activities", "0004_emoji_post_emojis"),
("users", "0004_identity_admin_notes_identity_restriction_and_more"),
]
operations = [
migrations.CreateModel(
name="Report",
fields=[
(
"id",
models.BigIntegerField(
default=core.snowflake.Snowflake.generate_report,
primary_key=True,
serialize=False,
),
),
("state_ready", models.BooleanField(default=True)),
("state_changed", models.DateTimeField(auto_now_add=True)),
("state_attempted", models.DateTimeField(blank=True, null=True)),
("state_locked_until", models.DateTimeField(blank=True, null=True)),
(
"state",
stator.models.StateField(
choices=[("new", "new"), ("sent", "sent")],
default="new",
graph=users.models.report.ReportStates,
max_length=100,
),
),
(
"type",
models.CharField(
choices=[
("spam", "Spam"),
("hateful", "Hateful"),
("illegal", "Illegal"),
("remote", "Remote"),
("other", "Other"),
],
max_length=100,
),
),
("complaint", models.TextField()),
("forward", models.BooleanField(default=False)),
("valid", models.BooleanField(null=True)),
("seen", models.DateTimeField(blank=True, null=True)),
("resolved", models.DateTimeField(blank=True, null=True)),
("notes", models.TextField(blank=True, null=True)),
("created", models.DateTimeField(auto_now_add=True)),
("updated", models.DateTimeField(auto_now=True)),
(
"moderator",
models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.SET_NULL,
related_name="moderated_reports",
to="users.identity",
),
),
(
"source_domain",
models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.CASCADE,
related_name="filed_reports",
to="users.domain",
),
),
(
"source_identity",
models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.CASCADE,
related_name="filed_reports",
to="users.identity",
),
),
(
"subject_identity",
models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.CASCADE,
related_name="reports",
to="users.identity",
),
),
(
"subject_post",
models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.SET_NULL,
related_name="reports",
to="activities.post",
),
),
],
options={
"abstract": False,
},
),
]