Form & Visibility - can you use a Choice to control entry fields?

Hi - my challenge:

I would like to show users a Form which has an option of either a) uploading an image or b) pasting in a URL

The sheet has two columns - Image 1 and Image 2 (then I have a Google Sheets formula to pick which image, transform them, etc)

In the Form I would like to have the user click on a Choice (or button) to therefore only display the method they choose. BUT the form has not been saved, so no row/column values have been set for me to use Visibility. I have made a screen recording to show what I mean… and it may simply not be possible. Thanks! M

1 Like

You have the right idea, but in order to use User Specific Columns in that way, you need to pass on the native Add Form, and create your own Form from a Details layout. Then the USC value will be written to the column as soon as it is selected.

So from your previous screen, do a Link to Screen → This Item, and then build your form out from there.

It’s a little bit fiddly doing it this way, but in the end you have much greater control.

Edit: I guess I should add that when you build your own form in this way, there will be no “Add” option at the top (as you have with the native Add Form screen). So you need to create your own. But that’s usually just a standard button labeled with “Submit” (or whatever), and you configure this with an Add Row action - and anything else that needs to be done. Usually - a notification indicating success, perhaps a Go Back action, and usually clearing the value of the User Specific Column (if appropriate).

1 Like

Sadly this will not work for me… I am using the card swipe interface…
and there is a bug when using the Floating Button (my ideal, but the button duplicates)
so I have to use the + and therefore the standard functionality :frowning:

A little video of what I am trying to achieve, and the wider context - thanks!

1 Like

Hey @Mark_Turrell

What @Darren_Murphy said is a great idea but since you already have created your form, I wanted to show you what I have done inside the form.

I hope this helps.

3 Likes

I’ve not played with the Swipe layout yet, so best I don’t try to advise your there or I’ll surely wind up with my foot planted firmly in my mouth :grinning:

But, regarding the magical duplicating floating button… have you checked if the extra button persists if you navigate to another tab and then back again? And have you checked if the duplicated button appears outside the builder? Reason I ask is that I’ve noticed similar (but not exactly the same) behaviour with floating buttons - but only ever inside the builder.

@SantiagoPerez I’m sitting here scratching my head trying to figure out how that works. :thinking: I just tried to replicate it, but I can’t. My understanding is that those boolean columns shouldn’t be set until the form is submitted - so how on earth are your visibility conditions working? (What are your visibility settings, btw - you didn’t show them in your video)

1 Like

Hey @Darren_Murphy

Here

1 Like

Cool, thanks. Yes I can replicate it now. But I still don’t understand how/why it works… @Jeff_Hager can you explain this one?

PS. @Mark_Turrell apologies for hijacking your topic :slightly_smiling_face: (Did you get it working?)

3 Likes

Hehe, well, I can’t fully explain it but I’ve been doing the same thing as @SantiagoPerez for quite awhile, so it’s nothing new.

I understand the confusion, but I think you might be thinking more along the lines of filtering as opposed to visibility. It used to be the case that you couldn’t filter an inline list or choice component…or set a value for a relation used for an inline list or choice component from within a form, because of the very reason that nothing has been written to the sheet yet. That led to the addition of Screen Values as an option to filter lists or choices based on values selected on a form screen.

Here’s what I have been doing.

4 Likes

Jeff, thanks. I think the thing that’s doing my head in is that even though the switch state is affecting the visibility of the other component, there is nothing being written to the underlying table. So it’s like it’s acting like a screen value even though it isn’t configured that way. It is, but it isn’t. A Schrödinger’s screen component :crazy_face:

3 Likes

Hehe, I hear ya. It just knows what you want it to do. :wink:

1 Like

Been doing the same thing as the others, without realising how little sense it makes.

I just assumed that it holds the data in a temporary format ready to be written on submit, and for some reason that data is readable. Didn’t think anything else about it.

Importantly for @Mark_Turrell it means that he should be good to get his switch/choice working :slight_smile:

1 Like

Works like a charm! It will really help to build more custom forms without having to have lots of sheets with lots of separate form info. I don’t mind how it works… it just works. Stellar share - thanks! :clap:

1 Like

Hi @Darren_Murphy - I tried… and it is a double button in the builder, on the desktop, and on the iPhone. And putting 2 buttons on gives me 4 buttons…

wow, that’s impressive.
I think you mentioned that it is a Private Pro app, yes?
I’d be reaching out to Glide support with that one (support@glideapps.com)

Just one thing… I see a Rich Text component in your components list. I don’t suppose that contains any funky CSS?

I think the double buttons are there because the underlying card is already rendered for whenever you swipe. The second button just happens to float to the top.

It would be complicated, but I’m sure you could set up some sort of logic to check which card is being displayed on top and conditionally hide or show the underlying button. I don’t have any ideas off the top of my head, but like I said, it would probably be overly complicated.

Hopefully it’s something Glide could fix.

1 Like

No funky CSS (yet) - though I might get to that.

I am actually recreating an app I raised $120K for back in the day… and spent it on a sort of working mobile app that was then too expensive to keep upgraded (without customers). I had an offshore dev team, spent time in their offices, etc…

In the end, it was the normal thing to do but I did not get far. Already in just 10 days of playing around I have worked out how to build the MVP, and versions 1, 2, and 3.

For instance I made a prototype of a ‘Dating’ card… card type = Dating - then a Compound Action for a Right Swipe - with a condition - if card type = Dating show this form… BUT (and this is the clever bit) … it is ALWAYS the same form! And the same backend sheet. I use visibility on the form components so that it looks like they are all dif forms, but they are the same, and same to the same sheet (even making use of some of the same columns too).

So a Game card with an embedded HTML5 game
A Demotivation Card - that has these nice posters… (using Cloudinary to rotate 90 degrees to it takes up the whole screen)…
and a whole lot more to come

And I keep feeling like I have no idea what I am doing! Great fun :slight_smile: and I am hugely appreciative of the community too :slight_smile: I will share properly soon as I have decided to get better feedback with a working app (and then play behind the scenes, using Visibility settings, hidden tabs, etc to work on the new stuff)

3 Likes

Hey @Darren_Murphy thanks for the video. However, I am not able to see the option to “Show component when” at all. All I can do is select columns from my data.
Any idea how to get this? Am on a Pro Private app.

Thanks :slight_smile:

I think you were replying to @SantiagoPerez, but that’s okay :slight_smile:

What type of component are you trying to set visibility conditions on? (not a List Relation by any chance?)

1 Like

Hey Darren, it’s just a choice selection. I want the next question to show only if the user chooses anything >0.

image

I tried checking the other inputs, but none of them have the “Show components when” option. Only data fields.

Yep, I ment to ask @SantiagoPerez :stuck_out_tongue:
Thanks guys!