Single click activation of the Create Event modal

I’ve been using the Calendar and Events functionality extensively over the past 3 years, across multiple self-hosted Discourse instances. It has been wonderful to see it develop into the impressive suite that it is now.

However, one significant issue continues to stand out for my users.

They struggle to work out how to actually post an event.

This has been consistent the whole time, and across user groups. It remains a problem despite the improvements to the process and modal recently.

The key issue seems to be that the concept of having an event embedded in a post is not familiar nor intuitive for most users. Basically, they need to be able to initiate an event with a single click. The current process:

  1. Create a new Topic
  2. Hit the ‘Plus’ button on the Composer bar
    • no, not that Plus button, the other one (yes, there are two)
  3. Hit ‘Create event’
    • yes, it is there, you just need to scroll the list down a bit
  4. Fill in all the details
    • once you’ve got there it is pretty good
  5. Tidy up the mess in the markdown
    • if the Event block is adjacent to existing text, it breaks. My users break this all the time.

See the problem?

To mitigate this, I’ve done two things.

A TC to add Subscribe and New event buttons

Using a Wizard to enable single click

To extend this further, I’ve used this New event button to point to a Custom Wizard (using the Custom Wizard Plugin 🧙) which in turn generates the Event block, so that they get the single action they are after. Here is the .json which you can upload:

create-event-wizard.json (2.3 KB)

By default this is set to New Zealand time; adjust the timezone or add a dropdown to suit your site.

While this works pretty well for our users, it is limited in functionality and a bit fragile.

It would be much better to have a way for users to jump straight into creating an event (ideally from the /upcoming-events page and/or a nominated Events category) as part of the plugin.

4 Likes

Thanks, that’s true—I’m also looking for a simplified solution to create an event.

By the way, I’m not sure if it’s possible since I create game sessions. I’d like users to click a “Create Game Table” button, then enter the table name (topic name), click Next, upload a game image, click Next, enter the table’s location address to view it on the map, and finally click Next to set the event dates, number of participants, and chat channel.

I’m not very familiar with Custom Wizard, so I’m not sure if this is feasible :sweat_smile:

2 Likes

The good news is that this is an area were actively working on improving.

The bad news is we don’t have an ETA yet on this work :slight_smile:

5 Likes

could it be a query endpoint like

https://domain.com/new-topic?title=My%20cool%20event%20topic&body=%5Bevent%20start%3D%222026-05-14%2012%3A00%22%20end%3D%222026-05-14%2012%3A30%22%20status%3D%22public%22%20timezone%3D%22Europe%2FLondon%22%20reminders%3D%22bumpTopic.3.days%22%5D%0APurpose%3A%20weekly%0A%5B%2Fevent%5D

I understand you can’t pre-fill replies in this way, so wouldn’t work for a purpose of Are there any plans to allow multiple events per thread or per post?.

I think the main thing i was getting at is keep all topic events in the OP, but have primary and secondaries, as per a poll that could also be in the OP.

I’d love to see your form :grin:

I’m not sure if your event form handles geographic positioning with the Locate plugin. It works well, but there’s an issue: the event doesn’t appear on the category map, even though it shows up in the event topic under ‘View Map.’ I think Custom Wizard might be skipping a step.

Anyway, we’ll face another problem: the future of Custom Wizard, as it seems it’s no longer being maintained, even though it greatly simplifies things for users with its macros and custom fields.

i was thinking of a poll in the OP where if one of the secondary events is meaningfully changed: a prompt appears telling the changer that the poll will change, votes for that event will be removed, do they want to notify the people who voted for that event?

The recently-released Calendar Subscription, the one that @nathank has a button for in his git repo, could respect all the primary events or be per-user toggle-able between primary or both

@nathank I’d be happy to test your JSON form for testing events.

Thanks in advance :folded_hands::grin:

Ok, I’ve added it to the OP:

It is being maintained, but not being actively developed. But it has been quite solidly put together (was once a subscription product that I was involved with), and hopefully will be around for a while yet.

1 Like

Thanks @nathank for the JSON file. Could you explain why you put a w in front of the step IDs in the event’s markdown?

I still have a small bug with my form and the locate plugin, and I’d like to see if someone could test my JSON. Everything works fine, except it keeps appearing on the map alongside all other events. Each time, I’m forced to validate the address in the created topic.