1
0

0001_initial.py 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. # Generated by Django 2.2.6 on 2019-11-14 03:43
  2. import django.core.validators
  3. from django.db import migrations, models
  4. import django.db.models.deletion
  5. import re
  6. class Migration(migrations.Migration):
  7. initial = True
  8. dependencies = [
  9. ]
  10. operations = [
  11. migrations.CreateModel(
  12. name='Channel',
  13. fields=[
  14. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  15. ('name', models.CharField(max_length=64)),
  16. ('autojoin', models.BooleanField(default=False, null=True)),
  17. ('key', models.CharField(max_length=32, null=True)),
  18. ],
  19. ),
  20. migrations.CreateModel(
  21. name='Network',
  22. fields=[
  23. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  24. ('name', models.CharField(max_length=40, unique=True, validators=[django.core.validators.MaxLengthValidator(40)])),
  25. ('slug', models.SlugField(unique=True, validators=[django.core.validators.RegexValidator(re.compile('^[-\\w]+\\Z'), "Enter a valid 'slug' consisting of Unicode letters, numbers, underscores, or hyphens.", 'invalid')])),
  26. ('nickname', models.CharField(default='RotBot', max_length=31, validators=[django.core.validators.MaxLengthValidator(31)])),
  27. ('username', models.CharField(default='pyRot', max_length=31, validators=[django.core.validators.MaxLengthValidator(31)])),
  28. ('password', models.CharField(blank=True, max_length=31, null=True, validators=[django.core.validators.MaxLengthValidator(31)])),
  29. ('mail', models.EmailField(max_length=254)),
  30. ('home_channel', models.CharField(default='#RotBot', max_length=64, validators=[django.core.validators.MaxLengthValidator(64)])),
  31. ('command_character', models.CharField(default='!', max_length=1, validators=[django.core.validators.MaxLengthValidator(1)])),
  32. ('help_character', models.CharField(default='@', max_length=1, validators=[django.core.validators.MaxLengthValidator(1)])),
  33. ('enabled', models.BooleanField(default=True)),
  34. ('network_services', models.CharField(choices=[('m', 'Modern network services, like Rizon.'), ('x', 'X bot, like UnderNet.'), ('n', 'None, bare server.')], default='m', max_length=1)),
  35. ('mute', models.BooleanField(default=False)),
  36. ],
  37. options={
  38. 'ordering': ['name'],
  39. },
  40. ),
  41. migrations.CreateModel(
  42. name='User',
  43. fields=[
  44. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  45. ('name', models.CharField(max_length=31)),
  46. ('aliasses', models.ManyToManyField(related_name='_user_aliasses_+', to='rotbot.User')),
  47. ('network', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='rotbot.Network')),
  48. ],
  49. ),
  50. migrations.CreateModel(
  51. name='Message',
  52. fields=[
  53. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  54. ('amount', models.PositiveIntegerField(default=0)),
  55. ('type', models.CharField(choices=[('m', 'Message'), ('a', 'Action'), ('n', 'Notice')], max_length=1)),
  56. ('channel', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='rotbot.Channel')),
  57. ('network', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='rotbot.Network')),
  58. ('user', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='rotbot.User')),
  59. ],
  60. ),
  61. migrations.CreateModel(
  62. name='Kick',
  63. fields=[
  64. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  65. ('amount', models.PositiveIntegerField(default=0)),
  66. ('channel', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='rotbot.Channel')),
  67. ('kicked', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='kicked', to='rotbot.User')),
  68. ('kicker', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='kicker', to='rotbot.User')),
  69. ('network', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='rotbot.Network')),
  70. ],
  71. ),
  72. migrations.CreateModel(
  73. name='Join',
  74. fields=[
  75. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  76. ('amount', models.PositiveIntegerField(default=0)),
  77. ('channel', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='rotbot.Channel')),
  78. ('network', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='rotbot.Network')),
  79. ('user', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='rotbot.User')),
  80. ],
  81. ),
  82. migrations.AddField(
  83. model_name='channel',
  84. name='network',
  85. field=models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, related_name='channel', related_query_name='channels', to='rotbot.Network'),
  86. ),
  87. migrations.CreateModel(
  88. name='Host',
  89. fields=[
  90. ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
  91. ('address', models.CharField(max_length=200, unique=True, validators=[django.core.validators.MaxLengthValidator(200)])),
  92. ('port', models.PositiveSmallIntegerField(default=6697, validators=[django.core.validators.MaxValueValidator(65535)])),
  93. ('ssl', models.BooleanField(default=True)),
  94. ('connection_attempts', models.PositiveIntegerField(default=0)),
  95. ('connection_succeeds', models.PositiveIntegerField(default=0)),
  96. ('network', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='host', related_query_name='hosts', to='rotbot.Network')),
  97. ],
  98. options={
  99. 'unique_together': {('address', 'port')},
  100. 'order_with_respect_to': 'network',
  101. },
  102. ),
  103. ]