Admin apps + editing rights

Although Glide doesn’t yet have true user profiles or levels of access - there are many different ways to create administrators and users in your apps. This video goes over the four most straightforward examples, but there are many more.

I would love people to comment on this thread and explain any distinctions/other ways. @Jeff_Hager in particular!

Thanks @Jeff_Hager & @George_B for your advice on this one.

3 Likes

This is a write-up on some additional thoughts to go along with the video.

In regards to the single app example, one idea I had is to build a dynamic list of admin emails. Instead of adding a static column in the sheet with an admin email address, I have two ideas for a dynamic value instead.

  • This first idea is to have an admin sheet that lists all of the admin email addresses. You could create a Single Value column on the data sheet which will obtain the email address of a single admin email. This can be used for per user filtering.
  • The second idea is to again have an admin sheet, but with 2 columns. One for the email address’s of multiple administrators and another column that will always have a static value of ‘Admin’ in all rows. In the data sheet, first create a template column that places the static value ‘Admin’ on all rows. Using the template column, create a relation column to link the Admin template column value to the Admin column in the Administrators sheet. Now create a Lookup column which will pull back an array of administrator emails from the Administrators sheet. This will allow you to use your existing idea, but the user can establish a list of multiple administrators that have special visibility access.

I also have the idea of a separate Admin Tab…In my app I have a Settings tab which is available to all users.

When you open that settings tab, I have a relation component and an inline list components (This could probably be structured better now that we have visibility and link to screen buttons, but I did this a year ago and haven’t really modified it much with the new features). The Admin settings only shows for the users that have the Admin relation value set.
image

Instead of explaining how I did it (which is old and convoluted), what I would suggest is possibly some placeholder sheet and create a tab based on that sheet. In the sheet would be a row with a value of ‘Admin’. You can use the methods in the beginning of this post to then obtain a list of administrators. The placeholder sheet would be used for a tab in detail style layout and filtered by signed in user. I think the hamburger menu is a good place for this tab. If the signed in user is not an administrator, then the tab should show as empty. In that tab you could place various administrator only components and lists. Here I think you could apply a similar concept to the Advanced Finstagram (FInstagram Profiles (Bug?)) example where only Admins have access to an editable sheet and on the user side, they see a copied version of the sheet that is used for view only.
This is where I think things get complicated and I think it’s highly dependent on how each and every app is set up. Some people might not like the idea of a separate tab to do admin type functions or they might not like the idea of duplicating data to have and editable version and a view only version. It’s an idea to though, to give people some ideas.

3 Likes

There are a lot of good practices in this video, for sure. But there are also constraints very strong that prevent some use cases…

Examples :

  1. If I set up 2 apps, one admin and one non admin app pointing on the same sheet, I won’t be able to duplicate these apps as duplication does not allow to duplicate 2 apps using the same sheet. The work around is to build a single app template containing the admin and non admin stuff, then to duplicate this app when required and then to split the admin and non admin stuff in 2 standalone apps.

  2. a single app with both admin and non admin capability is possible only if there’s user authentication. So it does not work for “public” apps with admin section, as in public apps there’s no way for administrators to authenticate.

What we would really need is a mix of all of that :

  • capability to duplicate a “Glide apps project” : N apps pointing on the same sheet.
  • apps allowing public access + an authentication menu where administrators or registered users could be able to login. If I am not registered, I have access to some screens and data, if I am a registered user I have access to some additional data including for example my profile and my preferences in terms of communication (newsletter and so on, capacity to delete my account,…), and if I am an administrator, I have access to much more screens and data.

Also, conditional tab display per user would be great

5 Likes

I agree with @Christophe_HK. Both of those feature would be great, as well as being able to change the sheet an app is pointing to.

2 Likes

I fully agree with @Christophe_HK and in particular with point number 2. Having that option built in within Glide would resolve the majority needs of Glide community

2 Likes