{Plugin} - Full Calendar Scheduler Suite

@josemansilva Can you show the workflow.

One thing to do when you get this error is be sure to include a logout button. Even if that error says they’re not logged in, manually log the user out.

@eve is this expected behavior with social logins? The bubble system isn’t always automatically re authenticating users and requires a manual logout to be able to re-authenticate. This is something I’m usually experiencing after several uses of the same token.

My user dont use a Social login. (is this the problem ?)
Do you mean logout from bubble account or logout from google calendar ?

can you try to use the standard ‘logout’ bubble action, then try to authenticate again? do you mean you use the bubble login, then authenticate the user later?

Yes, i use bubble login and authenticate the user later.

I try standard logout and login again, then authenticate with google in order to sync Calendar events.

The only fix i found is if i try a different google account, then switch back to the desire google account. In this way start working again

Hmm. That is strange. It seems like the token expires but bubble isn’t recognizing this. And until we are given access to that info refreshing the authenticated users token is impossible.

I’m hoping eve or someone from bubble support could chime in.

The fact that you can re authenticate only after a second user authenticates tells me there is something funny with the way bubble is handling the tokens since it’s out of our hands using this login/auth method.

@josemansilva i plan to continue researching this issue to see if I can improve the ease of use. I’m sorry you’re having this issue.

No problem thank you for the support. I just want to know if i logged the user with google at beginning instead bubble login can resolve the issue

I think so. that’s what works for me. I would give them the option from the beginning to use google sign in or to sign up using their email.

1 Like

In process! I am just working up the recurring rules generator element! This opened up the ability to create a genera use time slot generator and with a bit of extra coding should be intelligent enough to recognize when a time slot is occupied and not put that out in its array of available time slots!!!

I am working on the next feature right now. You will be able to create rules for recurring events on your calendar. You will be able to move recurring events that are all part of a group together we will be able to change their times together. You will also be able to create a list of available date times and block out any that are currently in a list that you have of “busy” date time ranges. I am looking to make this an all inclusive calendar package.

Stop talking dirty to me!!

This sounds really cool @jared.gibb :slight_smile:

Do I need the TopCal plugin to be able to use your calendar plugin at all? Or just some of the features require TopCal? I did get gungho and just put the element on the page and started to try and set it up but nothing is displaying (as in not even a blank calendar) so realised I probably needed to set aside some proper time to focus on the instructions…yes I’m the same way with Ikea :rofl:

@equibodyapp

The top Cal plug-in is not needed though it pairs nicely. @gf_wolfer did an awesome job putting that plug-in together and it works really well to create and block out timeslots. It doesn’t produce certain other elements that the calendar requires so I created an element that packages with my calendar that you can add to a page to produce the extra lists of items you would need to complete a calendar event like an end time, color, identifier.

After you place the element on your page you will need to add the initialize calendar action in a workflow. Be sure not to initialize the calendar until the element is visible. I realize that sounds weird though because the calendar is already invisible until it’s initialized, you just need to make sure that it’s not technically hidden per bubble standards. I.e. if you click the checkbox this element is visible on page load in the group that’s holding that element is visible on page load and you initialize the action in the workflow it should work just fine.

See this page

Jaredgibb.bubbleapps.io/google

1 Like

The intelligent Timeslot generator / repeating events rule generator is nearing readiness for testers? It will pair and package perfectly with this calendar plugin and may get sold on the side as a standalone!


who’s up for some testing in the next week?!

You test, you keep, fo free

For a note to anyone else interested this utilized the rrulejs and Luzon libraries and wasn’t too difficult to throw together. Now to make sure it works cross timezone!

1 Like

@josemansilva

I wanted to reach out and let you know what I have found out. After emailing with bubble support, although the documentation would indicate that their system will handle refreshing the token automatically, they don’t do that unless you use one of their plug-ins. That’s weird but whatever. I think what it has to do with more is the number of times i login or refresh the browser screen. I’m not totally sure on that and don’t quote me. So, long story short it won’t refresh the token automatically the way that we would expect it to, so I think I’m gonna do some dirty work and put out a Google calendar API that includes refresh token calls and instructions for how to do set up this flow. Essentially what bubble told me is that if my API has a token that I need to worry about refreshing I will need to do it on my own and set up API calls and work flows that will handle that. Which is crazy. And it makes me feel like they should just give me access to the damn refresh token that they are getting in the first place but noooooo, it’s hidden. Maybe somebody else has some more insight on this but that’s what I am at so far

1 Like

I’ll put my hand up to test the repeating events - my users would be VERY happy if I could roll a solution out for them :smiley:

Got the calendar showing after adding the initialize workflow (of course :rofl: )

For sure! I’ll keep you posted. This will be ready for real testing by Friday

Only a few more free calendars remain!!

This will hopefully be the complete package when finished. There’s still some work to do! Get it while the price is low!!!

@jared.gibb

Thank you one more time for your research, finally some plugin provider with proper clarification. Its strange bubble have such behaviour but right now its all good with the login using Google.

Thank you

1 Like

I think @boston85719 would be able to share some insights with you about this - he’s worked out the google calendar API refresh token thingomy :slight_smile:

HOORAY!

Screen Shot 2021-05-13 at 10.10.15 PM
@equibodyapp @yorgio1024

The TimeSlot Generator is live!

This element allows you to create time slots based on a saved availability schedule on the fly


Display these in any time zone for your user and watch their times shift appropriately.

This element also works to block out time slots that are already booked based on a set of events you feed it.

check it out here

https://jaredgibb.bubbleapps.io/timeslottester

soon to be able to create any type of recurring event using RRules! This rrule would be saved to the dB on the event and when fed to the calendar would auto populate the events on the calendar where they should be. Save a list of existes and block out desired future events. Based on this library.
http://jakubroztocil.github.io/rrule/

You’ll also be able to set your time slots with an rrule string

Things should be more flexible and powerful than before!

Timezone aware FullCalendar + Timeslot/Repeating events generator + Timeslot cleaner

Create your time slots in America/Detroit and display them in America/San_Francisco. Think parallel dates

The next thing to do is update the damn documentation!

@lantzgould resource view is live

2 Likes

:eyes:

Great work, @jared.gibb!

1 Like

Thank you!! I have a feeling if I can grind it out, I can cut down from 2 libraries to 1 library for the time slots.

Rrule is powerful but a little tricky to get used to!