New Forms

@Marvelxy

For the two forms, we already have most of the text fields in i18n. I’ll review them and update when we start work on the task.

Both text’s are in this file but there is a second one also already built which we can repurpose.

If you search the codebase for the handles/tags i18n searches for you’ll easily find the code it all links up to.

The way the original worked was there was one form with a toggle to switch between posting an event, or posting yourself onto the map. This was a constant source of problems so when we rebuild it we should separate them out into two forms.

The 1st form will operate as it currently does, with the user clicking the ‘Gather’ button.

The 2nd form will become part of the sign up process, and should load if unser who haven’t completed it, or logged in, click any activity or profile on the map. so i’ll see if i can build it in Discourse as part of the existing signup.

We’d also need to build a button somewhere on the site which allows users to see and edit their profile. I suggest a floating footer to mirror the floating footer on the Docuss side. Probably the easiest way to do this is just to use the floating footer on the Docuss side, since i already have a task to set it up to recognise the homepage.

If we do that we should probably move the Gather button there too for consistency. That’s a 2 min task so no stress, we just comment out the current gather button and add the create new event url to the floating footer in Discourse. I think its ‘new=1’

I can use that to make the Discourse footer show on the maps, but with different buttons. So you’d need to send me the link to the forms (which currently already have an edit option, if we manage to get those working again).

One of the fields will be:

‘i’m available to meet’ (this means other users can invite you to join their public happiness activities nearby).

Users will want to toggle this to ‘currently unavailable to meet’ sometimes.

We also have a popup modal which opens after users post an activity to the map, which has social media sharing buttons. Here it is in i18n. Again searching the i18n handle/tags in the codebase will locate the rest of the code, which can hopefully be mostly reused.

I’m investigating why the old forms broke before we start building new ones and came across an issue which might mean nothing, or might be important once the forms are working.

The forms load by adding ‘?new=1’ to the url.

On the React version this works: https://fl-maps.publichappinessmovement.com/map?new=1

On the https://publichappinessmovement.com/ version Docuss blocks this url change, but the modal still opens so maybe it’ll be an issue and maybe not.

@Marvelxy got the forms working again!!!

I’m gonna test them and drop tweaks and bugs needed here:

  1. Category select isn’t working. I suspect its related to how they categories are displayed as these are top level categories and not the actual activities underneath.

Long term
We want to switch this to a search, select format so users can type what they are looking for. The search format will mean we don’t need the top level categories at all, as users can search directly for the activity they are looking for.
I’m not sure if now is a good time for that while fixing or not, i’ll leave that up to you Marv.

The previous solution
was that the category select should be a drop down modal, and the top level items when clicked would expand to show the activities underneath.

Both
selecting a category is supposed to auto-fill in the short and long description from the texts in i18n. Users can edit this text, its just to save time and help them if they aren’t sure what to fill.

1 Like
  1. Character limits
    There should be character limits on the descriptions. Both for too short and too long. I forget what they are, but probably like 50% more than the auto-fill descriptions in i18n. I can edit any value you set in the future so no stress if it’s not perfect (as long as it won’t create a DB issue with pre-existing activities if i lower it).

  1. Address selector

The form should auto suggest addresses as the user types. This function might already be in our codebase, unless it was from the quick forms package we were using as it was working before.

The addresses would need to be being pulled from the map as the map needs to know where to put the activity. Currently we use google maps, although at some point we should switch to open maps before the site gets too active as i think google maps api is a lot more expensive now than when we built it.

  1. Notices and guides are working on the forms

Cool!

(the blue box)

  1. Form content should stay in cache

When users close the form, anything they’ve typed should be there when they reopen the forms. Currently it is wiped. Clicking off the form closes it and is something easily done by mistake, so users would be extremely frustrated when their almost finished activity is wiped.

  1. Separate forms

Create a Public Happiness Activity and Put myself on the Map! should be hidden and auto-selected based on which url is used to open the form. For example:

Create a Public Happiness Activity: https://fl-maps.publichappinessmovement.com/map?new=1

Put myself on the Map!: https://fl-maps.publichappinessmovement.com/map?new=2

  1. Put Myself on the Map hides the Categories model
    As users putting themselves onto the map do not want to select a category. We solved this last time by creating a Put Myself on the Map category which is auto-selected when the ‘Put Myself on the Map’ toggle is selected, and hiding the modal.

  1. Find Hints and Date Selector
    These options are hidden if the ‘put me on the map’ toggle is selected. Also lets change the name to ‘How to find us’ for when it is visible.

  1. New Section visible when the ‘put me on the map’ toggle is selected

Users need to be able to set themselves as:

  • ‘available for activity invites’
  • ‘currently unavailable’

They will need quick access to this option when visiting the map, so lets have a meeting to plan and design it. I think this should be accessible to toggle either in the floating footer, or as one of the most prominent options in a users profile settings, in Discourse.

  1. Other options for repeating

Will need to have the ability to set an activity to repeat every week, month, 6 months, year.

It’ll also need users to be able to set:

  • ‘on this day every week/month/year’ for example Saturday. Or
  • ‘on this date every month/year’ for example the 15th, or the 15th Feb.

  1. Select a Host

Isn’t working. I think this is for safeguarding, so if there’s something inappropriate then by allowing reputable video hosts with much bigger budgets than us, they should deal with it on their end.

Already functional but nice-to-have changes

Selecting a month should close the month selector. Currently users need to click off of the modal to get it to close.