tkrebs / ep3-bs

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

Benachrichtigung an verschiedene Emailadressen #472

Open frankgayer opened 3 years ago

frankgayer commented 3 years ago

Hallo,

es gibt die Anforderung dass Benachrichtigungen für Buchungen individuell pro Platz eingestellt werden kann und nicht pauschal für eine Anlage. Besteht diese Möglichkeit ?

cbits68 commented 3 years ago

Standardmäßig nicht. Kannst Du aber sicher im Code anpassen. Jeder Benutzer kann in seinen Einstellungen wählen. ob er Benachrichtigungen per Mail erhalten will oder nicht. Dies müsstest Du so erweitern, dass die Benutzer das Pro Platz auswählen können. in der NotificationListener.php, wo geprüft wird, ob der Benutzer Benachrichtigungen aktiviert hat und wenn ja die Mail über den Mailservice generiert muss dann geprüft werden welcher Platz gebucht wurde und ob für diesen beim Benutzer die Benachrichtigung aktiviert ist.

Viel Erfolg beim Coden ;-)

PS: irgendwie passt die Überschrift des von Dir eröffneten Issues aber auch nicht zur Deiner Frage ... Willst Du nun eigentlich Benachrichtigungen an verschiedene Mailadressen versenden oder nur bei bestimmten Plätzen an die buchenden Benutzer???

frankgayer commented 3 years ago

danke für den Hinweis. Ich will den Plätzen unterschiedliche Email-Empfänger zuweisen.

Was mache ich wenn ich vom coden keine Ahnung habe ?

cbits68 commented 3 years ago

Ok, ohne Programmierkenntnisse wird es schwer, Dann kannst Du nur Glück haben, dass jemand genau die Funktion auch braucht und schon programmiert hat oder es kann. Wenn Viele die gleiche Anforderung haben, wird das vielleicht auch als Feature Request eingestuft und bei den nächsten Versionen berücksichtigt. Kann ich mir bei Deiner Anforderung allerdings nicht vorstellen. Wozu sollte das bei Tennisplätzen Sinn machen ... Die Mail ist eine Buchungs- Stornierungsbestätigung an den Buchenden. Alles Andere kann man auch über Weiterleitungsregeln in Mailprogrammen realisieren... dafür braucht man auch keine Programmierkenntnisse.

cbits68 commented 3 years ago

Du kannst z.B. alle Mails als Kopie an eine zentrale Mailadresse senden lassen. Das kannst Du in der Verwaltung bei Einstellungen/Namen und Texte aktivieren. Wenn Dein Mailserver serverbasierte Regeln unterstützt (z.B. Microsoft Exchange) dann kannst Du dort entsprechende Regeln definieren: Mail von Absender (Deine Adresse) mit dem Wort PlatzX im Text weiterleiten an Empfänger A Mail von Absender (Deine Adresse) mit dem Wort PlatzY im Text weiterleiten an Empfänger B ...

frankgayer commented 3 years ago

Es gibt auch Vereine die etwas kreativer sind als nur Plätze zu verwalten. In diesem Beispiel wird auch für eine Ballmaschine die Möglichkeit angeboten diese zu buchen aber der Verwalter ist dazu ein anderer

cbits68 commented 3 years ago

Das ist imho genau die Anforderung, die Du gleich in das Issue hättest schreiben sollen 😉 Ich kann mir vorstellen, daß das auch andere Vereine bereits mit ep3 umgesetzt haben, allerdings vermutlich eher über die Option zusätzliche Produkte, die ein Benutzer zu einem bestimmten Platz hinzubuchen kann. Bei uns können z.B. so Gastspieler als Produkt für 10€ dazu gebucht werden. In dem Fall allerdings auf allen Plätzen. Du kannst ein Produkt aber auch nur auf einem Platz anbieten... Hast Du schon versucht das mal mit dieser Funktion umzusetzen?

frankgayer commented 3 years ago

gut, das habe ich verstanden. Aber es geht mir darum dass genau diese Buchung an eine andere Emailadresse zur Info gehen soll, da die Ballmaschine der Platzwart Verwaltet und pflegt und diese Info eben haben muss wann diese gebucht wurde

cbits68 commented 3 years ago

Bei den Gastbuchungen mache ich das z.B. so, dass ich in bestimmten Abständen im Backend alle offenen Buchungen auf diese Buchungen mit Zustzprodukt Gastspieler filtere und dann unserem Kassenwart schicke, da er die Rechnungen stellen muss. Also c.a. alle 3 Monate. Danach setze ich sie im System auf bezahlt und sie tauchen im nächsten Report nicht mehr auf.

frankgayer commented 3 years ago

auch gute Idee, ich denke aber dass es ein Unterschied ist ob jemand spielt oder ob ein Gerät ausgeliehen wird das hinterher vielleicht kaputt ist und keiner merkt es. Mit der Emailnachricht kann der zuständige das dann überprüfen nach Nutzunbgsende

cbits68 commented 3 years ago

Das würde ich dann, wie gesagt mit der externen Mail Weiterleitungsregel machen. Also, wenn die Mail z.B das Wort Ballmaschiene enthält, automatisch an den Platzwart weiterleiten.

frankgayer commented 3 years ago

In der Buchungsemail erscheint aber das Produkt nicht somit erkennt man nicht dass diese mitgebracht wurde

frankgayer commented 3 years ago

weiteres Problem, ich kann dieses Produkt mehrfach zur gleichen Zeit buchen obwohl ich nur 1 Stück zur Verfügung habe

cbits68 commented 3 years ago

