· 5 years ago · Feb 26, 2020, 08:32 AM
1AttributeError at /api/v1/profile/eotp/init/
2'str' object has no attribute 'decode'
3
4Request Method: POST
5Request URL: http://webcase.topbet.ua/api/v1/profile/eotp/init/
6Django Version: 2.1
7Python Executable: /home/topbet/topbet/topbet/server/.venv/bin/python3.7
8Python Version: 3.7.3
9Python Path: ['/home/topbet/topbet/topbet/server', '/home/topbet/topbet/topbet/server/.venv/bin', '/home/topbet/topbet/topbet/server/.venv/lib/python37.zip', '/home/topbet/topbet/topbet/server/.venv/lib/python3.7', '/home/topbet/topbet/topbet/server/.venv/lib/python3.7/lib-dynload', '/usr/lib/python3.7', '/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages']
10Server time: Wed, 26 Feb 2020 08:24:33 +0000
11Installed Applications:
12['markup',
13 'shared',
14 'apps.academy',
15 'apps.adds',
16 'apps.bookmakers',
17 'apps.chat',
18 'apps.common',
19 'apps.faq',
20 'apps.handling',
21 'apps.organization',
22 'apps.pages',
23 'apps.payments',
24 'apps.staff',
25 'admin_auto_filters',
26 'adminsortable2',
27 'ckeditor',
28 'ckeditor_uploader',
29 'des',
30 'django_filters',
31 'django_jinja',
32 'jet',
33 'modeltranslation',
34 'parler',
35 'postie',
36 'rest_framework',
37 'rest_framework.authtoken',
38 'rest_framework_recaptcha',
39 'robots',
40 'rosetta',
41 'script_pattern',
42 'seo',
43 'solo',
44 'standards',
45 'subdomains',
46 'vuejs_translate',
47 'django.contrib.admin',
48 'django.contrib.auth',
49 'django.contrib.contenttypes',
50 'qsessions',
51 'django.contrib.messages',
52 'django.contrib.staticfiles',
53 'django.contrib.sites',
54 'allauth',
55 'allauth.account',
56 'allauth.socialaccount',
57 'allauth.socialaccount.providers.google',
58 'allauth.socialaccount.providers.facebook',
59 'allauth.socialaccount.providers.twitter',
60 'rest_auth',
61 'rest_auth.registration',
62 'django_otp',
63 'django_otp.plugins.otp_totp',
64 'django_otp.plugins.otp_email']
65Installed Middleware:
66['django.middleware.security.SecurityMiddleware',
67 'qsessions.middleware.SessionMiddleware',
68 'subdomains.middleware.SubdomainMiddleware',
69 'django.middleware.common.CommonMiddleware',
70 'django.middleware.csrf.CsrfViewMiddleware',
71 'django.middleware.locale.LocaleMiddleware',
72 'django.contrib.auth.middleware.AuthenticationMiddleware',
73 'django_otp.middleware.OTPMiddleware',
74 'django.contrib.messages.middleware.MessageMiddleware',
75 'django.middleware.clickjacking.XFrameOptionsMiddleware',
76 'seo.middleware.url_seo_middleware']
77
78
79Traceback:
80
81File "/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages/django/core/handlers/exception.py" in inner
82 34. response = get_response(request)
83
84File "/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages/django/core/handlers/base.py" in _get_response
85 126. response = self.process_exception_by_middleware(e, request)
86
87File "/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages/django/core/handlers/base.py" in _get_response
88 124. response = wrapped_callback(request, *callback_args, **callback_kwargs)
89
90File "/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages/django/views/decorators/csrf.py" in wrapped_view
91 54. return view_func(*args, **kwargs)
92
93File "/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages/django/views/generic/base.py" in view
94 68. return self.dispatch(request, *args, **kwargs)
95
96File "/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages/rest_framework/views.py" in dispatch
97 505. response = self.handle_exception(exc)
98
99File "/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages/rest_framework/views.py" in handle_exception
100 465. self.raise_uncaught_exception(exc)
101
102File "/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages/rest_framework/views.py" in raise_uncaught_exception
103 476. raise exc
104
105File "/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages/rest_framework/views.py" in dispatch
106 502. response = handler(request, *args, **kwargs)
107
108File "/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages/rest_framework/generics.py" in post
109 190. return self.create(request, *args, **kwargs)
110
111File "/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages/rest_framework/mixins.py" in create
112 19. self.perform_create(serializer)
113
114File "/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages/rest_framework/mixins.py" in perform_create
115 24. serializer.save()
116
117File "/home/topbet/topbet/topbet/server/.venv/lib/python3.7/site-packages/rest_framework/serializers.py" in save
118 212. self.instance = self.create(validated_data)
119
120File "/home/topbet/topbet/topbet/server/apps/staff/serializers/otp.py" in create
121 57. self.otp_service.send_challenge(self.request, self.user)
122
123File "/home/topbet/topbet/topbet/server/apps/staff/services/otp.py" in send_challenge
124 150. self.setup_secrets(request)
125
126File "/home/topbet/topbet/topbet/server/apps/staff/services/otp.py" in setup_secrets
127 82. secret_hex = self.get_secret_hex()
128
129File "/home/topbet/topbet/topbet/server/apps/staff/services/otp.py" in get_secret_hex
130 41. return random_hex(20).decode('ascii')
131
132Exception Type: AttributeError at /api/v1/profile/eotp/init/
133Exception Value: 'str' object has no attribute 'decode'
134Request information:
135USER: Алина (Алина Пейчева)
136
137GET: No GET data
138
139POST: No POST data
140
141FILES: No FILES data
142
143COOKIES:
144csrftoken = 'Wu7bgft5xkmWxevqt1aMo3wYxFL438tbbrKjbmcNfui3ZrbbG4gd6LxHBoRUBXDX'
145sessionid = 'n54wkfbtoriw6rabd0v444kpx88lijhu'
146
147META:
148CONTENT_LENGTH = '0'
149CSRF_COOKIE = 'Wu7bgft5xkmWxevqt1aMo3wYxFL438tbbrKjbmcNfui3ZrbbG4gd6LxHBoRUBXDX'
150HTTP_ACCEPT = 'application/json, text/plain, */*'
151HTTP_ACCEPT_ENCODING = 'gzip, deflate'
152HTTP_ACCEPT_LANGUAGE = 'ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7,uk;q=0.6'
153HTTP_CONNECTION = 'close'
154HTTP_COOKIE = 'csrftoken=Wu7bgft5xkmWxevqt1aMo3wYxFL438tbbrKjbmcNfui3ZrbbG4gd6LxHBoRUBXDX; sessionid=n54wkfbtoriw6rabd0v444kpx88lijhu'
155HTTP_HOST = 'webcase.topbet.ua'
156HTTP_ORIGIN = 'http://webcase.topbet.ua'
157HTTP_REFERER = 'http://webcase.topbet.ua/settings/'
158HTTP_USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.122 Safari/537.36'
159HTTP_X_CSRFTOKEN = 'Wu7bgft5xkmWxevqt1aMo3wYxFL438tbbrKjbmcNfui3ZrbbG4gd6LxHBoRUBXDX'
160HTTP_X_FORWARDED_FOR = '185.248.130.27'
161HTTP_X_FORWARDED_PROTO = 'http'
162HTTP_X_REQUESTED_WITH = 'XMLHttpRequest'
163PATH_INFO = '/api/v1/profile/eotp/init/'
164QUERY_STRING = ''
165RAW_URI = '/api/v1/profile/eotp/init/'
166REMOTE_ADDR = ''
167REQUEST_METHOD = 'POST'
168SCRIPT_NAME = ''
169SERVER_NAME = 'webcase.topbet.ua'
170SERVER_PORT = '80'
171SERVER_PROTOCOL = 'HTTP/1.0'
172SERVER_SOFTWARE = 'gunicorn/20.0.4'
173gunicorn.socket = <gevent._socket3.socket object, fd=10, family=1, type=1, proto=0>
174wsgi.errors = <gunicorn.http.wsgi.WSGIErrorsWrapper object at 0x7f8e63bfc4a8>
175wsgi.file_wrapper = ''
176wsgi.input = <gunicorn.http.body.Body object at 0x7f8e63bfcf60>
177wsgi.input_terminated = True
178wsgi.multiprocess = True
179wsgi.multithread = True
180wsgi.run_once = False
181wsgi.url_scheme = 'http'
182wsgi.version = '(1, 0)'
183
184Settings:
185Using settings module app.settings
186ABSOLUTE_URL_OVERRIDES = {}
187ACCOUNT_ADAPTER = 'apps.staff.adapters.AccountAdapter'
188ACCOUNT_AUTHENTICATION_METHOD = 'username'
189ACCOUNT_CONFIRM_EMAIL_ON_GET = True
190ACCOUNT_DEFAULT_HTTP_PROTOCOL = 'http'
191ACCOUNT_EMAIL_REQUIRED = True
192ACCOUNT_EMAIL_VERIFICATION = 'mandatory'
193ACCOUNT_LOGIN_ON_EMAIL_CONFIRMATION = False
194ACCOUNT_LOGIN_ON_PASSWORD_RESET = '********************'
195ACCOUNT_LOGOUT_ON_GET = True
196ACCOUNT_USERNAME_REQUIRED = True
197ADMINS = []
198ALLOWED_HOSTS = ['157.230.103.229', '.topbet.ua']
199API_RE_PREFIX = '********************'
200APPEND_SLASH = True
201AUTHENTICATION_BACKENDS = "('allauth.account.auth_backends.AuthenticationBackend',)"
202AUTH_PASSWORD_VALIDATORS = '********************'
203AUTH_USER_MODEL = 'staff.CustomUser'
204BASE_DIR = PosixPath('/home/topbet/topbet/topbet/server/app/settings/default.py')
205BASE_ROOT = PosixPath('/home/topbet/topbet/topbet/server/app')
206CACHES = {'default': {'BACKEND': 'django_redis.cache.RedisCache', 'LOCATION': 'redis://127.0.0.1:6379/1'}}
207CACHE_MIDDLEWARE_ALIAS = 'default'
208CACHE_MIDDLEWARE_KEY_PREFIX = '********************'
209CACHE_MIDDLEWARE_SECONDS = 600
210CELERY_ACCEPT_CONTENT = ['json']
211CELERY_BROKER_URL = 'redis://127.0.0.1:6379/0'
212CELERY_RESULT_SERIALIZER = 'json'
213CELERY_TASK_SERIALIZER = 'json'
214CKEDITOR_CONFIGS = {'default': {'skin': 'office2013', 'CKEDITOR_BROWSE_SHOW_DIRS': True, 'toolbar_Basic': [['Source', '-', 'Bold', 'Italic']], 'toolbar_YourCustomToolbarConfig': [{'name': 'document', 'items': ['Source', '-', 'Save', 'NewPage', 'Preview', 'Print', '-', 'Templates']}, {'name': 'clipboard', 'items': ['Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', '-', 'Undo', 'Redo']}, {'name': 'editing', 'items': ['Find', 'Replace', '-', 'SelectAll']}, {'name': 'forms', 'items': ['Form', 'Checkbox', 'Radio', 'TextField', 'Textarea', 'Select', 'Button', 'ImageButton', 'HiddenField']}, '/', {'name': 'basicstyles', 'items': ['Bold', 'Italic', 'Underline', 'Strike', 'Subscript', 'Superscript', '-', 'RemoveFormat']}, {'name': 'paragraph', 'items': ['NumberedList', 'BulletedList', '-', 'Outdent', 'Indent', '-', 'Blockquote', 'CreateDiv', '-', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock', '-', 'BidiLtr', 'BidiRtl', 'Language']}, {'name': 'links', 'items': ['Link', 'Unlink', 'Anchor']}, {'name': 'insert', 'items': ['Image', 'Flash', 'Table', 'HorizontalRule', 'Smiley', 'SpecialChar', 'PageBreak', 'Iframe']}, '/', {'name': 'styles', 'items': ['Styles', 'Format', 'Font', 'FontSize']}, {'name': 'colors', 'items': ['TextColor', 'BGColor']}, {'name': 'tools', 'items': ['Maximize', 'ShowBlocks']}, {'name': 'about', 'items': ['About']}, '/', {'name': 'yourcustomtools', 'items': ['Preview', 'Maximize']}], 'toolbar': 'YourCustomToolbarConfig', 'tabSpaces': 4, 'extraPlugins': 'uploadimage,div,autolink,autoembed,embedsemantic,widget,lineutils,clipboard,dialog,dialogui,elementspath,uploadwidget'}}
215CKEDITOR_UPLOAD_PATH = ''
216CRUMBS_HOME_URL_NAME = 'pages:index'
217CSRF_COOKIE_AGE = 31449600
218CSRF_COOKIE_DOMAIN = 'topbet.ua'
219CSRF_COOKIE_HTTPONLY = False
220CSRF_COOKIE_NAME = 'csrftoken'
221CSRF_COOKIE_PATH = '/'
222CSRF_COOKIE_SAMESITE = 'Lax'
223CSRF_COOKIE_SECURE = False
224CSRF_FAILURE_VIEW = 'django.views.csrf.csrf_failure'
225CSRF_HEADER_NAME = 'HTTP_X_CSRFTOKEN'
226CSRF_TRUSTED_ORIGINS = []
227CSRF_USE_SESSIONS = False
228DATABASES = {'default': {'NAME': 'topbet_db', 'USER': 'topbet_db', 'PASSWORD': '********************', 'HOST': '127.0.0.1', 'PORT': 5432, 'ENGINE': 'django.db.backends.postgresql', 'CONN_MAX_AGE': 0, 'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'OPTIONS': {}, 'TIME_ZONE': None, 'TEST': {'CHARSET': None, 'COLLATION': None, 'NAME': None, 'MIRROR': None}}}
229DATABASE_ROUTERS = []
230DATA_UPLOAD_MAX_MEMORY_SIZE = 2621440
231DATA_UPLOAD_MAX_NUMBER_FIELDS = 1000
232DATETIME_FORMAT = '%d.%m.%Y, %H:%M:%S'
233DATETIME_INPUT_FORMATS = ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M', '%m/%d/%y']
234DATE_FORMAT = '%d.%m.%Y'
235DATE_INPUT_FORMATS = ['%d.%m.%Y', '%d.%m.%y', '%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y']
236DEBUG = 'True'
237DEBUG_PROPAGATE_EXCEPTIONS = False
238DEBUG_TOOLBAR_CONFIG = {'SHOW_COLLAPSED': True, 'SHOW_TOOLBAR_CALLBACK': <function <lambda> at 0x7f8e6964b1e0>}
239DECIMAL_SEPARATOR = '.'
240DEFAULT_CHARSET = 'utf-8'
241DEFAULT_CONTENT_TYPE = 'text/html'
242DEFAULT_EXCEPTION_REPORTER_FILTER = 'django.views.debug.SafeExceptionReporterFilter'
243DEFAULT_EXTENSIONS = ['jinja2.ext.do', 'jinja2.ext.loopcontrols', 'jinja2.ext.with_', 'jinja2.ext.i18n', 'jinja2.ext.autoescape', 'django_jinja.builtins.extensions.DebugExtension', 'django_jinja.builtins.extensions.CsrfExtension', 'django_jinja.builtins.extensions.CacheExtension', 'django_jinja.builtins.extensions.TimezoneExtension', 'django_jinja.builtins.extensions.UrlsExtension', 'django_jinja.builtins.extensions.StaticFilesExtension', 'django_jinja.builtins.extensions.DjangoFiltersExtension']
244DEFAULT_FILE_STORAGE = 'django.core.files.storage.FileSystemStorage'
245DEFAULT_FROM_EMAIL = 'admin@admin.admin'
246DEFAULT_INDEX_TABLESPACE = ''
247DEFAULT_TABLESPACE = ''
248DISALLOWED_USER_AGENTS = []
249DRF_RECAPTCHA_PUBLIC_KEY = '********************'
250DRF_RECAPTCHA_SECRET_KEY = '********************'
251DRF_RECAPTCHA_VERIFY_ENDPOINT = 'https://www.google.com/recaptcha/api/siteverify'
252EMAIL_BACKEND = 'des.backends.ConfiguredEmailBackend'
253EMAIL_CONFIG = {'EMAIL_FILE_PATH': '', 'EMAIL_HOST_USER': None, 'EMAIL_HOST_PASSWORD': '********************', 'EMAIL_HOST': '127.0.0.1', 'EMAIL_PORT': None, 'EMAIL_BACKEND': 'django.core.mail.backends.console.EmailBackend'}
254EMAIL_FILE_PATH = ''
255EMAIL_HOST = '127.0.0.1'
256EMAIL_HOST_PASSWORD = '********************'
257EMAIL_HOST_USER = None
258EMAIL_PORT = None
259EMAIL_SSL_CERTFILE = None
260EMAIL_SSL_KEYFILE = '********************'
261EMAIL_SUBJECT_PREFIX = '[Django] '
262EMAIL_TIMEOUT = None
263EMAIL_USE_LOCALTIME = False
264EMAIL_USE_SSL = False
265EMAIL_USE_TLS = False
266FILE_CHARSET = 'utf-8'
267FILE_UPLOAD_DIRECTORY_PERMISSIONS = None
268FILE_UPLOAD_HANDLERS = ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler']
269FILE_UPLOAD_MAX_MEMORY_SIZE = 2621440
270FILE_UPLOAD_PERMISSIONS = None
271FILE_UPLOAD_TEMP_DIR = None
272FIRST_DAY_OF_WEEK = 0
273FIXTURE_DIRS = []
274FORCE_SCRIPT_NAME = None
275FORMAT_MODULE_PATH = None
276FORM_RENDERER = 'django.forms.renderers.DjangoTemplates'
277IGNORABLE_404_URLS = []
278INSTALLED_APPS = ['markup', 'shared', 'apps.academy', 'apps.adds', 'apps.bookmakers', 'apps.chat', 'apps.common', 'apps.faq', 'apps.handling', 'apps.organization', 'apps.pages', 'apps.payments', 'apps.staff', 'admin_auto_filters', 'adminsortable2', 'ckeditor', 'ckeditor_uploader', 'des', 'django_filters', 'django_jinja', 'jet', 'modeltranslation', 'parler', 'postie', 'rest_framework', 'rest_framework.authtoken', 'rest_framework_recaptcha', 'robots', 'rosetta', 'script_pattern', 'seo', 'solo', 'standards', 'subdomains', 'vuejs_translate', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'qsessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sites', 'allauth', 'allauth.account', 'allauth.socialaccount', 'allauth.socialaccount.providers.google', 'allauth.socialaccount.providers.facebook', 'allauth.socialaccount.providers.twitter', 'rest_auth', 'rest_auth.registration', 'django_otp', 'django_otp.plugins.otp_totp', 'django_otp.plugins.otp_email']
279INTERNAL_IPS = []
280LANGUAGES = "(('en', 'English'), ('ru', 'Russian'), ('uk', 'Ukrainian'))"
281LANGUAGES_BIDI = ['he', 'ar', 'fa', 'ur']
282LANGUAGE_CODE = 'en'
283LANGUAGE_COOKIE_AGE = None
284LANGUAGE_COOKIE_DOMAIN = None
285LANGUAGE_COOKIE_NAME = 'django_language'
286LANGUAGE_COOKIE_PATH = '/'
287LOCALE_PATHS = "(PosixPath('/home/topbet/topbet/topbet/server/app/locale'),)"
288LOGGING = {'version': 1, 'disable_existing_loggers': False, 'handlers': {'console': {'level': 'DEBUG', 'class': 'logging.StreamHandler'}, 'logfile': {'level': 'DEBUG', 'class': 'logging.FileHandler', 'filename': PosixPath('/home/topbet/topbet/topbet/server/app/settings/default.py/../logfile.log')}}, 'root': {'level': 'INFO', 'handlers': ['console', 'logfile']}}
289LOGGING_CONFIG = 'logging.config.dictConfig'
290LOGIN_REDIRECT_URL = '/auth/login/'
291LOGIN_URL = '/#auth'
292LOGOUT_REDIRECT_URL = None
293MANAGERS = []
294MEDIA_ROOT = PosixPath('/home/topbet/topbet/topbet/server/app/uploads')
295MEDIA_URL = '/uploads/'
296MESSAGE_STORAGE = 'django.contrib.messages.storage.fallback.FallbackStorage'
297MIDDLEWARE = ['django.middleware.security.SecurityMiddleware', 'qsessions.middleware.SessionMiddleware', 'subdomains.middleware.SubdomainMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.middleware.locale.LocaleMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django_otp.middleware.OTPMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'seo.middleware.url_seo_middleware']
298MIGRATION_MODULES = {}
299MONTH_DAY_FORMAT = 'F j'
300NUMBER_GROUPING = 0
301OLD_PASSWORD_FIELD_ENABLED = '********************'
302PARLER_DEFAULT_LANGUAGE_CODE = 'en'
303PARLER_LANGUAGES = {None: ({'code': 'en', 'fallbacks': ['en'], 'hide_untranslated': False}, {'code': 'ru', 'fallbacks': ['en'], 'hide_untranslated': False}, {'code': 'uk', 'fallbacks': ['en'], 'hide_untranslated': False}), 'default': {'fallbacks': ['en'], 'hide_untranslated': False, 'code': 'en'}}
304PASSWORD_HASHERS = '********************'
305PASSWORD_RESET_TIMEOUT_DAYS = '********************'
306POSTIE_HTML_ADMIN_WIDGET = {'widget': 'CKEditorUploadingWidget', 'widget_module': 'ckeditor_uploader.widgets', 'attrs': {}}
307POSTIE_INSTANT_SEND = False
308POSTIE_TEMPLATE_CHOICES = Choices(('confirm_email__user', 'confirm_email__user', 'Confirm email (user)'), ('password_reset_confirm__user', 'password_reset_confirm__user', 'Confirm password reset (user)'), ('otp_email__user', 'otp_email__user', 'OTP email (user)'), ('question_handling__admin', 'question_handling__admin', 'Question handling (admin)'), ('payout_created__admin', 'payout_created__admin', 'Payout created (admin)'))
309POSTIE_TEMPLATE_CONTEXTS = {'confirm_email__user': {'login': 'Login', 'name': 'Name', 'link': 'Confirmation link'}, 'password_reset_confirm__user': '********************', 'otp_email__user': {'token': '********************'}, 'question_handling__admin': {'name': 'Name', 'email': 'Email', 'question': 'Question', 'link': 'Link'}, 'payout_created__admin': {'fio': 'FIO', 'amount': 'Amount', 'link': 'Link'}}
310PREPEND_WWW = False
311PROJECT_APPS = ['markup', 'shared', 'apps.academy', 'apps.adds', 'apps.bookmakers', 'apps.chat', 'apps.common', 'apps.faq', 'apps.handling', 'apps.organization', 'apps.pages', 'apps.payments', 'apps.staff']
312REST_FRAMEWORK = {'DEFAULT_FILTER_BACKENDS': ['django_filters.rest_framework.DjangoFilterBackend'], 'DEFAULT_METADATA_CLASS': 'standards.drf.metadata.FieldsetMetadata', 'DEFAULT_PAGINATION_CLASS': 'standards.drf.pagination.LimitOffsetPagination', 'DEFAULT_PARSER_CLASSES': ('djangorestframework_camel_case.parser.CamelCaseFormParser', 'djangorestframework_camel_case.parser.CamelCaseMultiPartParser', 'djangorestframework_camel_case.parser.CamelCaseJSONParser'), 'DEFAULT_RENDERER_CLASSES': ('djangorestframework_camel_case.render.CamelCaseJSONRenderer', 'djangorestframework_camel_case.render.CamelCaseBrowsableAPIRenderer'), 'EXCEPTION_HANDLER': 'standards.drf.handlers.exception_handler', 'SEARCH_PARAM': 's'}
313ROOT_URLCONF = 'app.urls'
314ROSETTA_SHOW_AT_ADMIN_PANEL = True
315SECRET_KEY = '********************'
316SECURE_BROWSER_XSS_FILTER = False
317SECURE_CONTENT_TYPE_NOSNIFF = False
318SECURE_HSTS_INCLUDE_SUBDOMAINS = False
319SECURE_HSTS_PRELOAD = False
320SECURE_HSTS_SECONDS = 0
321SECURE_PROXY_SSL_HEADER = None
322SECURE_REDIRECT_EXEMPT = []
323SECURE_SSL_HOST = None
324SECURE_SSL_REDIRECT = False
325SEO_HTML_ADMIN_WIDGET = {'widget': 'CKEditorUploadingWidget', 'widget_path': 'ckeditor_uploader.widgets'}
326SEO_MODELS = []
327SEO_USE_URL_FULL_PATH = True
328SEO_USE_URL_SEO = True
329SERVER_EMAIL = 'root@localhost'
330SESSION_CACHE_ALIAS = 'default'
331SESSION_COOKIE_AGE = 1209600
332SESSION_COOKIE_DOMAIN = 'topbet.ua'
333SESSION_COOKIE_HTTPONLY = True
334SESSION_COOKIE_NAME = 'sessionid'
335SESSION_COOKIE_PATH = '/'
336SESSION_COOKIE_SAMESITE = 'Lax'
337SESSION_COOKIE_SECURE = False
338SESSION_ENGINE = 'qsessions.backends.cached_db'
339SESSION_EXPIRE_AT_BROWSER_CLOSE = False
340SESSION_FILE_PATH = None
341SESSION_SAVE_EVERY_REQUEST = False
342SESSION_SERIALIZER = 'django.contrib.sessions.serializers.JSONSerializer'
343SETTINGS_MODULE = 'app.settings'
344SHORT_DATETIME_FORMAT = 'm/d/Y P'
345SHORT_DATE_FORMAT = 'm/d/Y'
346SIGNING_BACKEND = 'django.core.signing.TimestampSigner'
347SILENCED_SYSTEM_CHECKS = []
348SITE_ID = 1
349SOCIALACCOUNT_ADAPTER = 'apps.staff.adapters.SocialAccountAdapter'
350SOCIALACCOUNT_EMAIL_VERIFICATION = False
351SOCIALACCOUNT_PROVIDERS = {'google': {'SCOPE': ['profile', 'email'], 'AUTH_PARAMS': {'access_type': 'online'}}, 'facebook': {'METHOD': 'oauth2', 'SCOPE': ['email', 'public_profile'], 'AUTH_PARAMS': {}, 'FIELDS': ['id', 'email', 'name', 'first_name', 'last_name', 'verified', 'locale', 'timezone', 'link'], 'EXCHANGE_TOKEN': '********************', 'VERIFIED_EMAIL': True, 'VERSION': 'v3.3'}}
352STATICFILES_DIRS = []
353STATICFILES_FINDERS = ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder']
354STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.StaticFilesStorage'
355STATIC_ROOT = PosixPath('/home/topbet/topbet/topbet/server/app/static')
356STATIC_URL = '/static/'
357SUBDOMAIN_URLCONFS = {}
358TEMPLATES = [{'BACKEND': 'django_jinja.backend.Jinja2', 'NAME': 'jinja2', 'APP_DIRS': True, 'DIRS': [], 'OPTIONS': {'environment': 'shared.env.jinja2.environment', 'match_extension': '.jinja', 'newstyle_gettext': True, 'auto_reload': True, 'undefined': <class 'jinja2.runtime.Undefined'>, 'debug': True, 'filters': {}, 'globals': {}, 'context_processors': ['django.contrib.auth.context_processors.auth', 'django.template.context_processors.debug', 'django.template.context_processors.i18n', 'django.template.context_processors.media', 'django.template.context_processors.static', 'django.template.context_processors.tz', 'django.contrib.messages.context_processors.messages'], 'extensions': ['jinja2.ext.do', 'jinja2.ext.loopcontrols', 'jinja2.ext.with_', 'jinja2.ext.i18n', 'jinja2.ext.autoescape', 'django_jinja.builtins.extensions.DebugExtension', 'django_jinja.builtins.extensions.CsrfExtension', 'django_jinja.builtins.extensions.CacheExtension', 'django_jinja.builtins.extensions.TimezoneExtension', 'django_jinja.builtins.extensions.UrlsExtension', 'django_jinja.builtins.extensions.StaticFilesExtension', 'django_jinja.builtins.extensions.DjangoFiltersExtension'], 'bytecode_cache': {'name': 'default', 'backend': 'django_jinja.cache.BytecodeCache', 'enabled': True}}}, {'DIRS': [], 'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'OPTIONS': {'context_processors': ['django.template.context_processors.media', 'django.template.context_processors.static', 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.messages.context_processors.messages', 'django.contrib.auth.context_processors.auth']}}]
359TEST_NON_SERIALIZED_APPS = []
360TEST_RUNNER = 'django.test.runner.DiscoverRunner'
361THOUSAND_SEPARATOR = ','
362TIME_FORMAT = 'P'
363TIME_INPUT_FORMATS = ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']
364TIME_ZONE = 'UTC'
365USE_I18N = True
366USE_L10N = True
367USE_THOUSAND_SEPARATOR = False
368USE_TZ = True
369USE_X_FORWARDED_HOST = False
370USE_X_FORWARDED_PORT = False
371WSGI_APPLICATION = 'app.wsgi.application'
372X_FRAME_OPTIONS = 'SAMEORIGIN'
373YEAR_MONTH_FORMAT = 'F Y'
374
375
376You're seeing this error because you have DEBUG = True in your
377Django settings file. Change that to False, and Django will
378display a standard page generated by the handler for this status code.