U
    [1thS                     @   s  d Z ddlmZ ddlmZmZ ddlmZ ee	
 jjZeddedZedd	edZed
de dZdddddddgZddddddgZdddddddd d!d"d#gZee e Zd$d%d&d'd(d)d*d+gZd,d-d.gZee Zd/Zd0ed1 gd2d3d4d5d6d7d8d9gid:gZd;Zd<d=ed>d?d@edAdBd@edCdDd@edEdFd@edGdHededIdJededKdLd@dMdNdOdPidQ	iZdOdRidSdTdUidVdOdWidOdXigZdYZedZ Z ed[ gZ!d\Z"ed] Z#d^Z$d_Z%d`Z&daZ'd`Z(edbdcedZ)dddegdfgdgdhdidjdkgdldmgdnZ*edodpe dZ+edqd2edZ,edrd2edZ-dsZ.dtZ/d2Z0d2Z1d2Z2d2Z3eedudvd@Z4d2Z5dwZ6edxdyd@Z7edzdyd@Z8d{gZ9d{Z:d{Z;e/Z<dcd	d|d}d~did|gd}ddZ=eddd@eddd@dZ>eddd@Z?edd2edZ@dZAeddedZBedd2edZCedd2edZDedd2edZEedd2edZFedd2edZGedd2edZHedd2edZIedd	edZJeddd@ZKeddd@ZLd	ZMedde dZNd2ZOd2ZPeddd@ZQeddd@ZReddd@ZSeddd@ZTddlUZUed ZVeUjWeVd2d dcd	dddddddd|d}d~ddid|gd}ddd|gd}d	didZ=esteddedZBedd2edZCedd2edZDedd2edZ@dZAd2ZGd2ZHd2ZId2ZJd2ZEd2ZFdZXdZSdcd	ddddddddddiid}dgd~ddd}ddddddd|gid|gedd}d@d	dd|gd}d	dddZ=edd2edZYeddJedZZeddedZ[eddedZ\edd2edZ]edd2edZ^edode dZ+edrd2edZ-dOdRidSdTdUidVdOdWidOdXigZeddedZ_eddedZ`dZadS )a  
Django settings for Adtlas DAI Management System.

This file contains all the configuration settings for the Adtlas project.
The project is designed for Dynamic Ad Insertion (DAI) management in broadcast television.

Generated by "django-admin startproject" using Django 5.2.3.

For more information on this file, see
https://docs.djangoproject.com/en/5.2/topics/settings/

For the full list of settings and their values, see
https://docs.djangoproject.com/en/5.2/ref/settings/
    )Path)configCsv)gettext_lazy
SECRET_KEYzBdjango-insecure-x+fk6m*$@q4c+3g5ta*$89_stqgegxxlmt42fe5pt$wb)m11-h)defaultcastDEBUGFALLOWED_HOSTSz-localhost,127.0.0.1,0.0.0.0,173.212.199.208,_zdjango.contrib.adminzdjango.contrib.authzdjango.contrib.contenttypeszdjango.contrib.sessionszdjango.contrib.messageszdjango.contrib.staticfileszdjango.contrib.sitesZrest_frameworkZcorsheadersZdjango_filtersZdjango_extensionsZdjango_celery_beatZdjango_celery_resultszapps.commonz	apps.corezapps.accountszapps.authenticationzapps.activitieszapps.channelszapps.advertiserszapps.campaignszapps.playlistszapps.analyticsz	apps.vastz%corsheaders.middleware.CorsMiddlewarez-django.middleware.security.SecurityMiddlewarez4django.contrib.sessions.middleware.SessionMiddlewarez)django.middleware.common.CommonMiddlewarez)django.middleware.csrf.CsrfViewMiddlewarez7django.contrib.auth.middleware.AuthenticationMiddlewarez4django.contrib.messages.middleware.MessageMiddlewarez6django.middleware.clickjacking.XFrameOptionsMiddlewarez:django_session_timeout.middleware.SessionTimeoutMiddlewarez0apps.common.middleware.SecurityHeadersMiddlewarez.apps.common.middleware.TrustedOriginMiddlewarez	core.urlsz/django.template.backends.django.DjangoTemplates	templatesTcontext_processorsz(django.template.context_processors.debugz*django.template.context_processors.requestz+django.contrib.auth.context_processors.authz3django.contrib.messages.context_processors.messagesz(django.template.context_processors.mediaz)django.template.context_processors.static)BACKENDDIRSAPP_DIRSOPTIONSzcore.wsgi.applicationr   zdjango.db.backends.postgresqlZDB_NAMEZ	adtlas_db)r   ZDB_USERZadtlas_userZDB_PASSWORDZadtlas_passwordZDB_HOST	localhostZDB_PORTZ5432ZDB_CONN_MAX_AGE<   Z
DB_SSLMODEprefer
   )Zsslmodeconnect_timeoutNAMEZtest_adtlas_db)	ENGINEr   USERPASSWORDHOSTPORTCONN_MAX_AGEr   TESTzHdjango.contrib.auth.password_validation.UserAttributeSimilarityValidatorz>django.contrib.auth.password_validation.MinimumLengthValidator
