# Public App / Component's visibility based on user

**URL:** <https://community.glideapps.com/t/public-app-components-visibility-based-on-user/12751>\
**Category:** Ask for Help\
**Created:** [July 19, 2020, 12:54am UTC](https://community.glideapps.com/t/public-app-components-visibility-based-on-user/12751 "2020-07-19T00:54:43Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jonathon\_Kohn](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jonathon_kohn/32/8593_2.png) [@Jonathon\_Kohn](https://community.glideapps.com/u/Jonathon_Kohn)\
**Post date:** [July 19, 2020, 12:54am UTC](https://community.glideapps.com/t/public-app-components-visibility-based-on-user/12751/1 "2020-07-19T00:54:43Z")

</div>

Is there a way to manipulate a component’s visibility in a public app without requiring anything more than a phone number from the user?

Using “public with email” is out of the question for my client so I was hoping to use a “row id” column and enable user profiles to make a form appear to anyone whose phone number is empty but it either doesn’t work that way or I have overlooked something.

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [July 19, 2020, 12:58am UTC](https://community.glideapps.com/t/public-app-components-visibility-based-on-user/12751/2 "2020-07-19T00:58:58Z")

</div>

Make a user-specific column to store those phone numbers, because if you don’t want to record emails then it doesn’t make sense to have a user profiles setup I think.

Let the user write an entry to that column. Show components based on phone number is not empty. However when they close the app and open it again they have to retype the number if they want to see things.

---

<div class="post-metadata">

**Author:** ![Jonathon\_Kohn](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jonathon_kohn/32/8593_2.png) [@Jonathon\_Kohn](https://community.glideapps.com/u/Jonathon_Kohn)\
**Post date:** [July 19, 2020, 1:17am UTC](https://community.glideapps.com/t/public-app-components-visibility-based-on-user/12751/3 "2020-07-19T01:17:43Z")

</div>

So my issue is that my phone column was created in google sheets and not as a user specific column in glide!?

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [July 19, 2020, 1:19am UTC](https://community.glideapps.com/t/public-app-components-visibility-based-on-user/12751/4 "2020-07-19T01:19:27Z")

</div>

If you create it in the Sheets, then every new entry via the form will be a new row. With a user-specific column you can get it done with 1 row.

---

<div class="post-metadata">

**Author:** ![spencersRus](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/spencersrus/32/69_2.png) [@spencersRus](https://community.glideapps.com/u/spencersRus)\
**Post date:** [July 19, 2020, 1:43am UTC](https://community.glideapps.com/t/public-app-components-visibility-based-on-user/12751/5 "2020-07-19T01:43:42Z")

</div>

This is kinda close … maybe … it may give you an idea what @ThinhDinh is saying …

> [@Classroom App to Collect Research](https://community.glideapps.com/t/classroom-app-to-collect-research/12618):
>
> This is a little app I am working on to collect some research from my students. [https://50nifty.glideapp.io/](https://50nifty.glideapp.io/) I wanted to have an app where I could get the students to fill in some information, but NOT have to log in to do it. \*\*\* This is really only for students you can keep a secret. Each student will have an access code they will need to memorize and keep track of. \*\*\* Each student is assigned a STATE of the USA. Each student will have to collect TEN facts about their assigned s…

---

<div class="post-metadata">

**Author:** ![Jonathon\_Kohn](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jonathon_kohn/32/8593_2.png) [@Jonathon\_Kohn](https://community.glideapps.com/u/Jonathon_Kohn)\
**Post date:** [July 19, 2020, 1:56am UTC](https://community.glideapps.com/t/public-app-components-visibility-based-on-user/12751/6 "2020-07-19T01:56:01Z")

</div>

I’m probably not doing a good enough job of explaining.

My app is a waiting list for my County’s probate office. We have 4 locations with 1 supervisor at each location managing the waiting list and a single admin over the entire app.

I’m trying to allow Joe Smith to open the app and enter his phone number as an agreement to terms, then choose 1 of the 4 locations and choose wether he would like to be called or texted when he’s next in line.

I’m also needing each supervisor and the admin to log in and have a user profile (with email).

I’m not fully wrapping my head around how the single row for ALL users (minus the ones that manually log in) works when submitting a form to join the line of a single location.

---

<div class="post-metadata">

**Author:** ![Jonathon\_Kohn](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jonathon_kohn/32/8593_2.png) [@Jonathon\_Kohn](https://community.glideapps.com/u/Jonathon_Kohn)\
**Post date:** [July 19, 2020, 2:00am UTC](https://community.glideapps.com/t/public-app-components-visibility-based-on-user/12751/7 "2020-07-19T02:00:14Z")

</div>

I have 4 supervisors and an admin that need to log in with email addresses and the general public that won’t need to log in. Is that possible?

---

<div class="post-metadata">

**Author:** ![Jonathon\_Kohn](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jonathon_kohn/32/8593_2.png) [@Jonathon\_Kohn](https://community.glideapps.com/u/Jonathon_Kohn)\
**Post date:** [July 19, 2020, 2:05am UTC](https://community.glideapps.com/t/public-app-components-visibility-based-on-user/12751/8 "2020-07-19T02:05:37Z")

</div>

I can’t seem to pull the user’s phone number into the form when they choose a location.

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [July 19, 2020, 2:34am UTC](https://community.glideapps.com/t/public-app-components-visibility-based-on-user/12751/9 "2020-07-19T02:34:30Z")

</div>

So set up a user profiles sheet for that, prepopulate it with an email column and a type column (Supervisors or Admin). When they login via the left menu panel, they will see what only they can see based on their user type.

For the phone number, make the user-specific column as I said, then show the form when number is not empty. In the form, catch all other pieces of info you need, get the number in via a Columns component.

---

<div class="post-metadata">

**Author:** ![Jonathon\_Kohn](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jonathon_kohn/32/8593_2.png) [@Jonathon\_Kohn](https://community.glideapps.com/u/Jonathon_Kohn)\
**Post date:** [July 19, 2020, 2:36am UTC](https://community.glideapps.com/t/public-app-components-visibility-based-on-user/12751/10 "2020-07-19T02:36:59Z")

</div>

Trying now! Literally just started that on my own. I’m used to working off of one users sheet so this is new territory!!

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [July 19, 2020, 3:34am UTC](https://community.glideapps.com/t/public-app-components-visibility-based-on-user/12751/11 "2020-07-19T03:34:00Z")

</div>

Let me know if I can help 😉