Da hast Du Recht, in der Mail steht das gebuchte Produkt nicht drin ... davon war ich ausgegangen. Dann sehe ich nur die Möglichkeit, dass der Benutzer das Wort Ballmaschine in die Anmerkungen schreiben muss. In diesem Fall lässt sich eine Buchung mit Ballmaschine im Kalender sogar farblich anders darstellen und der Platzwart sieht das direkt. Bei dem Zusetzprodukt funktioniert das aus meiner Sicht nur, wenn die Ballmaschine nur auf einem Platz gebucht werden kann.

cbits68 commented 3 years ago

Leider kann man bei Produkten nicht eine Gesamtkapazität vorgeben, so dass das Produkt nur 1* gebucht werden kann und dann in dieser Zeit "ausgebucht" ist. Das halte ich für verbesserungsfähig ... Außerdem sollte ein gebuchtes Zusatzprodukt eigentlich auch in der Buchungsbestätigungsmail auftauchen.

frankgayer commented 3 years ago

an wen kann man das adressieren und wie ?

cbits68 commented 3 years ago

Das müsste dann ggf. von Tobias Krebs als Feature Request hinzugefügt werden.

cbits68 commented 3 years ago

Es macht aber meiner Meinung nach aber eigentlich nur Sinn eine Ballmaschine über ein Zusatzprodukt abzubilden, da ja zwingend ein Platz mit gebucht werden muss. Wenn man die Ballmaschine als Platz abbildet, dann könnte man ja die Ballmaschine auch ohne einen Platz buchen. Die Option Produkte ist in ep3 nur sehr einfach umgesetzt und wenig auf realistische Produkte anpassbar. Die Frage ist ja auch, was tauchen für "Zusatzprodukte" eigentlich auf. Ich könnte mir vorstellen, dass neben einer Ballmaschine auch Produkte wie Flutlicht Trainer ...

Es gibt inzwischen ja sogar Buchungssysteme, die automatisch eine Hallenbeleuchtung pro Platz ein oder ausschalten, je nachdem ob dieser gebucht ist oder nicht.

koehntopp commented 3 years ago

an wen kann man das adressieren und wie ?

Leute - das ist Open Source, nicht Wünsch Dir Was....

Das ist eine kostenfreie Software die erstaunlich gut tut.

Wer mehr Features will muss selbst Hand anlegen (OK, etwas mehr Dokumentation des Codes wäre dafür hilfreich) oder halt Geld in die Hand nehmen.

An @tkrebs - vielleicht wäre Github Sponsoring ein gute Idee, unter den zahlreichen Nutzern müssten sich genügend finden die da im Verein mal die Sammeltasse rundgehen lassen.

https://github.com/sponsors

cbits68 commented 3 years ago

Gerade wenn man bedenkt welche Aufgaben gerade bevorstehen, damit ep3 auch in Zukunft noch lauffähig ist: Die genutzte Zend Framework 2.5 wird nicht mehr weiter entwickelt ... Nachfolger ist Laminas und erfordert somit fast ein komplettes recoding von ep3. PHP 7.4 hat noch ca. 6 Monate active Support. Security Support endet ende November 2022.

Ich halte es aber dennoch auch aus diesem Grund für sinnvoll mal zu wissen, was möglich Future Feature Requests sind, die man dann ggf. mit welcher Priorität in der nächste Generation von ep3 umsetzen kann.

Und ja, wenn man nicht "selbst Hand anlegen" kann, dann hat man vielleicht Glück, wenn ein Anderer bereits passende Features für sich umgesetzt hat und diese über seine Fork anbietet. Aber schon da hapert es ja Vielen bereits, die nicht den Git Mechanismus für Installation/Update/Erweiterung verstehen und verwenden.

Ansonsten muss ich mit dem Systems so leben, wie es ist, oder mich eben auf dem Markt nach Alternativen umschauen, die alle meine Anforderungen bereits erfüllen. Die gibt es ja und sie kosten eben Geld.

cbits68 commented 3 years ago

Viele Features wird man künftig nur umsetzen können, wenn man das Datenbankmodell überarbeitet, da das aktuelle Datenbankmodell diese nicht zulässt. Speziell die Themen Events, Abos's und Produkte müssten in der DB neu designed werden, damit man entsprechende Funktionen umsetzen kann. Besipiel: Veranstaltungen/Turniere zu denen sich Benutzer über das Frontend anmelden können bis die maximale Kapazität des Events erreicht ist.

cbits68 commented 3 years ago

Schau Dir doch mal Isuue #446 an. Ich denke so könntest Du es auch lösen. Buchender aktiviert bei der Buchung im Anmerkungsfeld den Begriff "Ballmaschine", Durch die CSS Anpassung kann eine Buchung mit Ballmaschine dann farblich anders dargestellt werden. So sieht der Platzwart dann auch sofort im Kalender, wann die Ballmaschine von wem auf welchem Platz genutzt wurde.

Zusätzlich sollte das Wort Ballmaschine dann eigentlich auch in der Buchungsbestätigung per Mail unter Anmerkungen: auftauchen. Dann könnte man sogar über schon erwähnte Weiterleitungsregeln diese Mails an den Platzwart senden.

Was natürlich leider nicht sichergestellt ist, dass die Ballmaschine nur einmal in der Stunde gebucht werden kann. Aber auch die Buchenden sehen ja an der Farbe, ob die Ballmaschine in der gewünschten Zeit bereits gebucht wurde ...

frankgayer commented 3 years ago

Die Idee ist gut aber leider nützt es mir nichts da man das Produkt mehrfach zur selben Zeit buchen kann obwohl es dieses nur einmal gibt

cbits68 commented 3 years ago

Andere Ideen habe ich leider nicht als Zwischenlösung. Vielleicht findest Du ja noch einen anderen Weg.