verbb / events

Craft CMS Plugin for events management and ticketing.
Other
22 stars 13 forks source link

Ticket Required Field #24

Closed JustJarethB closed 4 years ago

JustJarethB commented 5 years ago

Description

Custom Ticket Fields are not editable until the event has been saved with the ticket on it. However, a required field needs a value in order to save, hence a required field prevents tickets being added to events.

Steps to reproduce

  1. Create Ticket Type with custom field set to required
  2. Create Event and add ticket of newly created type
  3. Click Save

Additional info

joshangell commented 4 years ago

Hey @engram-design, I’m seeing this too - took me a while to work out what was going on 😂

engram-design commented 4 years ago

Improved in 1.2.0 - now when a ticket type is changed, the fields in the setttings cog will auto-update, rather than having to save and reload the event.

joshangell commented 4 years ago

Thanks Josh!

joshparylak commented 2 years ago

@engram-design I'm running into this same issue, and this fix doesn't actually address what the issue was.

If you create a ticket type that has required fields on it, you cannot save any events that you add it to. You get an error saying the event cannot be saved because there are required fields that are left blank.

Screen Shot 2022-04-12 at 9 45 41 AM

As far as I can currently tell, there is no way to require a field on a ticket because of this issue.

engram-design commented 2 years ago

Not sure I follow sorry, as that seems correct behaviour to me? The required fields aren't filled out for the ticket (which are set by the ticket type), so it's correctly flagging that you need to fill them out before saving the event, and all its tickets.

joshparylak commented 2 years ago

@engram-design Those are fields that I need to have on the tickets, that someone purchasing the ticket will need to fill out. I don't have a first name to enter on a a ticket to save it, it's information that is need for the purchased ticket.

The requirement shouldn't be enforced here, but when I have the tickets filled out by the end user on the front end. This is preventing me from marking fields as required.

engram-design commented 2 years ago

Right, so that's two different things, which admittedly is a bit confusing. There are fields you want to add against a ticket which a content only, and content managed. Things like notes, or other information to show against the ticket.

Then there are purchased ticket fields, which are fields you want to allow your buyers to add content to from the front-end.

At the moment both these share the ticket type fields, which runs into the issue you're having. You want these fields required only for people filling them out in the context of a ticket they're adding to their cart, which in turn, turns into a purchased ticket.

I would (for now) recommend to disable them as required, and set client-side validation (or just HTML required) on the fields for the front-end.

This should be properly fixed when we introduce purchased ticket fields, now that purchased tickets are elements.

joshparylak commented 2 years ago

@engram-design Got it, that's my current work around, so I'll stick with that in the meantime. Thanks for the explanation. Looking forward to the update!