Wafer apps for DebConf
This package contains several Django apps used by the DebConf conference.
badges - Name tag generation
bursary - Bursary requests and review
debconf - Random bits and pieces
exports - CSV data exports for organisers
front_desk - Check-In
invoices - Paid Attendee Invoicing
register - Attendee Registration
volunteers - On-site volunteer wrangling
Configuration
Uses the following Django settings:
Invoicing
DEBCONF_INVOICE_ADDRESS: String. Postal address to issue invoices from.DEBCONF_BILLING_CURRENCY_SYMBOL: String. The billing currency symbol. (e.g. $)DEBCONF_BILLING_CURRENCY: String. The billing currency code. (e.g. USD)DEBCONF_BURSARY_CURRENCY_SYMBOL: String. The bursary currency symbol. (e.g. $)DEBCONF_BURSARY_CURRENCY: String. The bursary currency code (e.g. USD)DEBCONF_LOCAL_CURRENCY_RATE: Decimal. The exchange rate. What does 1 DEBCONF_BILLING_CURRENCY buy in local currency.DEBCONF_LOCAL_CURRENCY_SYMBOL: String. The local currency symbol.DEBCONF_LOCAL_CURRENCY: String. The local currency code.INVOICE_PREFIX: String. Prefix to invoice IDs.PRICES: Dict of Dicts, with purchasable items and prices.fee: Dict of conferences fees, each having anameandprice.meal: Dict of Dicts, (breakfast,lunch,dinner,conference_dinner):- Each having a
priceand optionalname.
- Each having a
accomm: Dict of Dicts, (description(String),price(Decimal/int) per night,bursary(bool),paid_separately(bool),included_meals(set of strs),full(bool)) for each accommodation option. If an option has a price, it's for sale. If bursary, it'll be available for free for bursaried attendants. If full, it won't be able to be selected by anybody new.daytrip: Dict of Dicts, (description(String),long_description(String),price(Decimal/int),capacity(int),closed(bool)) per option.
DAYTRIP_OPEN: Boolean. Close daytrip registration.DAYTRIP_INSURANCE_OPEN: Boolean. Close daytrip insurance registration.DAYTRIP_INSURANCE_REQUIRED: Boolean. Require daytrip registrations to register for insurance.STRIPE_PUBLISHABLE_KEY: String. Stripe API Publishable Key.STRIPE_SECRET_KEY: String. Stripe API Secret Key.STRIPE_ENDPOINT_SECRET: String. Stripe Webhook endpoint secret.
Dates
DEBCONF_BURSARY_DEADLINE: Date. The date that bursaries need to be submitted by, AoEDEBCONF_BURSARY_ACCEPTANCE_DEADLINE: Date. The date that all bursaries need to be accepted by, or the attendee will be issued an invoice.DEBCONF_BURSARY_PARTIAL_CONTRIBUTION: Boolean. Request partial contributions for bursaries.DEBCONF_CONFERENCE_DINNER_DAY: Date. The day that has the conference dinner.DEBCONF_CONFIRMATION_DEADLINE: Date. The date that attendance needs to be confirmed by, AoE.DEBCONF_DATES: List of (Description, Start Date, End Date) for the parts of the conference.DEBCONF_SKIPPED_MEALS: List of (String: meal name, Date) of meals that will not be provided.VOLUNTEERS_FIRST_DAY: Date. The first day of volunteering.VOLUNTEERS_LAST_DAY: Date. The last day of volunteering.
Registration
BURSARIES_CLOSED: Boolean. Can bursary requests still be submitted.DEBCONF_ACCOMMODATION_CLOSED: Boolean. Can accommodation requests still be submitted.DEBCONF_BREAKFAST: Boolean. Is DebConf providing breakfast for attendees.DEBCONF_BRUNCHES: List of dates that have brunch instead of breakfast and lunch.DEBCONF_SHOE_SIZES: List of (Key, Description) for Shoe sizes.DEBCONF_T_SHIRT_SIZES: List of (Key, Description) for T-Shirt sizes.RECONFIRMATION: Boolean. Is there a reconfirmation round (set True once it has started).DEBCONF_REVIEW_FREE_ATTENDEES: Boolean. Use the bursary system to review the attendance of free attendees too.DEBCONF_COLLECT_AFFILIATION: Boolean. Ask attendees for their affiliation, for government sponsors.DEBCONF_DEPARTURE_DAY: Boolean. Is there a departure day after the final conference day.DEBCONF_DEPARTURE_TIME: time: The latest time that attendees can depart at.DEBCONF_ORGA_EARLY_DAYS: int: Number of days early that orga are allowed to arrive.DEBCONF_TSHIRT_SWAP_ON_OR_AFTER: Optional date, after which t-shirts may be swapped.DEBCONF_LIMITED_BURSARIES: Boolean. Display a banner saying bursaries are limited this year, discouraging requests.DEBCONF_BURSARY_BUDGETS: Dict of dicts for bursary budget options. Each key represents an option.description: The user-facing description of the options.required_fields: Optional list of fields to require input in. Can contain (contributions,diversity).permissions: Optional list of permissions required to use this budget.
ZAMMAD_URL: URL of the Zammad instance.ZAMMAD_TOKEN: Token for Zammad access.
MiniDebConf registration
MINIDEBCONF_REGISTER_PHONE: for minidebconfs, whether to ask for phone numbers upon registration. Values:None- don't ask (default)False- ask but not requireTrue- ask and require
MINIDEBCONF_REGISTER_BURSARY_CONTRIBUTORS_ONLY: boolean. Determines whether bursary (food, accomodation and travel) are only available to Debian contributors (and DMs/DDs). Defaults toFalse.MINIDEBCONF_REGISTER_ARRANGED_ACCOMMODATION: boolean. Determines whether contributors can request to stay at the accomodation arranged by the orga team (default:False).MINIDEBCONF_REGISTER_ACCOMMODATION_EARLIEST_CHECK_IN: date. The earliest possible check-in date. Defaults to the day before the beginning of the schedule.MINIDEBCONF_REGISTER_ACCOMMODATION_LATEST_CHECK_OUT: date. The latest possible check-out date possible. Defaults to the day after the last day of the schedule. This date must be higher than the one inMINIDEBCONF_REGISTER_ACCOMMODATION_EARLIEST_CHECK_IN, otherwise strange things will happen.MINIDEBCONF_REGISTER_ARRANGED_FOOD: boolean. Determines whether attendees can request to eat the meals arranged by the orga team (default:False).MINIDEBCONF_REGISTER_TRAVEL_REIMBURSEMENT: whether contributores can request travel bursaries to the MiniDebConf (default: False).MINIDEBCONF_REGISTER_DEFAULT_COUNTRY: string. Which country should be selected by default in MiniDebConf registration form (default: None)MINIDEBCONF_REGISTER_BURSARY_INFO_PAGE: string. URL to a page with bursary information. If informed, will be linked from the MiniDebConf registration form (default:None)MINIDEBCONF_REGISTER_SHIRT_INFO_PAGE: string. URL to a page with information about T-shirt sizes. If informed, will be linked from the MiniDebConf registration form (default:None)MINIDEBCONF_REGISTER_PAYMENT_CODE: boolean. whether to display a field to collect payment code (default:False)MINIDEBCONF_REGISTER_PAYMENT_CODE_LABEL: string. Text to be used as label for the payment code field, if enabled. (default:None)
Content
TRACKS_FILE: String. path to a YAML file with the list of tracks to be loadede into the databaseTALK_TYPES_FILE: String. path to a YAML file with the list of talk types to be loaded into the databaseDEBCONF_TALK_PROVISION_URLS: Dictionary of {Key: {pattern: String, private: Boolean}} for online services to generate links for. Format string parameters available:id,slug,secret16).
Misc
DEBCONF_CITY: String. The name of the city hosting DebConf.DEBCONF_NAME: String. The name of the Debconf (e.g. "DebConf XX").DCSCHEDULE_TOKEN: String. Authentication token for the DCSchedule IRC bot to hit the API.SANDBOX: Boolean. Is this a development instance or production.ISSUE_KSP_ID: Boolean. Is the key-signing sign-up still open?
Streaming
DEBCONF_VENUE_STREAM_HLS_URL: String. URL to the HLS stream. {name}, if present, is replaced with with the venue name in lower case and with all sequences of non-alphanumeric characters replaced with a "-". Examples:- Fixed URL:
"https://foo.bar/stream.m3u8"(good enough for single-venue conferences.) - Per-venue URL:
"https://foo.bar/stream/{name}.m3u8"becomes"https://foo.bar/stream/my-venue.m3u8"
- Fixed URL:
DEBCONF_VENUE_STREAM_RTMP_URLString. URL to the RTMP stream. {name} is substituted as withDEBCONF_VENUE_STREAM_HLS_URL; {quality} is replaced with the quality (src, high, mid, low). Examples:- Fixed URL:
"rtmp://foo.bar/stream"(for single-venue conferences) - Per-venue URL:
"rtmp://foo.bar/stream/{name}_{quality}"becomes"rtmp://foo.bar/stream/my-venue_high"("high" quality stream for "My Venue")
- Fixed URL:
DEBCONF_VENUE_SLUGS: Dictionary mapping venue IDs to override slugs.DEBCONF_VENUE_IRC_CHANNELS: List of strings. List of channels to join for each venue; {name} is replaced as above. Examples:- Single-channel conference:
["#conference"] - Multi-venue conference:
["#thatconf2020-{name}", "#thatconf2020"]becomes["#thatconf2020-my-venue", "#thatconf2020"]
- Single-channel conference:
Stripe Payments
First, configure the STRIPE_PUBLISHABLE_KEY and STRIPE_SECRET_KEY
settings, with the API keys from the Stripe dashboard.
To receive payment confirmation from Stripe, we need to receive a webhook from them.
For local development, you can receive this with the stripe CLI:
$ stripe login
...
$ stripe listen --forward-to http://127.0.0.1:8000/invoices/stripe-webhook/
> Ready! Your webhook signing secret is whsec_I_AM_A_SECRET_KEY (^C to quit)
Configure STRIPE_ENDPOINT_SECRET with the secret key provided by
stripe-cli listen.
For production use, configure a webhook in the Stripe dashboard.
The endpoint should be https://my.debconf/invoices/stripe-webhook/.
Listen for charge.dispute.created, charge.refunded, and
payment_intent.succeeded.
Again, STRIPE_ENDPOINT_SECRET should be configured to the webhook's
signing secret.
Metadata
Release files for wafer-debconf 0.20.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| wafer_debconf-0.20.0.tar.gz | 4.5 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| wafer_debconf-0.20.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 9.5 MB
Release files / wafer_debconf-0.20.0.tar.gz
| Download URL | wafer_debconf-0.20.0.tar.gz |
|---|---|
| Size | 4.5 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
790d80c8169fece85492d229f6841c62cacb3c4fdc2e7a22f845036bc444acf4
|
|
BLAKE2b-256 checksum How to use checksums |
64a8f1cd9c54ac99a2b90759a833cebdf67bc3fc2c29405b694c33a9e3379cb1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.8
|
Release files / wafer_debconf-0.20.0-py3-none-any.whl
| Download URL | wafer_debconf-0.20.0-py3-none-any.whl |
|---|---|
| Size | 5.0 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d8e851da6c50dd45cb4d053a9b24ef058b049db58a297b71e7cc6eb08575fe1f
|
|
BLAKE2b-256 checksum How to use checksums |
efc494c984fad8b55e8ffb5dc2efdfdfcb9c9f15f10f089f029e698e5d6e6bd2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.8
|