tkrebs / ep3-bs

Online booking system for courts
http://bs.hbsys.de/
MIT License
175 stars 104 forks source link

Only allow one court to be booked at the same time #629

Open Irish-link opened 3 weeks ago

Irish-link commented 3 weeks ago

Is there any way to prevent a user from booking more than one Court at a time.

Recently a user has been overrunning our Courts. We are a small community and ep3-bs was a great option for the 50 of us to make sure we plan things out. However one of our residents has been booking half the courts and have guests in who don't pay the yearly cost to maintain the courts. We are happy to have guests at our courts but we don't want to give more than a court away so our residents who pay can still play when they want.

Translated with Google. - Übersetzt mit Google.

Gibt es eine Möglichkeit, einen Benutzer daran zu hindern, mehr als einen Platz gleichzeitig zu buchen?

Vor Kurzem hat ein Benutzer unsere Plätze überrannt. Wir sind eine kleine Gemeinschaft und ep3-bs war für uns 50 eine großartige Option, um sicherzustellen, dass wir alles planen. Einer unserer Bewohner hat jedoch die Hälfte der Plätze gebucht und Gäste, die die jährlichen Kosten für die Instandhaltung der Plätze nicht bezahlen. Wir freuen uns über Gäste auf unseren Plätzen, möchten aber nicht mehr als einen Platz abgeben, damit unsere Bewohner, die zahlen, trotzdem spielen können, wann sie wollen.

cbits68 commented 3 weeks ago

For each court you can set the number of parallel bookings per user. If you set it to 1 each user can only book the next slot if the previous booking is over. In our club it is also allowed to play with guests, but members have to book an additional product for 10€ if they want to play with guests. In the report you can filter unpaied bookings with more that 0€, so we can charge our members for bookings with guests very easy.

Irish-link commented 3 weeks ago

Thanks so much. That did it. Not sure how i missed it but it was there plain as day!

Irish-link commented 3 weeks ago

I should note that, that setting worked well but restricted more than what I was actually trying to get.

I would like our residents to be able to book a time for "today, tomorrow, the next day" so 3-4 times, and I have set that setting.

What I would like to prevent if possible (and I am happy to dive into the code settings) is allowing residents from booking courts 1 and 2 for the same time period but still be able to book a time for the next day. Example below.

[Court 1] [Court 2] [Court 3] [Court 4] [User 1] [User 2] [Open] [Open] <--Okay [User 3] [Open] [User 4] [Open] <--Okay [User 3] [Open] [User 4] [Open] <--Okay [User 2] [User 2] [User 4] [Open] <--- Not okay, User 2

Translated with Google. - Übersetzt mit Google.

Ich sollte anmerken, dass diese Einstellung zwar gut funktionierte, aber mehr einschränkte, als ich eigentlich erreichen wollte.

Ich möchte, dass unsere Bewohner eine Zeit für „heute, morgen, übermorgen“ buchen können, also 3-4 Mal, und das habe ich dank cbits68 eingerichtet.

Was ich nach Möglichkeit verhindern möchte (und ich gehe gerne näher auf die Codeeinstellungen ein), ist, dass Bewohner die Plätze 1 und 2 für denselben Zeitraum buchen, ihnen aber trotzdem erlaubt wird, eine Zeit für den nächsten Tag zu buchen. Beispiel unten.

[Gericht 1] [Gericht 2] [Gericht 3] [Gericht4] [Benutzer 1] [Benutzer 2] [Offen] [Offen] <--Okay [Benutzer 3] [Offen] [Benutzer 4] [Offen] <--Okay [Benutzer 3] [Offen] [Benutzer 4] [Offen] <--Okay [Benutzer 2] [Benutzer 2] [Benutzer 4] [Offen] <--- Nicht Okay, Benutzer 2