Have document show up in Editors/Viewer documents list

Hi there!
This isn’t really problem more than an irritation. When I share a document, I’d like it to show up in their list of “All Documents”. I assume this is possible, if not please do correct me.
I have created a document that I want to share results to a few people. I was hoping they could login to their account and it would show under their “All Documents”. However it’s empty.

Here is an example:



They do of course have access via the URL, but is that the only way they can access it? is it not possible to have the document show up in the documents list?

I also wanted to point out it says it’ll email an invite, however, as this is grist-core, I only have authentication setup and no email was sent or received. As far as I was aware Emails are Enterprise only.

Thank you in advance!

Hmm surprising. Maybe double check that the home page is for the same “site” (in the top left dropdown) if your installation is set up for multiple sites - but I’d have expected a prompt telling the user about other sites in that case, like this:

Does the “adrian” user invited have exactly the same email address as the one that signed in? Hmm but you say the user can successfully access the doc through the link…

The fact that emails are not sent doesn’t matter. You’re right that is enterprise only though we’d happily accept a pull request with an alternative for the commercial email service we use for our SaaS.

I’m a bit stumped. The behavior you expected is also what I would have expected, with a nuance around multi-site operation.

I have not created any teams sites, this very small with just me and 2 people I will be sharing with, if I’m lucky upwards of 4-5 if I manage to convince people to use Grist :slight_smile:
So it’s all on grist.domain.example

The specific document in question is under “Home” Workspace, however I’ve tried putting it under different workspaces with no difference.
The accounts are admin@domain.example and adrian@domain.example.

This is how it looks
image
image

I hope there’s something glaringly obvious that I did wrong! If it would help (and you had the time/interest) I can create an account for you on my instance and you can mess around with it.

EDIT: Just wanted to confirm adrian email is correct, as confirmed with the fact that it can be accessed via the URL, just doesn’t show up under “All Documents”.

Hmm for that setup, each user has an individual personal site, but still I’d expect to see a workspace appear named @<sharing username>, like at the bottom of this:

You could consider setting GRIST_SINGLE_ORG to avoid the personal sites, which may be just confusing the issue.

If you try this, download your docs first - they won’t get deleted or anything, but they will become inaccessible because you won’t be able to navigate to the site they are currently in.

Beyond that, I’d like to get a look at your (redacted) environment variable settings just to be sure of which configuration you are in.

Hmm I’ll have a look at trying that, if I want my grist instance on grist.domain.example, I should set APP_HOME_URL to domain.example and set GRIST_SINGLE_ORG to grist ? Or am I misunderstanding that?

Please note, it is unencrypted, because I have another server that handles SSL running caddy. So from the internet to my LAN it is SSL, just within my LAN it is plaintext.

Here is my docker-compose.yml file:
version: '3'

services:
  grist:
    image: gristlabs/grist
    restart: unless-stopped
    environment:
      #- DEBUG=1
      - GRIST_SANDBOX_FLAVOR=gvisor
      - GRIST_SESSION_SECRET=xxxxxx
      - GRIST_SUPPORT_EMAIL=admin@xxxx.xxx
      - GRIST_DEFAULT_EMAIL=admin@xxxx.xxx
      - APP_HOME_URL=https://grist.xxxxx.xxx
      #- GRIST_FORCE_LOGIN=true
      - GRIST_SAML_SP_HOST=https://grist.xxxx.xxx
      - GRIST_SAML_IDP_UNENCRYPTED=1
      - GRIST_SAML_IDP_LOGIN=https://xxx.xx.auth0.com/samlp/xxxxxxxxxxxx
      - GRIST_SAML_IDP_LOGOUT=https://xxx.xx.auth0.com/samlp/xxxxxxxxxxx
      - GRIST_SAML_IDP_CERTS=/persist/xxxxxxx.pem
      - GRIST_SAML_SP_KEY=/persist/xxxxxx_pkey.pem
      - GRIST_SAML_SP_CERT=/persist/xxxxx_certificate.crt
      - GRIST_WIDGET_LIST_URL=https://github.com/gristlabs/grist-widget/releases/download/latest/manifest.json
      - GRIST_HIDE_UI_ELEMENTS=templates,sendToDrive
      - GRIST_SNAPSHOT_KEEP=3
    ports:
      - 8484:8484
    volumes:
      - ./persist:/persist
    stdin_open: true
    tty: true

You could set GRIST_SINGLE_ORG to some arbitrary team name (lower case, no funny characters), it doesn’t have to relate to the domain. APP_HOME_URL would remain unchanged.

Thanks for the docker compose file, everything looks reasonable (GRIST_SNAPSHOT_KEEP won’t have an effect without external storage configured, but that is unrelated). You’ve been seeing /o/docs prefixes in your URL paths, right? That would go away with GRIST_SINGLE_ORG.

I’d have expected your existing setup to work - I’ll take a shot at replicating when I have a chance.

Perfect, thanks for the info, I will try out GRIST_SINGLE_ORG and let you know if it has any effect.
And yes, can confirm the domain is https://grist.domain.example/o/docs/ all going to “All Documents” and all documents start with /o/docs/xxx.

Thanks for letting me know about snapshot. I enabled it at some point to configure it but ended up forgetting.

So… I have discovered something interesting and I have absolutely no clue what caused this. But in short, I discovered the Workspace itself was the issue.
I set the single org, and under the default email I could see all workspaces, I could give whatever access I wanted to those workspaces to any user, they could not be accessed. I created a new workspace, and they can get access no problem.

Manage team page:

OLD Workspace named "Template"manage users"

NEW Workspace named "test"

Adrian's Documents

So… I guess somehow the old workspaces were bugged? I’m not sure if it’s useful but I have yet to delete or remove them in case there’s something you can learn from it.
I will try now to go back to non single-org and see if creating a new workspace will work.

EDIT: Can confirm that removing GRIST_SINGLE_ORG from env variables does not fix the issue.
Brand new workspace, brand new doc, invite user adrian, can access via URL, cannot access via “All Documents”.
Amusingly now I have a teams site in addition to my regular site showing.
image

Does not seem possible to remove it again.

In any case, setting single org is a workaround that works :slight_smile: I think I prefer it, as it seems to have much more granular control for what I share, and how it’s shared. Thank you!