NC 20 - Custom Background image of login screen is tiled for shared file links

This issue is present since the upgrade to NC20 (current installed version 20.0.2).

When I´m using a custom background image that has been defined via web GUI “Settings --> Theming --> Login Image” the login screen looks fine for the default login page.

But when it comes to an password protected shared file link, the image of the login screen will be displayed in tiles. Until now I didn´t found a solution to get rid of this issue.

For details please have a look on the atteached pictures.

a.) Default Login Screen

b.) Login Screen via share link

Is there anybody having the same issue and is there may a workaround available?

Kind regards,
luddi

1 Like

There was another thread a few days ago. Perhaps someone opened an issue.

I found only these threads, but without solution so far.

I use random images with the app Splash. There i get no image with passwiod-shares. Not nice but ok.

https://apps.nextcloud.com/apps/unsplash

Well yes, but that´s not the solution I am looking for. The request is to have the same picture style for both the default login screen and the login screen that is displayed at shared links.

I´m running a different Nextcloud server with version 19.0.5 and there it works fine as expected all the time since the instance was created.

But nevertheless, the problem seems to be present wether the NC instance was upgraded from v19 to v20 or creating a totally new instance of v20.

As you proposed to use the app “unsplash” is not an option in my case. I´m dealing with shared links for customers and they should see a custom picture at the login screen but it should not appear in a tiled view.

3 Likes

Its a problem with talks video-verification.

It is fixed by this pr:

So if you don’t wanna wait, just patch /var/www/nextcloud/apps/spreed/lib/PublicShareAuth/TemplateLoader.php on line 70
with

 	      // Check if "Video verification" option was set
		$share = $event->getShare();
		if (!$share->getSendPasswordByTalk()) {
			return;
		}

or deactivate talk.