Add support for invitations
[pithos] / pithos / settings.py.dist
1 # Copyright 2011 GRNET S.A. All rights reserved.
2
3 # Redistribution and use in source and binary forms, with or
4 # without modification, are permitted provided that the following
5 # conditions are met:
6
7 #   1. Redistributions of source code must retain the above
8 #      copyright notice, this list of conditions and the following
9 #      disclaimer.
10
11 #   2. Redistributions in binary form must reproduce the above
12 #      copyright notice, this list of conditions and the following
13 #      disclaimer in the documentation and/or other materials
14 #      provided with the distribution.
15
16 # THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
17 # OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
19 # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
20 # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
23 # USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
24 # AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
26 # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 # POSSIBILITY OF SUCH DAMAGE.
28
29 # The views and conclusions contained in the software and
30 # documentation are those of the authors and should not be
31 # interpreted as representing official policies, either expressed
32 # or implied, of GRNET S.A.
33
34 # Django settings for pithos project.
35 import os
36
37 PROJECT_PATH = os.path.dirname(os.path.abspath(__file__)) + '/'
38
39 DEBUG = True
40 TEMPLATE_DEBUG = DEBUG
41
42 TEST = False
43
44 ADMINS = (
45     # ('Your Name', 'your_email@domain.com'),
46 )
47
48 MANAGERS = ADMINS
49
50 DATABASES = {
51     'default': {
52         'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
53         'NAME': PROJECT_PATH + 'pithos.db',             # Or path to database file if using sqlite3.
54         'USER': '',                      # Not used with sqlite3.
55         'PASSWORD': '',                  # Not used with sqlite3.
56         'HOST': '',                      # Set to empty string for localhost. Not used with sqlite3.
57         'PORT': '',                      # Set to empty string for default. Not used with sqlite3.
58     }
59 }
60
61 # The backend to use and its initilization options.
62
63 # Modular.
64 backend_module = 'pithos.backends.lib.sqlite'
65 backend_path = os.path.join(PROJECT_PATH, 'data/pithos/')
66 backend_db = os.path.join(PROJECT_PATH, 'data/pithos/db')
67 #backend_module = 'pithos.backends.lib.sqlalchemy'
68 #backend_path = os.path.join(PROJECT_PATH, 'data/pithos/')
69 #backend_db = 'postgresql://user:pass@host/db'
70 BACKEND = ('ModularBackend', (backend_module, backend_path, backend_db))
71
72 # Shibboleth-enabled path for authentication.
73 LOGIN_URL = "/login"
74
75 BYPASS_ADMIN_AUTH = False
76
77 # Local time zone for this installation. Choices can be found here:
78 # http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
79 # although not all choices may be available on all operating systems.
80 # On Unix systems, a value of None will cause Django to use the same
81 # timezone as the operating system.
82 # If running in a Windows environment this must be set to the same as your
83 # system time zone.
84 TIME_ZONE = 'UTC'
85
86 # Language code for this installation. All choices can be found here:
87 # http://www.i18nguy.com/unicode/language-identifiers.html
88 LANGUAGE_CODE = 'en-us'
89
90 SITE_ID = 1
91
92 # If you set this to False, Django will make some optimizations so as not
93 # to load the internationalization machinery.
94 USE_I18N = True
95
96 # If you set this to False, Django will not format dates, numbers and
97 # calendars according to the current locale
98 USE_L10N = True
99
100 # Absolute filesystem path to the directory that will hold user-uploaded files.
101 # Example: "/home/media/media.lawrence.com/"
102 MEDIA_ROOT = ''
103
104 # URL that handles the media served from MEDIA_ROOT. Make sure to use a
105 # trailing slash if there is a path component (optional in other cases).
106 # Examples: "http://media.lawrence.com", "http://example.com/media/"
107 MEDIA_URL = ''
108
109 # URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a
110 # trailing slash.
111 # Examples: "http://foo.com/media/", "/media/".
112 ADMIN_MEDIA_PREFIX = '/media/'
113
114 # Make this unique, and don't share it with anybody.
115 SECRET_KEY = '$j0cdrfm*0sc2j+e@@2f-&3-_@2=^!z#+b-8o4_i10@2%ev7si'
116
117 # List of callables that know how to import templates from various sources.
118 TEMPLATE_LOADERS = (
119     'django.template.loaders.filesystem.Loader',
120     'django.template.loaders.app_directories.Loader',
121 #     'django.template.loaders.eggs.Loader',
122 )
123
124 MIDDLEWARE_CLASSES = (
125     'django.middleware.common.CommonMiddleware',
126 #    'django.contrib.sessions.middleware.SessionMiddleware',
127 #    'django.middleware.csrf.CsrfViewMiddleware',
128 #    'django.contrib.auth.middleware.AuthenticationMiddleware',
129 #    'django.contrib.messages.middleware.MessageMiddleware',
130     'pithos.middleware.LoggingConfigMiddleware',
131     'pithos.middleware.AuthMiddleware'
132 )
133
134 ROOT_URLCONF = 'pithos.urls'
135
136 TEMPLATE_DIRS = (
137     # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
138     # Always use forward slashes, even on Windows.
139     # Don't forget to use absolute paths, not relative paths.
140 )
141
142 INSTALLED_APPS = (
143 #    'django.contrib.auth',
144 #    'django.contrib.contenttypes',
145 #    'django.contrib.sessions',
146 #    'django.contrib.sites',
147 #    'django.contrib.messages',
148 #    'django.contrib.admin',
149 #    'django.contrib.admindocs',
150     'pithos.im',
151     'pithos.api',
152     'pithos.public'
153 )
154
155 # Set the expiration time of newly created auth tokens
156 # to be this many hours after their creation time.
157 AUTH_TOKEN_DURATION = 30 * 24
158
159 # Default setting for new accounts.
160 DEFAULT_QUOTA = 50 * 1024 * 1024 * 1024
161 DEFAULT_VERSIONING = 'auto'
162
163 # Show these many users per page in admin interface.
164 ADMIN_PAGE_LIMIT = 100
165
166 # Authenticate via Twitter.
167 TWITTER_TOKEN = ''
168 TWITTER_SECRET = ''
169
170 # Address to use for outgoing emails
171 DEFAULT_FROM_EMAIL = 'Pithos <no-reply@grnet.gr>'
172
173 # Where users should login with their invitation code
174 INVITATION_LOGIN_TARGET = 'https://pithos.dev.grnet.gr/im/login/invitation' \
175                             '?code=%d' \
176                             '&next=https://pithos.dev.grnet.gr/ui'