Files
some weird guy 328485d04c stuff
- Fixed community edit audit logs being created even if the user owns the community.
- Simple ban page that shows you the reason, expiration date, and time left.
- Removing unused models
- other small changes
2023-09-18 16:46:28 -07:00

429 lines
30 KiB
Python

# Generated by Django 3.2.2 on 2023-09-16 19:39
import closedverse_main.models
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
import uuid
class Migration(migrations.Migration):
initial = True
dependencies = [
('auth', '0012_alter_user_first_name_max_length'),
]
operations = [
migrations.CreateModel(
name='User',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('username', models.CharField(max_length=32, unique=True)),
('nickname', models.CharField(max_length=64, null=True)),
('password', models.CharField(max_length=128)),
('email', models.EmailField(blank=True, default='', max_length=254, null=True)),
('has_mh', models.BooleanField(default=False, help_text="Don't touch this. This is if the user's avatar is set to a Mii.")),
('avatar', models.CharField(blank=True, default='', max_length=1200)),
('theme', closedverse_main.models.ColorField(blank=True, max_length=18, null=True)),
('level', models.SmallIntegerField(default=0, help_text='This is the level of authority. People with a lower level cannot edit those with a higher level. This also grants additional permissions outside of the Django Admin Panel.')),
('addr', models.CharField(blank=True, max_length=64, null=True)),
('signup_addr', models.CharField(blank=True, max_length=64, null=True)),
('c_tokens', models.IntegerField(default=1, help_text='How many communities should this user be allowed to make?')),
('hide_online', models.BooleanField(default=False, help_text='If this is ticked, the user has opted to hide their online status.')),
('color', closedverse_main.models.ColorField(blank=True, default='', max_length=18, null=True)),
('is_staff', models.BooleanField(default=False, help_text="Allow this user to access the admin panel you're using right now?")),
('is_active', models.BooleanField(default=True, help_text="If this is off, the user is basically banned and can't do shit here")),
('is_superuser', models.BooleanField(default=False, help_text="Overrides django groups. This also allows you to change people's perms.")),
('can_invite', models.BooleanField(default=True, help_text='Can this user invite new users? This does not matter unless the invite system is turned on.')),
('bg_url', models.CharField(blank=True, max_length=300, null=True)),
('last_login', models.DateTimeField(auto_now=True)),
('created', models.DateTimeField(auto_now_add=True)),
('groups', models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.Group', verbose_name='groups')),
],
options={
'permissions': [('Can_alter_level_and_Perms', 'Allow this user to change Level, Groups and Permissions?')],
},
),
migrations.CreateModel(
name='Ads',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('created', models.DateTimeField(auto_now_add=True)),
('url', models.CharField(max_length=256)),
('imageurl', models.ImageField(upload_to='ad/%y/%m/%d/')),
],
options={
'verbose_name_plural': 'ads',
},
),
migrations.CreateModel(
name='Comment',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('feeling', models.SmallIntegerField(choices=[(0, 'normal'), (1, 'happy'), (2, 'wink'), (3, 'surprised'), (4, 'frustrated'), (5, 'confused'), (38, 'japan'), (39, 'lol i lied'), (69, 'adam is gay'), (70, 'I am a faggot!'), (71, 'Juice'), (72, 'Commit Suicide'), (73, 'Fresh!')], default=0)),
('body', models.TextField(null=True)),
('screenshot', models.CharField(blank=True, default='', max_length=1200, null=True)),
('drawing', models.CharField(blank=True, max_length=200, null=True)),
('spoils', models.BooleanField(default=False)),
('created', models.DateTimeField(auto_now_add=True)),
('edited', models.DateTimeField(auto_now=True)),
('befores', models.TextField(blank=True, null=True)),
('has_edit', models.BooleanField(default=False)),
('is_rm', models.BooleanField(default=False, help_text='Tick this to hide this comment')),
('status', models.SmallIntegerField(choices=[(0, 'ok'), (1, 'delete by user'), (2, 'delete by authority'), (3, 'delete by mod'), (4, 'delete by admin'), (5, 'account pruge')], default=0, help_text='Used to distinguish how a comment was removed. Our purging feature uses this to determine what comments to restore and what not to.')),
],
),
migrations.CreateModel(
name='Community',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('name', models.CharField(max_length=255)),
('description', models.TextField(blank=True)),
('ico', models.ImageField(blank=True, null=True, upload_to='')),
('banner', models.ImageField(blank=True, null=True, upload_to='')),
('type', models.SmallIntegerField(choices=[(0, 'General'), (1, 'Game'), (2, 'Special'), (3, 'User Community'), (4, 'Hide')], default=0, help_text='The category the community belongs in, setting this to None will remove the community.')),
('platform', models.SmallIntegerField(choices=[(0, 'None'), (1, '3DS'), (2, 'Wii U'), (3, 'Switch'), (4, '3DS and Wii U'), (5, 'PC'), (6, 'Xbox'), (7, 'Playstation')], default=0)),
('tags', models.CharField(blank=True, choices=[('announcements', 'main announcement community'), ('changelog', 'main changelog'), ('activity', 'Activity Feed posting community'), ('general', 'General Discussion Community')], help_text='Provides special functionality for specific communities.', max_length=255, null=True)),
('created', models.DateTimeField(auto_now_add=True)),
('updated', models.DateTimeField(auto_now=True)),
('is_rm', models.BooleanField(default=False, help_text='Tick this on to remove the community.')),
('is_feature', models.BooleanField(default=False, help_text='Feature this community on the front page where everyone can see it.')),
('require_auth', models.BooleanField(default=False, help_text='Force your users to sign in to view this community.')),
('rank_needed_to_post', models.IntegerField(default=0, help_text='Make admin only communities.')),
('creator', models.ForeignKey(blank=True, help_text="Who owns this community? It's highly recommended to not fill this on for general communities. Keep in mind that owners can block others from using communities they own.", null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
options={
'verbose_name_plural': 'communities',
},
),
migrations.CreateModel(
name='Conversation',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('created', models.DateTimeField(auto_now_add=True)),
('source', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='conv_source', to=settings.AUTH_USER_MODEL)),
('target', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='conv_target', to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='Poll',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('able_vote', models.BooleanField(default=True)),
('choices', models.TextField(default='[]')),
('created', models.DateTimeField(auto_now_add=True)),
],
),
migrations.CreateModel(
name='Post',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('feeling', models.SmallIntegerField(choices=[(0, 'normal'), (1, 'happy'), (2, 'wink'), (3, 'surprised'), (4, 'frustrated'), (5, 'confused'), (38, 'japan'), (39, 'lol i lied'), (69, 'adam is gay'), (70, 'I am a faggot!'), (71, 'Juice'), (72, 'Commit Suicide'), (73, 'Fresh!')], default=0)),
('body', models.TextField(null=True)),
('drawing', models.CharField(blank=True, max_length=200, null=True)),
('screenshot', models.CharField(blank=True, default='', max_length=1200, null=True)),
('video', models.CharField(blank=True, default='', max_length=256, null=True)),
('url', models.URLField(blank=True, default='', max_length=1200, null=True)),
('spoils', models.BooleanField(default=False)),
('disable_yeah', models.BooleanField(default=False)),
('lock_comments', models.SmallIntegerField(choices=[(0, 'Not locked'), (1, 'Locked by user'), (2, 'Locked by mod')], default=0, help_text='People will not be able to comment on posts that are locked.')),
('created', models.DateTimeField(auto_now_add=True)),
('edited', models.DateTimeField(auto_now=True)),
('befores', models.TextField(blank=True, help_text='If this post gets edited, the old body will be here.', null=True)),
('has_edit', models.BooleanField(default=False)),
('is_rm', models.BooleanField(default=False, help_text='Tick this to hide this post')),
('status', models.SmallIntegerField(choices=[(0, 'ok'), (1, 'delete by user'), (2, 'delete by authority'), (3, 'delete by mod'), (4, 'delete by admin'), (5, 'account pruge')], default=0, help_text='Used to distinguish how a post was removed. Our purging feature uses this to determine what posts to restore and what not to.')),
('community', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='closedverse_main.community')),
('creator', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
('poll', models.ForeignKey(blank=True, help_text='A busted ass poll feature that does not work.', null=True, on_delete=django.db.models.deletion.CASCADE, to='closedverse_main.poll')),
],
),
migrations.CreateModel(
name='Role',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('is_static', models.BooleanField(default=False)),
('image', models.ImageField(help_text="Upload an icon that will show on the top left of one's profile. A 22x22 image works best!", upload_to='roles/')),
('organization', models.CharField(blank=True, help_text="Text that shows above one's username", max_length=255, null=True)),
],
),
migrations.CreateModel(
name='UserRequest',
fields=[
('user_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='closedverse_main.user')),
('ua', models.TextField(blank=True, default='', null=True)),
('latest', models.DateTimeField(auto_now=True)),
('status', models.SmallIntegerField(choices=[(0, 'submitted'), (1, 'viewed'), (2, 'accepted'), (3, 'decline'), (4, 'ignore')], default=0)),
],
options={
'abstract': False,
},
bases=('closedverse_main.user',),
),
migrations.CreateModel(
name='Yeah',
fields=[
('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True)),
('type', models.SmallIntegerField(choices=[(0, 'post'), (1, 'comment')], default=0)),
('created', models.DateTimeField(auto_now_add=True)),
('by', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
('comment', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='closedverse_main.comment')),
('post', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='closedverse_main.post')),
],
),
migrations.CreateModel(
name='Warning',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('created', models.DateTimeField(auto_now_add=True)),
('reason', models.TextField(blank=True, null=True)),
('by', models.ForeignKey(help_text='This is not shown to the recipient', on_delete=django.db.models.deletion.CASCADE, related_name='Warned_by', to=settings.AUTH_USER_MODEL)),
('to', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='Warned_user', to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='UserBlock',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('created', models.DateTimeField(auto_now_add=True)),
('source', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='block_source', to=settings.AUTH_USER_MODEL)),
('target', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='block_target', to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='ProfileHistory',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('created', models.DateTimeField(auto_now_add=True)),
('old_nickname', models.CharField(blank=True, max_length=64, null=True)),
('new_nickname', models.CharField(blank=True, max_length=64, null=True)),
('old_comment', models.TextField(blank=True, null=True)),
('new_comment', models.TextField(blank=True)),
('user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
options={
'verbose_name_plural': 'profile histories',
},
),
migrations.CreateModel(
name='Profile',
fields=[
('is_new', models.BooleanField(default=True)),
('id', models.AutoField(primary_key=True, serialize=False)),
('origin_id', models.CharField(blank=True, max_length=16, null=True)),
('origin_info', models.CharField(blank=True, max_length=255, null=True)),
('comment', models.TextField(blank=True, default='')),
('country', models.CharField(blank=True, default='', max_length=120)),
('whatareyou', models.CharField(blank=True, default='', max_length=120)),
('id_visibility', models.SmallIntegerField(choices=[(0, 'show'), (1, 'friends only'), (2, 'hide')], default=0)),
('pronoun_is', models.IntegerField(choices=[(0, 'Not specified'), (1, 'He/him'), (2, 'She/her'), (3, 'He/she'), (4, 'It'), (5, 'They/Them')], default=0, help_text='haha attack helicopter.')),
('let_friendrequest', models.SmallIntegerField(choices=[(0, 'show'), (1, 'friends only'), (2, 'hide')], default=0)),
('yeahs_visibility', models.SmallIntegerField(choices=[(0, 'show'), (1, 'friends only'), (2, 'hide')], default=0)),
('comments_visibility', models.SmallIntegerField(choices=[(0, 'show'), (1, 'friends only'), (2, 'hide')], default=2)),
('weblink', models.CharField(blank=True, default='', max_length=1200)),
('external', models.CharField(blank=True, default='', max_length=255)),
('let_yeahnotifs', models.BooleanField(default=True)),
('let_freedom', models.BooleanField(default=True, help_text='Restrict this user from posting images, videos, URLs, and even making new accounts.')),
('limit_post', models.SmallIntegerField(default=0, help_text='Great for spammers, set to "0" to remove the restriction.')),
('cannot_edit', models.BooleanField(default=False, help_text='Make it so this user cannot change settings.')),
('email_login', models.SmallIntegerField(choices=[(0, 'Do not allow'), (1, 'Okay'), (2, 'Only allow')], default=1)),
('favorite', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='closedverse_main.post')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='PollVote',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('done', models.DateTimeField(auto_now_add=True)),
('choice', models.SmallIntegerField(default=0)),
('by', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
('poll', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='closedverse_main.poll')),
],
),
migrations.CreateModel(
name='Notification',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('unique_id', models.UUIDField(default=uuid.uuid4, editable=False, unique=True)),
('read', models.BooleanField(default=False)),
('type', models.SmallIntegerField(choices=[(0, 'Yeah on post'), (1, 'Yeah on comment'), (2, 'Comment on my post'), (3, "Comment on others' post"), (4, 'Follow to me'), (5, 'Warning received')])),
('merges', models.TextField(blank=True, default='')),
('created', models.DateTimeField(auto_now_add=True)),
('latest', models.DateTimeField(auto_now=True)),
('context_comment', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='closedverse_main.comment')),
('context_post', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='closedverse_main.post')),
('context_warning', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='closedverse_main.warning')),
('source', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='notification_sender', to=settings.AUTH_USER_MODEL)),
('to', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='notification_to', to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='MetaViews',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('created', models.DateTimeField(auto_now_add=True)),
('from_user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='from_user', to=settings.AUTH_USER_MODEL)),
('target_user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='target_user', to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='Message',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('feeling', models.SmallIntegerField(choices=[(0, 'normal'), (1, 'happy'), (2, 'wink'), (3, 'surprised'), (4, 'frustrated'), (5, 'confused'), (38, 'japan'), (39, 'lol i lied'), (69, 'adam is gay'), (70, 'I am a faggot!'), (71, 'Juice'), (72, 'Commit Suicide'), (73, 'Fresh!')], default=0)),
('body', models.TextField(null=True)),
('drawing', models.CharField(blank=True, max_length=200, null=True)),
('screenshot', models.CharField(blank=True, default='', max_length=1200, null=True)),
('url', models.URLField(blank=True, default='', max_length=1200, null=True)),
('created', models.DateTimeField(auto_now_add=True)),
('read', models.BooleanField(default=False)),
('is_rm', models.BooleanField(default=False)),
('conversation', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='closedverse_main.conversation')),
('creator', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='LoginAttempt',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('created', models.DateTimeField(auto_now_add=True)),
('success', models.BooleanField(default=False)),
('addr', models.CharField(blank=True, max_length=64, null=True)),
('user_agent', models.TextField(blank=True, null=True)),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='Invites',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('created', models.DateTimeField(auto_now_add=True)),
('code', models.CharField(default=uuid.uuid4, max_length=36)),
('used', models.BooleanField(default=False)),
('void', models.BooleanField(default=False)),
('creator', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='invite_creator', to=settings.AUTH_USER_MODEL)),
('used_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='invited_user', to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='Friendship',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('created', models.DateTimeField(auto_now_add=True)),
('latest', models.DateTimeField(auto_now=True)),
('source', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='friend_source', to=settings.AUTH_USER_MODEL)),
('target', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='friend_target', to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='FriendRequest',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('body', models.TextField(blank=True, default='', null=True)),
('read', models.BooleanField(default=False)),
('finished', models.BooleanField(default=False)),
('created', models.DateTimeField(auto_now_add=True)),
('source', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='fr_source', to=settings.AUTH_USER_MODEL)),
('target', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='fr_target', to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='Follow',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('created', models.DateTimeField(auto_now_add=True)),
('source', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='follow_source', to=settings.AUTH_USER_MODEL)),
('target', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='follow_target', to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='ConversationInvite',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('body', models.TextField(blank=True, default='', null=True)),
('read', models.BooleanField(default=False)),
('finished', models.BooleanField(default=False)),
('created', models.DateTimeField(auto_now_add=True)),
('conversation', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='closedverse_main.conversation')),
('source', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='convinvite_source', to=settings.AUTH_USER_MODEL)),
('target', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='convinvite_target', to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='Complaint',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('type', models.SmallIntegerField(choices=[(0, 'Bug report'), (1, 'Suggestion'), (2, 'Want')])),
('body', models.TextField(blank=True, default='')),
('sex', models.SmallIntegerField(choices=[(0, 'girl'), (1, 'privileged one'), (2, '(none)')], null=True)),
('created', models.DateTimeField(auto_now_add=True)),
('creator', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='CommunityFavorite',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('created', models.DateTimeField(auto_now_add=True)),
('by', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
('community', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='closedverse_main.community')),
],
),
migrations.AddField(
model_name='comment',
name='community',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='closedverse_main.community'),
),
migrations.AddField(
model_name='comment',
name='creator',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
),
migrations.AddField(
model_name='comment',
name='original_post',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='closedverse_main.post'),
),
migrations.CreateModel(
name='Ban',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('created', models.DateTimeField(auto_now_add=True)),
('reason', models.TextField(blank=True, null=True)),
('expiry_date', models.DateTimeField(help_text='The date and time on which this ban will expire, Set this way off into the future if this ban should be permanent')),
('active', models.BooleanField(default=True, help_text='Untick this to disable this ban')),
('ip_address', models.CharField(blank=True, help_text='Put an IP address in here to make this an IP ban. When using the ban function outside of the Django admin panel, this is filled in automatically.', max_length=256, null=True)),
('by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='banned_by', to=settings.AUTH_USER_MODEL)),
('to', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='banned_user', to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='AuditLog',
fields=[
('id', models.AutoField(primary_key=True, serialize=False)),
('created', models.DateTimeField(auto_now_add=True)),
('type', models.SmallIntegerField(choices=[(0, 'Post delete'), (1, 'Comment delete'), (2, 'User edit'), (3, 'Disable comments'), (4, 'Community edit'), (5, 'Ban user'), (6, 'Edit ban for user')])),
('reasoning', models.TextField(blank=True, default='', null=True)),
('by', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='audit_by', to=settings.AUTH_USER_MODEL)),
('comment', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='audit_comment', to='closedverse_main.comment')),
('community', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='audit_community', to='closedverse_main.community')),
('post', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='audit_post', to='closedverse_main.post')),
('reversed_by', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='audit_reverse_by', to=settings.AUTH_USER_MODEL)),
('user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='audit_user', to=settings.AUTH_USER_MODEL)),
],
),
migrations.AddField(
model_name='user',
name='role',
field=models.ForeignKey(blank=True, help_text="This will show a funny badge and text on this user's profile. This does not grant the user any additional power and is only visual.", null=True, on_delete=django.db.models.deletion.SET_NULL, to='closedverse_main.role'),
),
migrations.AddField(
model_name='user',
name='user_permissions',
field=models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.Permission', verbose_name='user permissions'),
),
]