src/irinotes/settings.py
author salimr <riwad.salim@yahoo.fr>
Mon, 08 Oct 2018 04:09:19 +0200
changeset 161 a642639dbc07
parent 142 56850f5c73f6
child 178 89d8432aad9f
permissions -rw-r--r--
Split scss files and adapt session page design
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
"""
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
Django settings for irinotes project.
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
Generated by 'django-admin startproject' using Django 1.11.2.
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
For more information on this file, see
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
https://docs.djangoproject.com/en/1.11/topics/settings/
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
For the full list of settings and their values, see
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
https://docs.djangoproject.com/en/1.11/ref/settings/
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
"""
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
60
42c07d428747 on server, augment default token lifetime and add settings in .env to control it. Add the refresh endpoint
ymh <ymh.work@gmail.com>
parents: 59
diff changeset
    13
import datetime
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
import logging
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
129
d48946d164c6 Add a first version of synchronisation
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
    16
from corsheaders.defaults import default_headers
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
from decouple import Csv, config
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
from dj_database_url import parse as db_url
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
from unipath import Path
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
BASE_DIR = Path(__file__).parent
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
RUN_DIR = BASE_DIR.parent.child('run')
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    25
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    26
STATIC_ROOT = config('STATIC_ROOT', default=RUN_DIR.child('web').child('static'))
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    27
MEDIA_ROOT = config('MEDIA_ROOT', default=RUN_DIR.child('web').child('media'))
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    28
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    29
# base url
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    30
BASE_URL = config('BASE_URL', default='')
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    31
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    32
# Quick-start development settings - unsuitable for production
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    33
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    34
# SECURITY WARNING: keep the secret key used in production secret!
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    35
SECRET_KEY = config('SECRET_KEY', '@povoyn_1_3dhfjktisno5l_0)_l1+m8$&mr8r2-srvd+m-58d')
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    36
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
# SECURITY WARNING: don't run with debug turned on in production!
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    38
DEBUG = config('DEBUG', default=True, cast=bool)
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    40
ALLOWED_HOSTS = config('ALLOWED_HOSTS', default='', cast=Csv())
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
# Application definition
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    44
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    45
INSTALLED_APPS = [
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    46
    'django.contrib.admin',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    47
    'django.contrib.auth',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    48
    'django.contrib.contenttypes',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    49
    'django.contrib.sessions',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    50
    'django.contrib.messages',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    51
    'django.contrib.staticfiles',
36
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
    52
    'django.contrib.sites',
31
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    53
    'django_extensions',
128
34a75bd8d0b9 add filter on session and node list to recover specific objects
ymh <ymh.work@gmail.com>
parents: 126
diff changeset
    54
    'django_filters',
36
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
    55
    'irinotes',
39
cb014270bdc6 add CORS headers
ymh <ymh.work@gmail.com>
parents: 36
diff changeset
    56
    'corsheaders',
31
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    57
    'rest_framework',
36
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
    58
    'rest_framework.authtoken',
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
    59
    'allauth',
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
    60
    'allauth.account',
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
    61
    'rest_auth.registration',
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    62
    'colorful',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    63
    'concurrency',
36
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
    64
    'rest_auth',
126
ba8bc0199464 add log api for syncing
ymh <ymh.work@gmail.com>
parents: 119
diff changeset
    65
    'auditlog',
36
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
    66
    'notes',
142
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
    67
    'protocols'
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    68
]
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    69
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    70
MIDDLEWARE = [
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    71
    'django.middleware.security.SecurityMiddleware',
39
cb014270bdc6 add CORS headers
ymh <ymh.work@gmail.com>
parents: 36
diff changeset
    72
    'corsheaders.middleware.CorsMiddleware',
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    73
    'django.contrib.sessions.middleware.SessionMiddleware',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    74
    'django.middleware.common.CommonMiddleware',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    75
    'django.middleware.csrf.CsrfViewMiddleware',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    76
    'django.contrib.auth.middleware.AuthenticationMiddleware',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    77
    'django.contrib.messages.middleware.MessageMiddleware',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    78
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
128
34a75bd8d0b9 add filter on session and node list to recover specific objects
ymh <ymh.work@gmail.com>
parents: 126
diff changeset
    79
    'notes.middlewares.JWTAuthenticationMiddleware',
126
ba8bc0199464 add log api for syncing
ymh <ymh.work@gmail.com>
parents: 119
diff changeset
    80
    'auditlog.middleware.AuditlogMiddleware'
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    81
]
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    82
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    83
ROOT_URLCONF = 'irinotes.urls'
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    84
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    85
TEMPLATES = [
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    86
    {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    87
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    88
        'DIRS': [],
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    89
        'APP_DIRS': True,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    90
        'OPTIONS': {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    91
            'context_processors': [
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    92
                'django.template.context_processors.debug',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    93
                'django.template.context_processors.request',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    94
                'django.contrib.auth.context_processors.auth',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    95
                'django.contrib.messages.context_processors.messages',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    96
            ],
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    97
        },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    98
    },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    99
]
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   100
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   101
WSGI_APPLICATION = 'irinotes.wsgi.application'
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   102
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   103
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   104
# Database
142
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   105
TEST_DATABASE_NAME = config('TEST_DATABASE_NAME', None)
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   106
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   107
DATABASES = {
142
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   108
    'default': { **config(
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   109
        'DATABASE_URL',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   110
        default='sqlite:///' + RUN_DIR.child('db').child('db.sqlite3'),
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   111
        cast=db_url
142
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   112
        ),
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   113
        **({
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   114
            'TEST': {
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   115
                'NAME': TEST_DATABASE_NAME
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   116
            }
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   117
        } if TEST_DATABASE_NAME else {})
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   118
    }
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   119
}
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   120
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   121
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   122
# Password validation
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   123
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   124
AUTH_PASSWORD_VALIDATORS = [
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   125
    {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   126
        'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   127
    },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   128
    {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   129
        'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   130
    },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   131
    {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   132
        'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   133
    },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   134
    {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   135
        'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   136
    },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   137
]
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   138
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   139
AUTH_USER_MODEL = 'notes.User'
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   140
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   141
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   142
# Internationalization
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   143
# https://docs.djangoproject.com/en/1.11/topics/i18n/
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   144
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   145
LANGUAGE_CODE = 'en-us'
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   146
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   147
TIME_ZONE = 'UTC'
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   148
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   149
USE_I18N = True
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   150
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   151
USE_L10N = True
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   152
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   153
USE_TZ = True
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   154
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   155
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   156
# Static files (CSS, JavaScript, Images)
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   157
# https://docs.djangoproject.com/en/1.11/howto/static-files/
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   158
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   159
STATIC_URL = config('STATIC_URL', default=BASE_URL + '/static/')
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   160
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   161
# Logger
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   162
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   163
LOG_FILE = config('LOG_FILE', default=RUN_DIR.child('log').child('log.txt'))
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   164
LOG_LEVEL = config('LOG_LEVEL', default=logging.DEBUG, cast=lambda l: logging.getLevelName(l))
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   165
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   166
LOGGING = {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   167
    'version': 1,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   168
    'disable_existing_loggers': True,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   169
    'filters': {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   170
        'require_debug_false': {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   171
            '()': 'django.utils.log.RequireDebugFalse'
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   172
        }
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   173
    },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   174
    'formatters' : {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   175
        'simple' : {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   176
            'format': "%(asctime)s - %(levelname)s : %(message)s",
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   177
        },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   178
        'semi-verbose': {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   179
            'format': '%(levelname)s %(asctime)s %(module)s %(message)s'
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   180
        },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   181
    },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   182
    'handlers': {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   183
        'mail_admins': {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   184
            'level': 'ERROR',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   185
            'filters': ['require_debug_false'],
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   186
            'class': 'django.utils.log.AdminEmailHandler'
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   187
        },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   188
        'stream_to_console': {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   189
            'level': LOG_LEVEL,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   190
            'class': 'logging.StreamHandler'
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   191
        },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   192
        'file': {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   193
            'level': LOG_LEVEL,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   194
            'class': 'logging.FileHandler',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   195
            'filename': LOG_FILE,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   196
            'formatter': 'semi-verbose',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   197
        },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   198
    },
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   199
    'loggers': {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   200
        'django.request': {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   201
            'handlers': ['file'],
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   202
            'level': LOG_LEVEL,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   203
            'propagate': True,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   204
        },
131
adad5563603c add personal group, default_group to users and add group info to session on backend
ymh <ymh.work@gmail.com>
parents: 129
diff changeset
   205
        # 'django.db.backends': {
adad5563603c add personal group, default_group to users and add group info to session on backend
ymh <ymh.work@gmail.com>
parents: 129
diff changeset
   206
        #     'handlers': ['file'],
adad5563603c add personal group, default_group to users and add group info to session on backend
ymh <ymh.work@gmail.com>
parents: 129
diff changeset
   207
        #     'level': LOG_LEVEL,
adad5563603c add personal group, default_group to users and add group info to session on backend
ymh <ymh.work@gmail.com>
parents: 129
diff changeset
   208
        #     'propagate': True,
adad5563603c add personal group, default_group to users and add group info to session on backend
ymh <ymh.work@gmail.com>
parents: 129
diff changeset
   209
        # },
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   210
        'irinotes': {
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   211
            'handlers': ['file'],
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   212
            'level': LOG_LEVEL,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   213
            'propagate': True,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   214
        },
31
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   215
        'notes': {
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   216
            'handlers': ['file'],
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   217
            'level': LOG_LEVEL,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   218
            'propagate': True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   219
        },
142
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   220
        'protocols': {
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   221
            'handlers': ['file'],
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   222
            'level': LOG_LEVEL,
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   223
            'propagate': True,
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   224
        },
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   225
    }
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
   226
}
31
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   227
36
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
   228
