immich-app / immich

High performance self-hosted photo and video management solution.
https://immich.app
GNU Affero General Public License v3.0
43.08k stars 2.1k forks source link

[BUG] Upload on a public shared album on iOS (web) need to select twice upload button #6165

Open Th0mC opened 7 months ago

Th0mC commented 7 months ago

The bug

Users expect to have selection menu on first click and think this is not working. This happens on first upload only. The following ones, button is working properly at first click.

The OS that Immich Server is running on

Docker on linux arm64

Version of Immich Server

v1.91.4

Version of Immich Mobile App

N/A

Platform with the issue

Your docker-compose.yml content

{
  "cosmos-installer": {
    "form": [
      {
        "name": "photoPath",
        "label": "What is the path to your uploaded Photos?",
        "initialValue": "{DefaultDataPath}/immich-photos",
        "type": "text"
      },
      { 
        "name": "installImmichBackup",
        "label": "Do you want to add a backup agent for the database? (https://immich.app/docs/administration/backup-and-restore)",
        "initialValue": false,
        "type": "checkbox"
      }
      {if Context.installImmichBackup}
      , { 
        "name": "ImmichBackupPath",
        "label": "Where do you want to save that backup?",
        "initialValue": "{DefaultDataPath}/immich-backup",
        "type": "text"
      }
      {/if}
    ]
  },
  "minVersion": "0.12.0",
  "services": {
    "{ServiceName}": {
      "container_name": "{ServiceName}",
      "hostname": "{ServiceName}",
      "image": "ghcr.io/immich-app/immich-server:release",
      "command": "start.sh immich",
      "networks": {
        "{ServiceName}": {}
      },
      "volumes": [
        {
          "source": "{Context.photoPath}",
          "target": "/usr/src/app/upload",
          "type": "bind"
        },
        {
          "source": "/etc/localtime",
          "target": "/etc/localtime",
          "type": "bind"
        }
      ],
      "labels": {
        "cosmos-persistent-env": "UPLOAD_LOCATION, TYPESENSE_API_KEY, DB_PASSWORD, DB_DATABASE_NAME",
        "cosmos-force-network-secured": "true",
        "cosmos-auto-update": "false",
        "cosmos-icon": "https://azukaar.github.io/cosmos-servapps-official/servapps/Immich/icon.png",
        "cosmos-stack": "{ServiceName}",
        "cosmos-stack-main": "{ServiceName}"
      },
      "environment": [
        "UPLOAD_LOCATION=/usr/src/app/upload",
        "TYPESENSE_API_KEY={Passwords.0}",
        "DB_PASSWORD={Passwords.1}",
        "DB_HOSTNAME={ServiceName}-database",
        "DB_USERNAME=postgres",
        "DB_DATABASE_NAME=immich",
        "REDIS_HOSTNAME={ServiceName}-redis"
      ],
      "depends_on": [
        "{ServiceName}-redis",
        "{ServiceName}-database"
      ],
      "routes": [
        {
          "name": "{ServiceName}",
          "description": "Expose {ServiceName} to the web",
          "useHost": true,
          "target": "http://{ServiceName}:3001",
          "mode": "SERVAPP",
          "Timeout": 14400000,
          "ThrottlePerMinute": 12000,
          "BlockCommonBots": true,
          "SmartShield": {
            "Enabled": true,
            "PolicyStrictness": 3,
            "PerUserRequestLimit": 12000,
            "PerUserSimultaneous": 100,
            "MaxGlobalSimultaneous": 1000
          }
        }
      ],
      "restart": "always"
    },
    "microservices": {
      "container_name": "microservices",
      "hostname": "microservices",
      "image": "ghcr.io/immich-app/immich-server:release",
      "command": "start.sh microservices",
      "networks": {
        "{ServiceName}": {}
      },
      "volumes": [
        {
          "source": "{Context.photoPath}",
          "target": "/usr/src/app/upload",
          "type": "bind"
        },
        {
          "source": "/etc/localtime",
          "target": "/etc/localtime",
          "type": "bind"
        }
      ],
      "labels": {
        "cosmos-persistent-env": "UPLOAD_LOCATION, TYPESENSE_API_KEY, DB_PASSWORD, DB_DATABASE_NAME",
        "cosmos-force-network-secured": "true",
        "cosmos-auto-update": "false",
        "cosmos-icon": "https://azukaar.github.io/cosmos-servapps-official/servapps/Immich/icon.png",
        "cosmos-stack": "{ServiceName}",
        "cosmos-stack-main": "{ServiceName}"
      },
      "environment": [
        "UPLOAD_LOCATION=/usr/src/app/upload",
        "TYPESENSE_API_KEY={Passwords.0}",
        "DB_PASSWORD={Passwords.1}",
        "DB_HOSTNAME={ServiceName}-database",
        "DB_USERNAME=postgres",
        "DB_DATABASE_NAME=immich",
        "REDIS_HOSTNAME={ServiceName}-redis"
      ],
      "depends_on": [
        "{ServiceName}-redis",
        "{ServiceName}-database"
      ],
      "restart": "always"
    },
    "machine-learning": {
      "container_name": "machine-learning",
      "hostname": "machine-learning",
      "image": "ghcr.io/immich-app/immich-machine-learning:release",
      "networks": {
        "{ServiceName}": {}
      },
      "volumes": [
        {
          "source": "{ServiceName}-model-cache",
          "target": "/cache",
          "type": "volume"
        }
      ],
      "labels": {
        "cosmos-persistent-env": "UPLOAD_LOCATION, TYPESENSE_API_KEY, DB_PASSWORD, DB_DATABASE_NAME",
        "cosmos-force-network-secured": "true",
        "cosmos-auto-update": "false",
        "cosmos-icon": "https://azukaar.github.io/cosmos-servapps-official/servapps/Immich/icon.png",
        "cosmos-stack": "{ServiceName}",
        "cosmos-stack-main": "{ServiceName}"
      },
      "environment": [
        "UPLOAD_LOCATION=/usr/src/app/upload",
        "TYPESENSE_API_KEY={Passwords.0}",
        "DB_PASSWORD={Passwords.1}",
        "DB_HOSTNAME={ServiceName}-database",
        "DB_USERNAME=postgres",
        "DB_DATABASE_NAME=immich",
        "REDIS_HOSTNAME={ServiceName}-redis"
      ],
      "restart": "always"
    },
    "{ServiceName}-redis": {
      "container_name": "{ServiceName}-redis",
      "hostname": "{ServiceName}-redis",
      "image": "redis:6.2-alpine@sha256:80cc8518800438c684a53ed829c621c94afd1087aaeb59b0d4343ed3e7bcf6c5",
      "networks": {
        "{ServiceName}": {}
      },
      "labels": {
        "cosmos-persistent-env": "POSTGRES_PASSWORD, POSTGRES_USER, POSTGRES_DB",
        "cosmos-force-network-secured": "true",
        "cosmos-auto-update": "false",
        "cosmos-icon": "https://azukaar.github.io/cosmos-servapps-official/servapps/Immich/icon.png",
        "cosmos-stack": "{ServiceName}",
        "cosmos-stack-main": "{ServiceName}"
      },
      "restart": "always"
    },
    "{ServiceName}-database": {
      "container_name": "{ServiceName}-database",
      "hostname": "{ServiceName}-database",
      "image": "tensorchord/pgvecto-rs:pg14-v0.1.11",
      "user": "postgres",
      "networks": {
        "{ServiceName}": {}
      },
      "labels": {
        "cosmos-persistent-env": "POSTGRES_PASSWORD, POSTGRES_USER, POSTGRES_DB",
        "cosmos-force-network-secured": "true",
        "cosmos-auto-update": "false",
        "cosmos-icon": "https://azukaar.github.io/cosmos-servapps-official/servapps/Immich/icon.png",
        "cosmos-stack": "{ServiceName}",
        "cosmos-stack-main": "{ServiceName}"
      },
      "environment": [
        "POSTGRES_PASSWORD={Passwords.1}",
        "POSTGRES_USER=postgres",
        "POSTGRES_DB=immich"
      ],
      "volumes": [
        {
          "source": "{ServiceName}-pgdata",
          "target": "/var/lib/postgresql/data",
          "type": "volume"
        }
      ],
      "restart": "always"
    }
    {if Context.installImmichBackup}
    ,
    "{ServiceName}-backup": {
      "image": "prodrigestivill/postgres-backup-local",
      "container_name": "{ServiceName}-backup",
      "hostname": "{ServiceName}-backup",
      "restart": "unless-stopped",
      "labels": {
        "cosmos-persistent-env": "POSTGRES_DB, POSTGRES_USER, POSTGRES_PASSWORD, DB_DATABASE_NAME",
        "cosmos-force-network-secured": "true",
        "cosmos-auto-update": "false",
        "cosmos-icon": "https://azukaar.github.io/cosmos-servapps-official/servapps/Immich/icon.png",
        "cosmos-stack": "{ServiceName}",
        "cosmos-stack-main": "{ServiceName}"
      },
      "networks": {
        "{ServiceName}": {}
      },
      "volumes": [
        {
          "source": "{Context.ImmichBackupPath}",
          "target": "/db_dumps",
          "type": "bind"
        }
      ],
      "environment": [
        "POSTGRES_HOST={ServiceName}-database",
        "POSTGRES_DB=immich",
        "POSTGRES_USER=postgres",
        "POSTGRES_PASSWORD={Passwords.1}",
        "SCHEDULE=@daily",
        "BACKUP_KEEP_DAYS=7",
        "BACKUP_KEEP_WEEKS=4",
        "BACKUP_KEEP_MONTHS=6",
        "BACKUP_DIR=/db_dumps",
        "PUID=1000",
        "PGID=1000"
      ],
      "depends_on": [
        "{ServiceName}-database"
      ]
    }
    {/if}
  },

  "networks": {
    "{ServiceName}": {}
  }
}

Your .env content

no .env file

Reproduction steps

1. Create a link to a public shared album
2. Open the link in Safari or Chrome iOS (no user logged)
3. First click on upload button -> no menu opened
4. Second click the selection menu is opened
Users expect to see the menu at first click

Additional information

No response

Th0mC commented 7 months ago

Still present on v1.92.1

Chuckame commented 3 months ago

Hello, same issue here, v1.103.1