Skip to content

Commit 35ae52b

Browse files
committed
Add banner theme setting.
1 parent bf2c8b7 commit 35ae52b

File tree

4 files changed

+58
-5
lines changed

4 files changed

+58
-5
lines changed

asset/css/style.css

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

asset/sass/_screen.scss

+10-3
Original file line numberDiff line numberDiff line change
@@ -374,9 +374,16 @@ header a {
374374
max-width: 100%;
375375
}
376376

377-
#header-image img {
378-
max-width: 100%;
379-
vertical-align: top;
377+
.banner {
378+
position: relative;
379+
display: flex;
380+
align-items: center;
381+
overflow: hidden;
382+
@include container;
383+
}
384+
385+
.banner img {
386+
width: 100%;
380387
}
381388

382389
#search-container {

config/theme.ini

+24-1
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,29 @@ elements.logo.name = "logo"
1212
elements.logo.type = "Omeka\Form\Element\Asset"
1313
elements.logo.options.label = "Logo"
1414

15+
elements.banner.name = "banner"
16+
elements.banner.type = "Omeka\Form\Element\Asset"
17+
elements.banner.options.label = "Banner"
18+
elements.banner.options.info = "A large image at the top of the page"
19+
20+
elements.banner_height.name = "banner_height"
21+
elements.banner_height.type = "Text"
22+
elements.banner_height.options.label = "Banner height"
23+
elements.banner_height.options.info = "The maximum height the banner should use. Use valid CSS length units (px, em, rem, etc.)"
24+
25+
elements.banner_height_mobile.name = "banner_height_mobile"
26+
elements.banner_height_mobile.type = "Text"
27+
elements.banner_height_mobile.options.label = "Banner height for mobile devices"
28+
elements.banner_height_mobile.options.info = "The maximum height the banner should use at smaller resolutions. Use valid CSS length units (px, em, rem, etc.)"
29+
30+
elements.banner_position.name = "banner_position"
31+
elements.banner_position.type = "Laminas\Form\Element\Select"
32+
elements.banner_position.options.label = "Banner position"
33+
elements.banner_position.options.info = "Where to affix banner image when scaling down using a fixed height."
34+
elements.banner_position.options.value_options.center = "Fix to center"
35+
elements.banner_position.options.value_options.flex_start = "Fix to top"
36+
elements.banner_position.options.value_options.flex_end = "Fix to bottom"
37+
1538
elements.nav_depth.name = "nav_depth"
1639
elements.nav_depth.attributes.id = "nav_depth"
1740
elements.nav_depth.type = "Number"
@@ -29,7 +52,7 @@ elements.footer.attributes.value = "Powered by Omeka S"
2952

3053
elements.browse_layout.name = "browse_layout"
3154
elements.browse_layout.attributes.id = "browse_layout"
32-
elements.browse_layout.type = "Zend\Form\Element\Select"
55+
elements.browse_layout.type = "Laminas\Form\Element\Select"
3356
elements.browse_layout.options.label = "Layout for Browse Pages"
3457
elements.browse_layout.options.value_options.grid = "Grid"
3558
elements.browse_layout.options.value_options.list = "List"

view/layout/layout.phtml

+23
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@ $this->headScript()->prependFile($this->assetUrl('js/centerrow.js'));
1313
$this->headScript()->prependFile($this->assetUrl('js/jquery-accessibleMegaMenu.js'));
1414
$this->headScript()->prependFile($this->assetUrl('js/global.js', 'Omeka'));
1515
$this->headScript()->prependFile($this->assetUrl('vendor/jquery/jquery.min.js', 'Omeka'));
16+
$banner = $this->themeSettingAssetUrl('banner');
17+
$bannerHeight = $this->themeSetting('banner_height');
18+
$bannerHeightMobile = $this->themeSetting('banner_height_mobile');
19+
$bannerPosition = ($this->themeSetting('banner_position')) ? str_replace('_','-', $this->themeSetting('banner_position')) : 'center';
1620
$this->trigger('view.layout');
1721
$userBar = $this->userBar();
1822
?>
@@ -24,6 +28,19 @@ $userBar = $this->userBar();
2428
<?php echo $this->headLink(); ?>
2529
<?php echo $this->headStyle(); ?>
2630
<?php echo $this->headScript(); ?>
31+
<style>
32+
.banner {
33+
height: <?php echo ($bannerHeight !== '') ? $bannerHeight: 'auto' ?>;
34+
align-items: <?php echo $bannerPosition; ?>;
35+
}
36+
<?php if ($bannerHeightMobile !== ''): ?>
37+
@media screen and (max-width:640px) {
38+
.banner {
39+
height: <?php echo $bannerHeightMobile; ?>;
40+
}
41+
}
42+
<?php endif; ?>
43+
</style>
2744
</head>
2845

2946
<?php echo $this->htmlElement('body'); ?>
@@ -45,6 +62,12 @@ $userBar = $this->userBar();
4562
<button type="button" class="search-toggle" title="Toggle search"></button>
4663
</div>
4764
<?php echo $site->publicNav()->menu()->setPartial('common/accessible-mega-menu.phtml')->renderPartial(); ?>
65+
66+
<?php if ($banner): ?>
67+
<div class="banner">
68+
<img src="<?php echo $this->themeSettingAssetUrl('banner'); ?>" title="Banner">
69+
</div>
70+
<?php endif; ?>
4871
</header>
4972

5073
<div id="content" role="main">

0 commit comments

Comments
 (0)