diff --git a/med/.htaccess b/med/.htaccess deleted file mode 100644 index aee3b26..0000000 --- a/med/.htaccess +++ /dev/null @@ -1,5 +0,0 @@ - -order deny,allow -deny from all -allow from 127.0.0.1 - diff --git a/med/settings.py b/med/settings.py index 6ff01b0..ad98ba1 100644 --- a/med/settings.py +++ b/med/settings.py @@ -1,87 +1,68 @@ -# Re2o est un logiciel d'administration développé initiallement au rezometz. Il -# se veut agnostique au réseau considéré, de manière à être installable en -# quelques clics. -# -# Copyright © 2017 Gabriel Détraz -# Copyright © 2017 Goulven Kermarec -# Copyright © 2017 Augustin Lemesle -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# -*- mode: python; coding: utf-8 -*- +# Copyright (C) 2018-2019 by BDE ENS Paris-Saclay +# SPDX-License-Identifier: GPL-3.0-or-later -""" -Django settings for med project. - -Generated by 'django-admin startproject' using Django 1.8.13. - -For more information on this file, see -https://docs.djangoproject.com/en/1.8/topics/settings/ - -For the full list of settings and their values, see -https://docs.djangoproject.com/en/1.8/ref/settings/ -""" - -# Build paths inside the project like this: os.path.join(BASE_DIR, ...) import os -from .settings_local import * +from django.utils.translation import gettext_lazy as _ + +# Build paths inside the project like this: os.path.join(BASE_DIR, ...) BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) - # Quick-start development settings - unsuitable for production -# See https://docs.djangoproject.com/en/1.8/howto/deployment/checklist/ +# See https://docs.djangoproject.com/en/2.2/howto/deployment/checklist/ -# Auth definition +# SECURITY WARNING: keep the secret key used in production secret! +SECRET_KEY = 'CHANGE_ME_IN_LOCAL_SETTINGS!' -PASSWORD_HASHERS = ( - 'med.login.SSHAPasswordHasher', - 'django.contrib.auth.hashers.PBKDF2PasswordHasher', +# SECURITY WARNING: don't run with debug turned on in production! +DEBUG = True + +ADMINS = ( + # ('Admin', 'webmaster@example.com'), ) -AUTH_USER_MODEL = 'users.User' -LOGIN_URL = '/login/' -LOGIN_REDIRECT_URL = '/' +SITE_ID = 1 +ALLOWED_HOSTS = [] # Application definition -INSTALLED_APPS = ( +INSTALLED_APPS = [ + # External apps + 'bootstrap3', + 'reversion', + + # Django contrib 'django.contrib.admin', + 'django.contrib.admindocs', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', + 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', - 'bootstrap3', + + # Med apps 'users', 'med', 'media', 'search', - 'reversion', - 'logs' -) + 'logs', +] -MIDDLEWARE_CLASSES = ( +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.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', + 'django.contrib.admindocs.middleware.XViewMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', - 'django.middleware.security.SecurityMiddleware', -) + 'django.middleware.locale.LocaleMiddleware', + 'django.contrib.sites.middleware.CurrentSiteMiddleware', +] ROOT_URLCONF = 'med.urls' @@ -107,11 +88,43 @@ TEMPLATES = [ WSGI_APPLICATION = 'med.wsgi.application' +# Database +# https://docs.djangoproject.com/en/2.2/ref/settings/#databases + +DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), + } +} + +# Password validation +# https://docs.djangoproject.com/en/2.2/ref/settings/#auth-password-validators + +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/1.8/topics/i18n/ +# https://docs.djangoproject.com/en/2.2/topics/i18n/ -LANGUAGE_CODE = 'fr-fr' +LANGUAGE_CODE = 'en' + +LANGUAGES = [ + ('en', _('English')), + ('fr', _('French')), +] TIME_ZONE = 'Europe/Paris' @@ -121,7 +134,22 @@ USE_L10N = True USE_TZ = True +# Static files (CSS, JavaScript, Images) +# https://docs.djangoproject.com/en/2.2/howto/static-files/ +# Absolute path to the directory static files should be collected to. +# Don't put anything in this directory yourself; store your static files +# in apps' "static/" subdirectories and in STATICFILES_DIRS. +# Example: "/var/www/example.com/static/" +STATIC_ROOT = os.path.join(BASE_DIR, 'static_files') + +# URL prefix for static files. +# Example: "http://example.com/static/", "http://static.example.com/" +STATIC_URL = '/static/' + +# Med configuration +PAGINATION_NUMBER = 25 +PAGINATION_LARGE_NUMBER = 8 # django-bootstrap3 config dictionnary BOOTSTRAP3 = { @@ -129,24 +157,21 @@ BOOTSTRAP3 = { 'base_url': '/static/bootstrap/', 'include_jquery': True, } - BOOTSTRAP_BASE_URL = '/static/bootstrap/' - STATICFILES_DIRS = ( - # Put strings here, like "/home/html/static" or "C:/www/django/static". - # Always use forward slashes, even on Windows. - # Don't forget to use absolute paths, not relative paths. - os.path.join( - BASE_DIR, - 'static', - ), + os.path.join(BASE_DIR, 'static'), ) -STATIC_URL = '/static/' +PASSWORD_HASHERS = ( + 'med.login.SSHAPasswordHasher', + 'django.contrib.auth.hashers.PBKDF2PasswordHasher', +) -STATIC_ROOT = os.path.join(BASE_DIR, 'static_files') - -PAGINATION_NUMBER = 25 - -PAGINATION_LARGE_NUMBER = 8 +AUTH_USER_MODEL = 'users.User' +LOGIN_URL = '/login/' +LOGIN_REDIRECT_URL = '/' +try: + from .settings_local import * +except ImportError: + pass