SITE_ID = 1
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
   229
31
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   230
# Rest Framework configuration
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   231
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   232
REST_FRAMEWORK = {
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   233
    # Use Django's standard `django.contrib.auth` permissions,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   234
    # or allow read-only access for unauthenticated users.
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   235
    'DEFAULT_PERMISSION_CLASSES': [
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   236
        'rest_framework.permissions.IsAuthenticated'
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   237
    ],
36
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
   238
    'DEFAULT_AUTHENTICATION_CLASSES': (
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
   239
        'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
   240
        'rest_framework.authentication.SessionAuthentication',
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
   241
        'rest_framework.authentication.BasicAuthentication',
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
   242
    ),
119
8ff8e2aee0f9 add parameter to filter session and note by updated date. Add pagination on sessions and notes. add read only endpoint at root level to list notes
ymh <ymh.work@gmail.com>
parents: 97
diff changeset
   243
    'TEST_REQUEST_DEFAULT_FORMAT': 'json',
142
56850f5c73f6 - upgrade libraries
ymh <ymh.work@gmail.com>
parents: 133
diff changeset
   244
    'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
119
8ff8e2aee0f9 add parameter to filter session and note by updated date. Add pagination on sessions and notes. add read only endpoint at root level to list notes
ymh <ymh.work@gmail.com>
parents: 97
diff changeset
   245
    'PAGE_SIZE': 100
31
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
   246
}
36
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
   247
