Merge pull request #11579 from MrPetovan/bug/11291-user-theme-display
Assume unsettable system.always_my_theme pconfig value is always true
This commit is contained in:
commit
ee40d8ea04
2 changed files with 8 additions and 14 deletions
|
@ -472,7 +472,7 @@ class App
|
||||||
// Allow folks to override user themes and always use their own on their own site.
|
// Allow folks to override user themes and always use their own on their own site.
|
||||||
// This works only if the user is on the same server
|
// This works only if the user is on the same server
|
||||||
$user = $this->database->selectFirst('user', ['theme'], ['uid' => $this->profile_owner]);
|
$user = $this->database->selectFirst('user', ['theme'], ['uid' => $this->profile_owner]);
|
||||||
if ($this->database->isResult($user) && !$this->pConfig->get(local_user(), 'system', 'always_my_theme')) {
|
if ($this->database->isResult($user) && !local_user()) {
|
||||||
$page_theme = $user['theme'];
|
$page_theme = $user['theme'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -504,7 +504,7 @@ class App
|
||||||
if (!empty($this->profile_owner) && ($this->profile_owner != local_user())) {
|
if (!empty($this->profile_owner) && ($this->profile_owner != local_user())) {
|
||||||
// Allow folks to override user themes and always use their own on their own site.
|
// Allow folks to override user themes and always use their own on their own site.
|
||||||
// This works only if the user is on the same server
|
// This works only if the user is on the same server
|
||||||
if (!$this->pConfig->get(local_user(), 'system', 'always_my_theme')) {
|
if (!local_user()) {
|
||||||
$page_mobile_theme = $this->pConfig->get($this->profile_owner, 'system', 'mobile-theme');
|
$page_mobile_theme = $this->pConfig->get($this->profile_owner, 'system', 'mobile-theme');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -235,7 +235,7 @@ class Profile
|
||||||
|
|
||||||
DI::page()['title'] = $profile['name'] . ' @ ' . DI::config()->get('config', 'sitename');
|
DI::page()['title'] = $profile['name'] . ' @ ' . DI::config()->get('config', 'sitename');
|
||||||
|
|
||||||
if (!DI::pConfig()->get(local_user(), 'system', 'always_my_theme')) {
|
if (!local_user()) {
|
||||||
$a->setCurrentTheme($profile['theme']);
|
$a->setCurrentTheme($profile['theme']);
|
||||||
$a->setCurrentMobileTheme(DI::pConfig()->get($a->getProfileOwner(), 'system', 'mobile_theme'));
|
$a->setCurrentMobileTheme(DI::pConfig()->get($a->getProfileOwner(), 'system', 'mobile_theme'));
|
||||||
}
|
}
|
||||||
|
@ -880,23 +880,17 @@ class Profile
|
||||||
*
|
*
|
||||||
* Used from within PCSS themes to set theme parameters. If there's a
|
* Used from within PCSS themes to set theme parameters. If there's a
|
||||||
* profile_uid variable set in App, that is the "page owner" and normally their theme
|
* profile_uid variable set in App, that is the "page owner" and normally their theme
|
||||||
* settings take precedence; unless a local user sets the "always_my_theme"
|
* settings take precedence; unless a local user is logged in which means they don't
|
||||||
* system pconfig, which means they don't want to see anybody else's theme
|
* want to see anybody else's theme settings except their own while on this site.
|
||||||
* settings except their own while on this site.
|
|
||||||
*
|
*
|
||||||
|
* @param App $a
|
||||||
* @return int user ID
|
* @return int user ID
|
||||||
*
|
*
|
||||||
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
|
|
||||||
* @note Returns local_user instead of user ID if "always_my_theme" is set to true
|
* @note Returns local_user instead of user ID if "always_my_theme" is set to true
|
||||||
*/
|
*/
|
||||||
public static function getThemeUid(App $a)
|
public static function getThemeUid(App $a): int
|
||||||
{
|
{
|
||||||
$uid = !empty($a->getProfileOwner()) ? intval($a->getProfileOwner()) : 0;
|
return local_user() ?: $a->getProfileOwner();
|
||||||
if (local_user() && (DI::pConfig()->get(local_user(), 'system', 'always_my_theme') || !$uid)) {
|
|
||||||
return local_user();
|
|
||||||
}
|
|
||||||
|
|
||||||
return $uid;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in a new issue