Settings¶
Wafer has several Django settings that control its behaviour.
It attempts to provide reasonable defaults for these, (and Django in general),
in the wafer.settings
module, so you can import this in your app’s
settings.py
, and then override things you want to change.
Wafer’s settings¶
CODE_HOSTING_ENTRIES
A dictionary of code hosting sites for the user profile. Entries should be of the form: keyname: “Description” .
Each entry in the dictionary will be added as a form field on the profile page - entries are assumed to be for urls to the approriate site.
Entries in this dictionary will be grouped together on the edit profile form and on the profile display.
PAGE_DIR
The directory that the
load_pages
management command will load pages from. Should be an absolute path with a trailing/
.SOCIAL_MEDIA_ENTRIES
A dictionary of social sites for the user profile. Entries should be of the form: keyname: “Description” .
Each entry in the dictionary will be added as a form field on the profile page - entries are assumed to be for urls to the approriate site.
Entries in this dictionary will be grouped together on the edit profile form and on the profile display.
WAFER_CACHE
The name of the Django cache backend that wafer can use. Defaults to
'wafer_cache'
.WAFER_CONFERENCE_ACRONYM
The abbreviated name of the conference.
WAFER_DEFAULT_GROUPS
A list of groups that any new user is automatically added to. This can be used to tweak the default permissions available to website users by creating groups with the required access.
WAFER_DYNAMIC_MENUS
A list of functions to call to generate additional menus.
WAFER_GITHUB_CLIENT_ID
The client ID for GitHub SSO. Used when
WAFER_SSO
contains'github'
. If you set this up, they’ll provide you with one.WAFER_GITHUB_CLIENT_SECRET
The secret for GitHub SSO. Used when
WAFER_SSO
contains'github'
. If you set this up, they’ll provide you with one.WAFER_GITLAB_CLIENT_ID
The client ID for GitLab SSO. Used when
WAFER_SSO
contains'gitlab'
. If you set this up, they’ll provide you with one.WAFER_GITLAB_CLIENT_SECRET
The secret for GitLab SSO. Used when
WAFER_SSO
contains'gitlab'
. If you set this up, they’ll provide you with one.WAFER_GITLAB_HOSTNAME
The hostname of the GitLab instance used for SSO. Defaults to
gitlab.com
. Used whenWAFER_SSO
contains'gitlab'
.WAFER_HIDE_LOGIN
A boolean flag. When
True
, the login link in the menu is hidden. This is useful to set, before making a site static.WAFER_MENUS
Static menu structure for the site. This is a list of dicts, with the keys:
label
The text in the menu.
url
The URL to link to.
items
An optional list of similar dicts, making up a submenu.
WAFER_PAGE_MARKITUP_FILTER
Configuration for django-markitup. The type of markup used for pages, only.
MARKITUP_FILTER
is used for rendering other objects. This allows a more relaxed security configuration for pages, where XSS is less of a risk, and embedded HTML markup can be useful for styling.WAFER_PUBLIC_ATTENDEE_LIST
A boolean flag. When
True
, all registered users’ profiles are publicly visible. Otherwise, only users with associated public talks have public profiles.WAFER_REGISTRATION_MODE
The mechanisms users will register for the conference, with. Possible options are:
'ticket'
For Quicket integration. The default.
'custom'
For your own implementation. See
WAFER_USER_IS_REGISTERED
.
WAFER_REGISTRATION_OPEN
A boolean flag. When
True
, users can register for the conference. (Note, this is not the same as signing up for an account on the website.)WAFER_SSO
A list of SSO mechanisms in use. Possible options are:
'github'
,'gitlab'
.WAFER_TALK_FORM
The form used for talk/event submission. There is a reasonable default form, but this can be changed to customise the submission process.
WAFER_TALK_LANGUAGUES
A tuple of tuples, indicating the languages that users can select when submitting talks. Each tuple has the language code as the first element, and the language name as the second element. Example:
(("en", "English"), ("pt", "Portuguese"))
. The first language listed will be considered the default language, and will be selected by default on new submissions.WAFER_TALK_REVIEW_SCORES
A tuple of 2 integers. The range of values for talk reviews. Inclusive.
WAFER_TALKS_OPEN
A boolean flag. When
True
, users can submit talks.WAFER_TICKETS_SECRET
The secret for the Quicket API. Used when
WAFER_REGISTRATION_MODE
is'ticket'
.WAFER_USER_IS_REGISTERED
A function, which takes a user, and determines if they have registered for attendance at the conference. It should return a boolean result. The default function checks for a Quicket ticket.
WAFER_USER_TICKET_TYPES
A function which returns a list of ticket types associated with a user. This is intende to help track remote vs in-person tickets and similar cases. It should return a list of ticket type descriptions. The default function returns the types of any Quicket tickets associated with the user.
WAFER_VIDEO
A boolean flag. When
True
, the default talk submission form will ask for a video release from the submitter.WAFER_VIDEO_LICENSE
The name of the license that the conference’s videos will be released under. Talk submitters will be asked to release their video under this license.
WAFER_VIDEO_LICENSE_URL
Link to the full text of
WAFER_VIDEO_LICENSE
.WAFER_VIDEO_REVIEWER
A boolean flag. When
True
, the default talk submission form will ask for the email address of someone who will review the talk’s video, once it is ready to publish.
Third party settings¶
Some libraries that wafer uses have settings that you may want to configure. This is a non-complete list of them, see the individual project’s documentation for more details.
ACCOUNT_ACTIVATION_DAYS
Used by django-registration-redux. Number of days that users have to click the account activation link that was emailed to them.
MARKITUP_FILTER
Configuration for django-markitup. The type of markup used for talk abstracts, user profiles, and other things. Also, configuration for the conversion, such as allowing arbitrary HTML embedding.
WAFER_PAGE_MARKITUP_FILTER
is used for rendering pages, which usually have a lower security risk to other markup on the site.BUILD_DIR
Used by django-bakery. The directory that static versions of the sites are rendered to.
REGISTRATION_OPEN
Boolean flag. Used by django-registration-redux. When
True
, user sign-up is permitted.REGISTRATION_FORM
Dotted path. Used by django-registration-redux. We provide
wafer.registration.forms.WaferRegistrationForm
to validate usernames.