min_length   )r   r   z?django.contrib.auth.password_validation.CommonPasswordValidatorz@django.contrib.auth.password_validation.NumericPasswordValidatorz/static/staticfilesstaticz/media/mediazdjango.db.models.BigAutoFieldzaccounts.Userz
auth:loginzcore:dashboardSITE_ID   z3rest_framework.authentication.SessionAuthenticationz1rest_framework.authentication.TokenAuthenticationz*rest_framework.permissions.IsAuthenticatedz.rest_framework.pagination.PageNumberPagination   z1django_filters.rest_framework.DjangoFilterBackendz#rest_framework.filters.SearchFilterz%rest_framework.filters.OrderingFilterz%rest_framework.renderers.JSONRendererz-rest_framework.renderers.BrowsableAPIRenderer)ZDEFAULT_AUTHENTICATION_CLASSESZDEFAULT_PERMISSION_CLASSESZDEFAULT_PAGINATION_CLASSZ	PAGE_SIZEZDEFAULT_FILTER_BACKENDSZDEFAULT_RENDERER_CLASSESCORS_ALLOWED_ORIGINSzWhttp://localhost:3000,http://127.0.0.1:3000,http://localhost:8080,http://127.0.0.1:8080CORS_ALLOW_ALL_ORIGINSCORS_ALLOW_CREDENTIALSzen-usUTCSESSION_EXPIRE_SECONDSZ7200z/auth/login/CELERY_BROKER_URLzredis://redis:6379/0CELERY_RESULT_BACKENDjsonconsoleINFOzlogging.StreamHandler)levelclass)handlersr0   )versiondisable_existing_loggersr2   rootZTELEGRAM_BOT_TOKEN ZTELEGRAM_CHANNEL_NAMEZ	adtlasbot)Z	bot_tokenZchannel_nameAPP_URLz/adtlas/SECURE_SSL_REDIRECT)ZHTTP_X_FORWARDED_PROTOhttpsSECURE_HSTS_SECONDSi3SECURE_HSTS_INCLUDE_SUBDOMAINSSECURE_HSTS_PRELOADSECURE_CONTENT_TYPE_NOSNIFFSECURE_BROWSER_XSS_FILTERSESSION_COOKIE_SECURECSRF_COOKIE_SECURESESSION_COOKIE_HTTPONLYCSRF_COOKIE_HTTPONLYSESSION_COOKIE_SAMESITELaxCSRF_COOKIE_SAMESITECSRF_TRUSTED_ORIGINSzfhttps://localhost:8000,https://127.0.0.1:8000,https://173.212.199.208:8090,http://173.212.199.208:8090!SECURE_CROSS_ORIGIN_OPENER_POLICYzsame-origin#SECURE_CROSS_ORIGIN_EMBEDDER_POLICYzrequire-corpSECURE_REFERRER_POLICYzstrict-origin-when-cross-originSECURE_PERMISSIONS_POLICYz(geolocation=(), microphone=(), camera=()NZlogs)exist_okz?{levelname} {asctime} {module} {process:d} {thread:d} {message}{)formatstylez{levelname} {message})verbosesimplerP   )r0   r1   	formatterdjango)r2   r0   	propagate)r3   r4   
formattersr2   r5   loggersDENYrequire_debug_truez()z!django.utils.log.RequireDebugTrue)r0   filtersr1   rQ   zlogging.FileHandlerz/app/logs/django.logrO   )r0   r1   filenamerQ   )r.   filer2   ZDJANGO_LOG_LEVEL)rR   apps)r3   r4   rT   rX   r2   r5   rU   RATE_LIMIT_ENABLERATE_LIMIT_PER_MINUTERATE_LIMIT_PER_HOURi  SESSION_COOKIE_AGEiQ SESSION_EXPIRE_AT_BROWSER_CLOSESESSION_SAVE_EVERY_REQUESTzhttp://localhost:3000FILE_UPLOAD_MAX_MEMORY_SIZEi  ( DATA_UPLOAD_MAX_MEMORY_SIZEi  )b__doc__pathlibr   Zdecoupler   r   django.utils.translationr   ___file__resolveparentZBASE_DIRstrr   boolr	   r
   ZDJANGO_APPSZTHIRD_PARTY_APPSZ
LOCAL_APPSINSTALLED_APPSZDJANGO_MIDDLEWAREZLOCAL_MIDDLEWARE
MIDDLEWAREROOT_URLCONF	TEMPLATESWSGI_APPLICATIONint	DATABASESAUTH_PASSWORD_VALIDATORS
STATIC_URLSTATIC_ROOTSTATICFILES_DIRS	MEDIA_URL
MEDIA_ROOTDEFAULT_AUTO_FIELDAUTH_USER_MODEL	LOGIN_URLLOGIN_REDIRECT_URLLOGOUT_REDIRECT_URLr#   ZREST_FRAMEWORKr&   r'   r(   LANGUAGE_CODE	TIME_ZONEUSE_I18NUSE_L10NUSE_TZUSE_THOUSAND_SEPARATORr*   Z"SESSION_EXPIRE_AFTER_LAST_ACTIVITYZSESSION_TIMEOUT_REDIRECTr+   r,   ZCELERY_ACCEPT_CONTENTZCELERY_TASK_SERIALIZERZCELERY_RESULT_SERIALIZERZCELERY_TIMEZONELOGGINGZTELEGRAMr7   r8   SECURE_PROXY_SSL_HEADERr:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rE   CSRF_USE_SESSIONSrF   USE_X_FORWARDED_HOSTUSE_X_FORWARDED_PORTrG   rH   rI   rJ   osZLOGS_DIRmakedirsX_FRAME_OPTIONSr\   r]   r^   r_   r`   ra   rb   rc   FILE_UPLOAD_PERMISSIONS r   r   )/var/www/html/Adtlas/src/core/settings.py<module>   sF  
$




     
		

&  
6	    