diff --git a/localsettingsserver.py b/localsettingsserver.py index 0357e3d..b87754d 100644 --- a/localsettingsserver.py +++ b/localsettingsserver.py @@ -1,76 +1,115 @@ import sys -# This is an example file. Copy it to localsettings.py, set the -# password and _don't_ check that file back to the repo as it exposes -# your/our password to the world! +import os +import urllib.parse +"""Settings for a troggle installation which may vary among different +installations: for development or deployment, in a docker image or +python virtual environment (venv), on ubuntu, debian or in Windows +System for Linux (WSL), on the main server or in the potato hut, +using SQLite or mariaDB. -# This will ALL NEED TO BE CHANGED to match localsettingsWSL / python3 / Django v1.18.29 +It sets the directory locations for the major parts of the system so +that e.g. expofiles can be on a different filesystem. +This file is included at the end of the main troggle/settings.py file so that +it overwrites defaults in that file. +""" + +print(" * importing troggle/localsettings.py") + +# DO NOT check this file into the git repo - it contains real passwords. DATABASES = { - 'default': { - 'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'. - 'NAME': 'troggle', # Or path to database file if using sqlite3. - 'USER': 'expo', # Not used with sqlite3. - 'PASSWORD': 'localpassword', # Not used with sqlite3. - 'HOST': '', # Set to empty string for localhost. Not used with sqlite3. - 'PORT': '', # Set to empty string for default. Not used with sqlite3. + 'default': { + 'ENGINE': 'django.db.backends.mysql', # 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'. + 'NAME' : 'troggle', # Or path to database file if using sqlite3. + 'USER' : 'expo', # Not used with sqlite3. + 'PASSWORD' : 'not a real password', # Not used with sqlite3. + 'HOST' : '', # Set to empty string for localhost. Not used with sqlite3. + 'PORT' : '', # Set to empty string for default. Not used with sqlite3. } } + EXPOUSER = 'expo' -EXPOUSERPASS = "nnn:gggggg" +EXPOUSERPASS = 'nnn:gggggg' EXPOUSER_EMAIL = 'wookey@wookware.org' -REPOS_ROOT_PATH = '/home/expo/' +REPOS_ROOT_PATH = '/home/expo/' sys.path.append(REPOS_ROOT_PATH) sys.path.append(REPOS_ROOT_PATH + 'troggle') +# Define the path to the django app (troggle in this case) +PYTHON_PATH = REPOS_ROOT_PATH + 'troggle/' + +TEMPLATES = [ + { + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'DIRS': [ + PYTHON_PATH + "templates" + ], + 'OPTIONS': { + 'debug': 'DEBUG', + 'context_processors': [ + 'django.contrib.auth.context_processors.auth', + 'core.context.troggle_context', + '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', + ], + 'loaders': [ + 'django.template.loaders.filesystem.Loader', + 'django.template.loaders.app_directories.Loader', + # insert your TEMPLATE_LOADERS here + ] + }, + }, +] PUBLIC_SITE = True +# This should be False for normal running +DEBUG = True + SURVEX_DATA = REPOS_ROOT_PATH + 'loser/' TUNNEL_DATA = REPOS_ROOT_PATH + 'tunneldata/' -THREEDCACHEDIR = REPOS_ROOT_PATH + 'expowebcache/3d/' CAVERN = 'cavern' -THREEDTOPOS = '3dtopos' +THREEDTOPOS = 'survexport' EXPOWEB = REPOS_ROOT_PATH + 'expoweb/' SURVEYS = REPOS_ROOT_PATH -SURVEY_SCANS = REPOS_ROOT_PATH + 'expofiles/' +SURVEY_SCANS = REPOS_ROOT_PATH + 'expofiles/surveyscans/' FILES = REPOS_ROOT_PATH + 'expofiles' +CAVEDESCRIPTIONS = os.path.join(EXPOWEB, "cave_data") +ENTRANCEDESCRIPTIONS = os.path.join(EXPOWEB, "entrance_data") +CACHEDIR = REPOS_ROOT_PATH + 'expowebcache/' +THREEDCACHEDIR = CACHEDIR + '3d/' +THUMBNAILCACHE = CACHEDIR + 'thumbs' PYTHON_PATH = REPOS_ROOT_PATH + 'troggle/' -URL_ROOT = "http://expo.survex.com/" +URL_ROOT = 'http://expo.survex.com/' DIR_ROOT = ''#this should end in / if a value is given -EXPOWEB_URL = 'http://expo.survex.com/' -SURVEYS_URL = 'http://expo.survex.com/survey_scans/' -MEDIA_URL = URL_ROOT + DIR_ROOT + 'site_media/' +EXPOWEB_URL = '/' +SURVEYS_URL = '/survey_scans/' +EXPOFILES = urllib.parse.urljoin(REPOS_ROOT_PATH, 'expofiles/') +PHOTOS_URL = urllib.parse.urljoin(URL_ROOT, '/photos/') -STATIC_URL = URL_ROOT -STATIC_ROOT = DIR_ROOT +# MEDIA_URL is used by urls.py in a regex. See urls.py & core/views_surveys.py +MEDIA_URL = '/site_media/' MEDIA_ROOT = REPOS_ROOT_PATH + '/troggle/media/' -MEDIA_ADMIN_DIR = '/usr/lib/python2.7/site-packages/django/contrib/admin/media/' -JSLIB_URL = URL_ROOT + 'javascript/' +STATIC_URL = urllib.parse.urljoin(URL_ROOT , '/static/') # used by Django admin pages. Do not delete. +JSLIB_URL = urllib.parse.urljoin(URL_ROOT , '/javascript/') # always fails, try to revive it ? -TINY_MCE_MEDIA_ROOT = STATIC_ROOT + '/tiny_mce/' -TINY_MCE_MEDIA_URL = STATIC_ROOT + '/tiny_mce/' +#TINY_MCE_MEDIA_ROOT = STATIC_ROOT + '/tiny_mce/' # not needed while TinyMCE not installed +#TINY_MCE_MEDIA_URL = STATIC_URL + '/tiny_mce/' # not needed while TinyMCE not installed -TEMPLATE_DIRS = ( - PYTHON_PATH + "templates", - # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates". - # Always use forward slashes, even on Windows. - # Don't forget to use absolute paths, not relative paths. -) +LOGFILE = '/var/log/troggle/troggle.log' +IMPORTLOGFILE = '/var/log/troggle/import.log' -LOGFILE = '/home/expo/troggle/troggle.log' - -FEINCMS_ADMIN_MEDIA='/site_media/feincms/' - -#EMAIL_HOST = "smtp.gmail.com" -#EMAIL_HOST_USER = "cuccexpo@gmail.com" -EMAIL_HOST_PASSWORD = "insert-real-email-password-here" -#EMAIL_PORT=587 -#EMAIL_USE_TLS = True +# add in 290, 291, 358 when they don't make it crash horribly +NOTABLECAVESHREFS = [ "264", "258", "204", "76", "107"]