Events Plugin 📆

Hi!

Is it possible to provide a link to a .ics file containing all events in a specific forum? I know how to get individual .ics files for individual events… but an aggregated file containing all events?

That could be a cool feature for communities! Instead of adding events to the own private calendar one-by-one, this would enable users to show the community calendar based on discourse events directly in their own application along with google calendars etc.

Thank you for the great work with this plug-in!

@angus I’m not 100% sure event timezones are respecting DST changes, sadly. Compare these shots from Discourse and from my terminal…

Screenshot%20from%202018-05-21%2012-25-29
Screenshot%20from%202018-05-21%2012-26-06
Screenshot%20from%202018-05-21%2012-27-55

So may laptop is in Europe/London and systemctl knows that’s currently GMT+1, but Discourse doesn’t seem to know that in either the creation or display. Right now I’m creating events in GMT explicitly and subtracting an hour in my head, so I can be sure I get it right. Am I again missing a setting, or is this a bug? Thanks!

I think what may be confusing you is the timezone label. It’s not clear to me from your post that the time is actually incorrect.

Behind the scenes the IANA label, i.e. `Europe/London``, is always used to format the actual timed displayed. The choice about what to put in the timezone label however comes down to the formatting method of the timezone label.

Could you try turning the events timezone rails format setting off?

1 Like

Hey there again. Once again - thank you so much for this amazing plugin, i was waiting for such thing for a loooooong time.

I’ve been asking for making it able to require user to add event date in topic in event-enabled category some time ago in this topic but it seems to be forgotten/lost. Or it was completely removed from the roadmap.

Maybe i’m gonna provide some background on why is such thing pretty important in my (and i think not just in mine) situation - people are adding events without the dates (because they are lazy or non-perceptive, not sure) and the events are then not presented on the agenda page of my Events category (which is a completely reasonable behaviour). As this category is all about the events, i want the Agenda page to be the default one so i’ve set up that like this.

Result of this is a lot of events without dates added + people asking why their event is not visible when they visit the Events category. I need to respond to each one of them about the agenda and event dates things + i need to edit all the events by myself to add the missing dates.

It’s more like these users issue than the plugin issue but still, i think a good UX practice would be to make it able to force them to add the datetime. It would cut the confusion step caused by the fact that their event is not visible in the default Agenda page for Events category.

Thanks in advance!

1 Like

Sorry for the delay, I didn’t see that setting and had to schedule time for an upgrade :slight_smile:

You are correct, it’s the label I was concerned about, the time is correct - and yes, unchecking that setting seems to have worked. Thanks!

1 Like

Yes, I did forget about that. I’ve added a setting to make events required in a category.

https://github.com/angusmcleod/discourse-events/commit/ca86a377f30e4f637f9751b41f0a364ce39e4e2b

If you enable All topics in this category must have an event. in Category Settings, any new post or edited post without an event will show this error when the user attempts to create / save the edit.

Enabled in the Events category on my sandbox.


Current tasklist

  1. Ensuring the rsvp feature v1 works.

  2. Ensuring emoji and html entities work in topic excerpts in event cards (see).

  3. Update event details in title edit area.

  4. Better layout of event details in topic list

  5. Rspec and unit tests updates.

  6. Event calendar for groups.

  7. Adding multiple events to one topic.

  8. Allowing Discourse Local Dates to be displayed in calendars.

  9. Add event details to onebox previews.

  10. Recurring events.

  11. Event rsvp list export.

  12. Guest rsvp.

  13. Rsvp custom fields

  14. Event reminders.

2 Likes

Thank you so much! In return, i just made a 100% polish translation of that plugin :slight_smile:

btw - No text on add event buttons in this category setting for category seems to be broken - checking it and saving the form refreshes the page and the checkbox is un-checked again.

2 Likes

Thanks! I’ve merged your translations and fixed that issue.

https://github.com/angusmcleod/discourse-events/commit/572e47ff5c8809c656f00045593906228041e58f

2 Likes

Great!

Another thing came to my mind - we have an option to hide closed topics from agenda page. Would it be a heavy feature to implement to have such option for calendar view as well? :slight_smile:

Hi,

I’m running the latest beta, currently v2.1.0.beta1 +7.

Will this plugin work with it?

Cheers.

I’ve added settings that allow you to remove closed and past events from the calendar

https://github.com/angusmcleod/discourse-events/commit/39464c6fd4e6edc2ff73745362c4a2d6bd4269d8

Yes, it will work. You can see an example here: https://discourse.angusmcleod.com.au/c/events

1 Like

I am experiencing strange behavior with this plugin.

I created a category called events and set the ‘Default Topic List’ to Agenda. When I open the category, I get redirected to the agenda view (domain.org/events/l/agenda) as expected. But when I want to go back, the URL changes to domain.org/c/events and I immediately get redirected to domain.org/c/events/l/agenda again. The only way to get back is to click on the forum logo or to spam the back button in the browser. The same happens with the locations plugin.

I attached a video to show the problem + I rebuilt the forum before recording, so it should have pulled the latest version from github.

1 Like

Hi @angus. I continue to :heart: the events plugin so thanks for your continued work on it!

I keep fighting with formatting and I’m hoping you can help. Currently in topic list (e.g., ODK Forum), events show up with the following format.

Jun 13th @ 12:30, (GMT-03:30) Newfoundland ODK 1 TSC Call - 2018-06-13

It looks like whatever I’ve configured as my events event label format (currently MMM Do @ H:mm), then a comma, then the timezone information in events timezone format.

What would be awesome is if the comma and the timezone information was not included. Instead, I’d like to customize the label using the events event label format.

So if I put in MMM Do @ H:mm (zz) -, I should get something like this:

Jun 13th @ 12:30 (NDT) - ODK 1 TSC Call - 2018-06-13

And to clarify, I don’t want to change the time zone format of what appears when I’m creating an event, that format is great! I just want to change what appears in the events lists to make them more human readable.

1 Like

Hi Angus,

Calendar is enable in my formation and I made it the default page

46

But it shows the calendar that begin in may. Can it begin always “today” (the date you check it)?

I hope you understand :slight_smile:

I don’t know if this is a plug in issue, but the timezone dropdown says London is GMT+0, but London is GMT+1 (see Current Local Time in London, England, United Kingdom)

39

It’s not as much of an issue at it seems. The plugin does not reference daylight savings time when listing the timezones. I can assure you though that time translations are still rendered correctly in a user’s local timezone.

1 Like

@ploxnix This will fix your issue

https://github.com/angusmcleod/discourse-events/commit/495cd2c7741e6909bc0f0efe98268be2ed73e7e8

@yanokwa As you say, you can change the timezone format using events timezone format, e.g.

Are you saying you want two different timezone formats, one for the topic list and one for the compose, event add modal and topic itself? (or perhaps one for the topic list and topic (i.e. ‘displays’) and one for the compose and event add modal (i.e. edit UIs)).

It should do that currently, e.g. https://discourse.angusmcleod.com.au/c/events. Can you post an example link where it doesn’t?

Yeah, I’ve been meaning to address this. ActiveSupport::TimeZone which the default timezone label uses isn’t DST aware out of the box. This will fix the issue.

https://github.com/angusmcleod/discourse-events/commit/700b9d01bc1dad2c435634f20e81c6a3c358c3c9

2 Likes

Yes! The event add modal is perfect, but I’d like to customize the time zone for the topic list.

I think the best way to enable this might be to stop automatically appending the time zone information to the topic list as you are doing now because doing so also introduces formatting (e.g., the comma before (PDT) in your example) that a user might not want. If you stop appending, then a user can get the timezone information and their formatting by adding Z to event label format. Hope that is clear :smile:

Here is my calendar. It works because I use this link https://forum.lepeuplier.ca/c/general/formations/l/calendar

But as you can see here, when I click on “Formations”. Here is the link that begins in may

Ok, I’ve just pushed the next round of timezone improvements:

https://github.com/angusmcleod/discourse-events/commit/d7bd8bfc31ed41e358bb805770688106556d6434

  • Added ‘include’ settings for topic list and topic. If not selected, a timezone will not be appended to times in the relevant context.

    @yanokwa You just need to de-select events timezone include in topic list and add use your desired moment.js format in the standard time format.

  • ‘display’ settings - what timezone times are displayed in - are consolidated into an enum list:

    • default: times are always displayed in the default timezone (if the default timezone setting is not set, the user’s timezone is the default);

    • event: times are displayed in the event timezone if an event timezone is set; or

    • different: times are displayed in the event timezone if the event timezone is different from the default timezone

  • Further abstraction and refinement of the timezone client logic.

@Francois_Douville It looks like you’re either:

  • using an old version of the plugin; or

  • using a site customisation to add the menu link instead of letting the plugin do it.

If you compare your site with my sandbox you’ll see that the calendar menu link on your site:

  • does not use the url the plugin uses; and

  • does not have the classes the plugin uses.

Please check whether you have any site customisations that could be adding a different menu link and that the events plugin is up to date.

5 Likes