from pathlib import Path import os from decouple import config # Build paths inside the project like this: BASE_DIR / 'subdir'. BASE_DIR = Path(__file__).resolve().parent.parent ROOT_DIR = BASE_DIR.parent.parent.parent PROJECT_DIR = BASE_DIR.parent LOG_ROOT = ROOT_DIR / 'var' / 'log' RUN_ROOT = ROOT_DIR / 'var' / 'run' TMP_ROOT = ROOT_DIR / 'var' / 'tmp' MEDIA_ROOT = PROJECT_DIR / 'media' MEDIA_URL = 'media/' STATIC_ROOT = PROJECT_DIR / 'static' STATIC_URL = 'static/' # SECURITY WARNING: keep the secret key used in production secret! SECRET_KEY = config('SECRET_KEY') # SECURITY WARNING: don't run with debug turned on in production! DEBUG = True ALLOWED_HOSTS = ['*'] CORS_ORIGIN_ALLOW_ALL = True # Application definition INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'rest_framework', 'corsheaders', 'rest_framework_simplejwt', 'rest_framework.authtoken', 'news', 'rubricks', 'audio', 'account', 'config_site' ] MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'corsheaders.middleware.CorsMiddleware', ] ROOT_URLCONF = 'conf.urls' TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], }, }, ] WSGI_APPLICATION = 'conf.wsgi.application' AUTH_PASSWORD_VALIDATORS = [ { 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', }, { 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', }, { 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', }, { 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', }, ] # Internationalization # https://docs.djangoproject.com/en/5.0/topics/i18n/ LANGUAGE_CODE = 'en-us' TIME_ZONE = 'UTC' USE_I18N = True USE_TZ = True DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' AUTH_USER_MODEL = 'account.MyUser' ROTATE_LOG_SIZE = 15 * 1024 * 1024 ROTATE_LOG_COUNT = 10 LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'formatters': { 'verbose': { 'format': '{levelname} {asctime} {module}:{lineno} {message}', 'style': '{', 'datefmt': '%Y-%m-%d %H:%M:%S', }, 'extended': { 'format': '{levelname} {asctime} {message}', 'style': '{', 'datefmt': '%Y-%m-%d %H:%M:%S', }, 'simple': { 'format': '{levelname} {message}', 'style': '{', }, }, } REST_FRAMEWORK = { 'DEFAULT_PERMISSION_CLASSES': [ 'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly' ], 'DEFAULT_AUTHENTICATION_CLASSES': ( 'rest_framework_simplejwt.authentication.JWTAuthentication', 'rest_framework_simplejwt.authentication.JWTStatelessUserAuthentication', ), 'DEFAULT_SCHEMA_CLASS': 'rest_framework.schemas.coreapi.AutoSchema' } CORS_ALLOWED_ORIGINS = [ 'http://localhost:5173', # Adjust the port if your Vue app is served on a different one 'http://127.0.0.1:5173', ] from datetime import timedelta SIMPLE_JWT = { 'ACCESS_TOKEN_LIFETIME': timedelta(days=1), 'REFRESH_TOKEN_LIFETIME': timedelta(days=30), } CORS_ALLOW_CREDENTIALS = True CORS_ALLOWED_ORIGINS = [ 'http://localhost:5173', ] MIN_LEN_PASSWORD = 8 ###AZURACAST CONFIG### AZURACAST_URL = 'https://azuracast.itradio.team/' AZURACAST_API_KEY = config('AZURACAST_API_KEY') """ ACCOUNT_EMAIL_CONFIRMATION_EXPIRE_DAYS = 1 ACCOUNT_USERNAME_MIN_LENGTH = 4 LOGIN_REDIRECT_URL = "/" SITE_ID = 3 EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST = 'smtp.timeweb.ru' EMAIL_PORT = 25 EMAIL_HOST_USER = 'mail@flexidev.ru' EMAIL_HOST_PASSWORD = 'gea(X7i(?=e@L/' DEFAULT_FROM_EMAIL = EMAIL_HOST_USER EMAIL_USE_SSL = True EMAIL_USE_TLS = False EMAIL_USE_SSL = False """