0001_initial.py 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. # -*- coding: utf-8 -*-
  2. from __future__ import unicode_literals
  3. from django.db import models, migrations
  4. from django.conf import settings
  5. from social_core.utils import setting_name
  6. from ..fields import JSONField
  7. from ..storage import DjangoAssociationMixin, DjangoCodeMixin, \
  8. DjangoNonceMixin, DjangoUserMixin
  9. USER_MODEL = getattr(settings, setting_name('USER_MODEL'), None) or \
  10. getattr(settings, 'AUTH_USER_MODEL', None) or \
  11. 'auth.User'
  12. UID_LENGTH = getattr(settings, setting_name('UID_LENGTH'), 255)
  13. NONCE_SERVER_URL_LENGTH = getattr(
  14. settings, setting_name('NONCE_SERVER_URL_LENGTH'), 255
  15. )
  16. ASSOCIATION_SERVER_URL_LENGTH = getattr(
  17. settings, setting_name('ASSOCIATION_SERVER_URL_LENGTH'), 255
  18. )
  19. ASSOCIATION_HANDLE_LENGTH = getattr(
  20. settings, setting_name('ASSOCIATION_HANDLE_LENGTH'), 255
  21. )
  22. class Migration(migrations.Migration):
  23. replaces = [
  24. ('default', '0001_initial'),
  25. ('social_auth', '0001_initial')
  26. ]
  27. dependencies = [
  28. migrations.swappable_dependency(USER_MODEL),
  29. ]
  30. operations = [
  31. migrations.CreateModel(
  32. name='Association',
  33. fields=[
  34. ('id', models.AutoField(
  35. verbose_name='ID', serialize=False, auto_created=True,
  36. primary_key=True)),
  37. ('server_url',
  38. models.CharField(max_length=ASSOCIATION_SERVER_URL_LENGTH)),
  39. ('handle',
  40. models.CharField(max_length=ASSOCIATION_HANDLE_LENGTH)),
  41. ('secret', models.CharField(max_length=255)),
  42. ('issued', models.IntegerField()),
  43. ('lifetime', models.IntegerField()),
  44. ('assoc_type', models.CharField(max_length=64)),
  45. ],
  46. options={
  47. 'db_table': 'social_auth_association',
  48. },
  49. bases=(
  50. models.Model, DjangoAssociationMixin
  51. ),
  52. ),
  53. migrations.CreateModel(
  54. name='Code',
  55. fields=[
  56. ('id', models.AutoField(
  57. verbose_name='ID', serialize=False, auto_created=True,
  58. primary_key=True)),
  59. ('email', models.EmailField(max_length=75)),
  60. ('code', models.CharField(max_length=32, db_index=True)),
  61. ('verified', models.BooleanField(default=False)),
  62. ],
  63. options={
  64. 'db_table': 'social_auth_code',
  65. },
  66. bases=(models.Model, DjangoCodeMixin),
  67. ),
  68. migrations.CreateModel(
  69. name='Nonce',
  70. fields=[
  71. ('id', models.AutoField(
  72. verbose_name='ID', serialize=False, auto_created=True,
  73. primary_key=True
  74. )),
  75. ('server_url',
  76. models.CharField(max_length=NONCE_SERVER_URL_LENGTH)),
  77. ('timestamp', models.IntegerField()),
  78. ('salt', models.CharField(max_length=65)),
  79. ],
  80. options={
  81. 'db_table': 'social_auth_nonce',
  82. },
  83. bases=(models.Model, DjangoNonceMixin),
  84. ),
  85. migrations.CreateModel(
  86. name='UserSocialAuth',
  87. fields=[
  88. ('id', models.AutoField(
  89. verbose_name='ID', serialize=False, auto_created=True,
  90. primary_key=True)),
  91. ('provider', models.CharField(max_length=32)),
  92. ('uid', models.CharField(max_length=UID_LENGTH)),
  93. ('extra_data', JSONField(default='{}')),
  94. ('user', models.ForeignKey(
  95. related_name='social_auth', to=USER_MODEL, on_delete=models.CASCADE)),
  96. ],
  97. options={
  98. 'db_table': 'social_auth_usersocialauth',
  99. },
  100. bases=(models.Model, DjangoUserMixin),
  101. ),
  102. migrations.AlterUniqueTogether(
  103. name='usersocialauth',
  104. unique_together={('provider', 'uid')},
  105. ),
  106. migrations.AlterUniqueTogether(
  107. name='code',
  108. unique_together={('email', 'code')},
  109. ),
  110. migrations.AlterUniqueTogether(
  111. name='nonce',
  112. unique_together={('server_url', 'timestamp', 'salt')},
  113. ),
  114. ]