pretix / pretix Goto Github PK
View Code? Open in Web Editor NEWTicket shop application for conferences, festivals, concerts, tech events, shows, exhibitions, workshops, barcamps, etc.
Home Page: https://pretix.eu
License: Other
Ticket shop application for conferences, festivals, concerts, tech events, shows, exhibitions, workshops, barcamps, etc.
Home Page: https://pretix.eu
License: Other
Implement the user settings dialog
A 'password reset' feature should email the user a token to reset his or her password.
We want to move to Django 1.8a1 as soon as possible, as we want to use the new template engine features as early as possible (and maybe move to Jinja2). However, the following issues block the move:
On our side, we'll have to adopt in the following ways:
PayPal can mark payment objects as pending
. We should check them for completion using web hooks. The same goes for refunds and therefore also for stripe.
https://developer.paypal.com/docs/integration/direct/rest-webhooks-overview/
https://stripe.com/docs/api#events
Currently, when a payment provider defines input fields with required=True, they will be rendered with the required=required HTML attribute. This is bad, as there are often multiple payment providers on one page and the user shouldn't need to fill out all of them.
Currently, product descriptions and category descriptions only allow plain text.
This issue suggests to add support for Markdown markup to allow links and other simple formatting.
The pretix control panel allows the administrator to view a list of all orders. It should be made possible to sort this list by various columns (like date, value, …) clicking on the table heads.
The admin panel should be able to import CSV files to process payments. See the statementmagic subproject.
Double-check that cleanerversion is used correctly everywhere.
We already have tixlcontrol.views.event.EventUpdate
but no process for creating new events. For the beginning, this can be a simple creation form.
Later, this should become a multi-step wizard enabling users to select from multiple presets to initialize the event with.
Internationalisation features for item names, categories, …
Hey! If you ever wanted to contribute to an Open Source project, but didn't know how, you just found a perfect place to start. We try to write this issue as instructive as possible, but as we're humans we almost certainly forgot to write something important in here. If you want to try to tackle this issue and get stuck at any point, please do not hesitate and ask us, either here on GitHub or via email at [email protected]. We'll be very happy to help!
We think this issue is very suitable to people who are just starting with Python or Django development or who never contributed to Open Source before. We'd like to ask people with wide experience in these areas to leave this issue to beginners. Thanks! (If you want something more advanced, just drop us a line, we'll find something 😉)
First of all, you need pretix running locally on your machine. We have a guide on the developer installation over here. Play around with it and get a feeling for what pretix is and how it works :) Try to find the places in the interface mentioned in this issue where something needs to change. Maybe try to find the same places in the code? Just searching for characteristic words can be a powerful tool to find your way around.
Every event organized by pretix gets a small web page representing the event -- it's ticket shop. In the HTML code of this page we want to add microdata markup. Microdata is a structured way to tell search engines what the given page is about and allows them to understand the page better and do fancy things like showing the event location or date directly in the search results.
First, you need to read up a bit about structured data. For example, there is the JSON-LD data format that we probably want to use. Don't get discouraged by complicated-sounding words, just keep to the examples, they should be pretty clear in many cases. Google also has a lot of documentation and tools on the topic, for example:
Once you know how it should look like, you basically only have to put it in the right place, which is src/pretix/presale/templates/pretixpresale/event/index.html
, and fill it up with the correct data via template variables.
You're still reading, nice! If you want to try working on this, please comment below, so everyone else knows this is being looked at and can search for a different place to contribute.
First, fork the repository to your own GitHub account. Then clone it locally (or set it as your remote if you already cloned it earlier) and prepare your pull requests. There are a number of tutorials on the Pull Request workflow online, for example this short version by GitHub itself and this more in-depth tutorial. We're excited to see your pull request!
And don't forget: If you get stuck, don't hestitate to ask. We bound ourselves to a Code of Conduct and we're committed to providing a welcoming experience and giving constructive, friendly and useful feedback on your contributions.
…or changing the payment method later if it failed.
Re-try is currently implemented in the PayPal provider, but it would nice to implement it on a higher level for all providers (maybe based on flag providers can set).
For setups with high load
If you have an expired CartPosition
and you try to add something else to your cart, pretix will try to renew all your CartPositions
in order to have a common expiration time for all of them (for user convenience). Currently, this happens by them being removed and added like new positions. This loses all existing information like attendee_name
or existion QuestionAnswer
objects (which should be retained).
A required question of type boolean should require the user to select either Yes or No, but currently requires the user to select Yes (because the checkbox is otherwise not checked). A SelectInput could be the solution to this.
Currently, tax rates are only specified on item-level. However, if a special payment method adds e.g. a credit card fee, this does not directly belong to a special item but might still need a tax rate configured.
The biggest problem is to tell day-first (europe) from month-first (US).
There should be a button or checkbox to take the whole shop up or down. If it is down, it should be only visible to the admin.
This might be easily implemented as a event setting.
In a second step, a checklist of actions might be enforced before going live, e.g. at least one payment provider selected.
e.g. Sep 5-9th
instead of Sep 5th - Sep 9th
and similar
We currently use stripe.js, but we could use the traditional API for people without JavaScript.
for
Are they being used correctly everywhere?
The EventSetting
/OrganizerSetting
models provide a way of storing event-like settings.
Event
model (payment term, plugins, …)We already have tixlcontrol.views.item.ItemUpdate
for changing items. It should be easy to implement ItemCreate
in a similar matter.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.