133
6f3078f7fd47 Work on correct protocol propagation
ymh <ymh.work@gmail.com>
parents: 131
diff changeset
   248
# Rest auth settings
36
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
   249
REST_USE_JWT = True
133
6f3078f7fd47 Work on correct protocol propagation
ymh <ymh.work@gmail.com>
parents: 131
diff changeset
   250
REST_AUTH_SERIALIZERS = {
6f3078f7fd47 Work on correct protocol propagation
ymh <ymh.work@gmail.com>
parents: 131
diff changeset
   251
    'USER_DETAILS_SERIALIZER': 'notes.api.serializers.auth.UserDetailsSerializer'
6f3078f7fd47 Work on correct protocol propagation
ymh <ymh.work@gmail.com>
parents: 131
diff changeset
   252
}
6f3078f7fd47 Work on correct protocol propagation
ymh <ymh.work@gmail.com>
parents: 131
diff changeset
   253
36
36210c4f019f reorganize urls and add user management api urls
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
   254
OLD_PASSWORD_FIELD_ENABLED = True
39
cb014270bdc6 add CORS headers
ymh <ymh.work@gmail.com>
parents: 36
diff changeset
   255
133
6f3078f7fd47 Work on correct protocol propagation
ymh <ymh.work@gmail.com>
parents: 131
diff changeset
   256
