mirror of
https://github.com/nextcloud/server.git
synced 2026-04-15 22:11:17 -04:00
Theming: Add preview for login screen
This commit is contained in:
parent
044d7c3bb7
commit
d95aec2ed2
5 changed files with 46 additions and 5 deletions
|
|
@ -32,3 +32,18 @@
|
|||
div#theming_settings_msg {
|
||||
margin-left: 10px;
|
||||
}
|
||||
|
||||
#theming-preview {
|
||||
width: 230px;
|
||||
height: 140px;
|
||||
background-size: cover;
|
||||
background-position: center center;
|
||||
text-align: center;
|
||||
margin-left: 93px;
|
||||
}
|
||||
|
||||
#theming-preview img {
|
||||
max-width: 20%;
|
||||
max-height: 20%;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@ function preview(setting, value) {
|
|||
textColor = "#ffffff";
|
||||
icon = 'caret';
|
||||
}
|
||||
if (luminance>0.8) {
|
||||
if (luminance > 0.8) {
|
||||
elementColor = '#555555';
|
||||
}
|
||||
|
||||
|
|
@ -87,16 +87,27 @@ function preview(setting, value) {
|
|||
'background-image: url(\'data:image/svg+xml;base64,' + generateRadioButton(elementColor) + '\'); }'
|
||||
);
|
||||
}
|
||||
|
||||
var timestamp = new Date().getTime();
|
||||
if (setting === 'logoMime') {
|
||||
console.log(setting);
|
||||
var logos = document.getElementsByClassName('logo-icon');
|
||||
var timestamp = new Date().getTime();
|
||||
var previewImageLogo = document.getElementById('theming-preview-logo');
|
||||
if (value !== '') {
|
||||
logos[0].style.backgroundImage = "url('" + OC.generateUrl('/apps/theming/logo') + "?v" + timestamp + "')";
|
||||
logos[0].style.backgroundSize = "contain";
|
||||
previewImageLogo.src = OC.generateUrl('/apps/theming/logo') + "?v" + timestamp;
|
||||
} else {
|
||||
logos[0].style.backgroundImage = "url('" + OC.getRootPath() + '/core/img/logo-icon.svg?v' + timestamp +"')";
|
||||
logos[0].style.backgroundImage = "url('" + OC.getRootPath() + '/core/img/logo-icon.svg?v' + timestamp + "')";
|
||||
logos[0].style.backgroundSize = "contain";
|
||||
previewImageLogo.src = OC.getRootPath() + '/core/img/logo-icon.svg?v' + timestamp;
|
||||
}
|
||||
}
|
||||
if (setting === 'backgroundMime') {
|
||||
var previewImage = document.getElementById('theming-preview');
|
||||
if (value !== '') {
|
||||
previewImage.style.backgroundImage = "url('" + OC.generateUrl('/apps/theming/loginbackground') + "?v" + timestamp + "')";
|
||||
} else {
|
||||
previewImage.style.backgroundImage = "url('" + OC.getRootPath() + '/core/img/background.jpg?v' + timestamp + "')";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -71,6 +71,10 @@ class Admin implements ISettings {
|
|||
'url' => $this->themingDefaults->getBaseUrl(),
|
||||
'slogan' => $this->themingDefaults->getSlogan(),
|
||||
'color' => $this->themingDefaults->getMailHeaderColor(),
|
||||
'logo' => $this->themingDefaults->getLogo(),
|
||||
'logoMime' => $this->config->getAppValue('theming', 'logoMime', ''),
|
||||
'background' => $this->themingDefaults->getBackground(),
|
||||
'backgroundMime' => $this->config->getAppValue('theming', 'backgroundMime', ''),
|
||||
'uploadLogoRoute' => $path,
|
||||
];
|
||||
|
||||
|
|
|
|||
|
|
@ -73,6 +73,9 @@ style('theming', 'settings-admin');
|
|||
<label for="upload-login-background" class="button icon-upload svg" id="upload-login-background" title="<?php p($l->t("Upload new login background")) ?>"></label>
|
||||
<span data-setting="backgroundMime" data-toggle="tooltip" data-original-title="<?php p($l->t('reset to default')); ?>" class="theme-undo icon icon-history"></span>
|
||||
</form>
|
||||
</p>
|
||||
</p>
|
||||
<div id="theming-preview" style="background-color:<?php p($_['color']);?>; background-image:url(<?php p($_['background']); ?>);">
|
||||
<img src="<?php p($_['logo']); ?>" id="theming-preview-logo" />
|
||||
</div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -93,6 +93,10 @@ class AdminTest extends TestCase {
|
|||
'slogan' => 'MySlogan',
|
||||
'color' => '#fff',
|
||||
'uploadLogoRoute' => '/my/route',
|
||||
'logo' => null,
|
||||
'logoMime' => null,
|
||||
'background' => null,
|
||||
'backgroundMime' => null,
|
||||
];
|
||||
|
||||
$expected = new TemplateResponse('theming', 'settings-admin', $params, '');
|
||||
|
|
@ -139,6 +143,10 @@ class AdminTest extends TestCase {
|
|||
'slogan' => 'MySlogan',
|
||||
'color' => '#fff',
|
||||
'uploadLogoRoute' => '/my/route',
|
||||
'logo' => null,
|
||||
'logoMime' => null,
|
||||
'background' => null,
|
||||
'backgroundMime' => null,
|
||||
];
|
||||
|
||||
$expected = new TemplateResponse('theming', 'settings-admin', $params, '');
|
||||
|
|
|
|||
Loading…
Reference in a new issue