# JWT settings
60
42c07d428747 on server, augment default token lifetime and add settings in .env to control it. Add the refresh endpoint
ymh <ymh.work@gmail.com>
parents: 59
diff changeset
   257
JWT_AUTH = {
42c07d428747 on server, augment default token lifetime and add settings in .env to control it. Add the refresh endpoint
ymh <ymh.work@gmail.com>
parents: 59
diff changeset
   258
    'JWT_ALLOW_REFRESH' : True,
42c07d428747 on server, augment default token lifetime and add settings in .env to control it. Add the refresh endpoint
ymh <ymh.work@gmail.com>
parents: 59
diff changeset
   259
    'JWT_EXPIRATION_DELTA' : datetime.timedelta(
42c07d428747 on server, augment default token lifetime and add settings in .env to control it. Add the refresh endpoint
ymh <ymh.work@gmail.com>
parents: 59
diff changeset
   260
        seconds=config('JWT_EXPIRATION_DELTA', 3600, cast=int)
88
2a861fed6bde Deauthenticate user if refresh was not possible (session expired or total delta reached)
ymh <ymh.work@gmail.com>
parents: 60
diff changeset
   261
    ),
2a861fed6bde Deauthenticate user if refresh was not possible (session expired or total delta reached)
ymh <ymh.work@gmail.com>
parents: 60
diff changeset
   262
    'JWT_REFRESH_EXPIRATION_DELTA' : datetime.timedelta(
2a861fed6bde Deauthenticate user if refresh was not possible (session expired or total delta reached)
ymh <ymh.work@gmail.com>
parents: 60
diff changeset
   263
        seconds=config('JWT_REFRESH_EXPIRATION_DELTA', 3600*24*7, cast=int)
60
42c07d428747 on server, augment default token lifetime and add settings in .env to control it. Add the refresh endpoint
ymh <ymh.work@gmail.com>
parents: 59
diff changeset
   264
    )
42c07d428747 on server, augment default token lifetime and add settings in .env to control it. Add the refresh endpoint
ymh <ymh.work@gmail.com>
parents: 59
diff changeset
   265
}
42c07d428747 on server, augment default token lifetime and add settings in .env to control it. Add the refresh endpoint
ymh <ymh.work@gmail.com>
parents: 59
diff changeset
   266
39
cb014270bdc6 add CORS headers
ymh <ymh.work@gmail.com>
parents: 36
diff changeset
   267
# CORS Headers
cb014270bdc6 add CORS headers
ymh <ymh.work@gmail.com>
parents: 36
diff changeset
   268
CORS_ORIGIN_ALLOW_ALL = True
97
69eaef18b01b Improve the network saga. Try to avoid unnecessary token refresh
ymh <ymh.work@gmail.com>
parents: 88
diff changeset
   269
CORS_ALLOW_CREDENTIALS = True
69eaef18b01b Improve the network saga. Try to avoid unnecessary token refresh
ymh <ymh.work@gmail.com>
parents: 88
diff changeset
   270
129
d48946d164c6 Add a first version of synchronisation
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
   271
CORS_ALLOW_HEADERS = default_headers + (
d48946d164c6 Add a first version of synchronisation
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
   272
    'auditlog-client',
d48946d164c6 Add a first version of synchronisation
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
   273
)
d48946d164c6 Add a first version of synchronisation
ymh <ymh.work@gmail.com>
parents: 128
diff changeset
   274
39
cb014270bdc6 add CORS headers
ymh <ymh.work@gmail.com>
parents: 36
diff changeset
   275
CORS_URLS_REGEX = r'^/api/.*$'