diff --git a/opentech/public/funds/templates/public_funds/includes/project_listing.html b/opentech/public/funds/templates/public_funds/includes/project_listing.html index 6dd0cff5459016b44a376b1a0bb392b523b5e816..a6e573e908e8364a192e1e3a30b6d0885b700127 100644 --- a/opentech/public/funds/templates/public_funds/includes/project_listing.html +++ b/opentech/public/funds/templates/public_funds/includes/project_listing.html @@ -1,10 +1,8 @@ {% load wagtailcore_tags wagtailimages_tags %} <a class="media-box" href="{% pageurl project %}"> - <div class="media-box__images"> - {% image project.icon max-210x235 as project_icon %} - <img class="media-box__image media-box__image--large" src="{{ project_icon.url }}" alt="{{project_icon.alt}}"> - <img class="media-box__image media-box__image--small" src="{{ project_icon.url }}" alt="{{project_icon.alt}}"> - </div> + {% image project.icon max-210x235 as project_icon %} + {% include "utils/includes/media_box_icon.html" with page_icon=project_icon listing=True %} + <div class="media-box__content"> <h4>{{ project.title }}</h4> {% if project.listing_summary or project.introduction %} diff --git a/opentech/public/funds/templates/public_funds/lab_page.html b/opentech/public/funds/templates/public_funds/lab_page.html index 8fe3a6e6108f431225ff1688b23ea5607f4f0843..5effaa6c292fbae14cdfda0923d5ecb22557563f 100644 --- a/opentech/public/funds/templates/public_funds/lab_page.html +++ b/opentech/public/funds/templates/public_funds/lab_page.html @@ -2,24 +2,14 @@ {% block header_modifier %}header--grey-pixels{% endblock %} {# Dont include fixed apply button on this page #} {% block apply_button %}{% endblock %} -{% load wagtailcore_tags wagtailimages_tags navigation_tags static %} +{% load wagtailcore_tags navigation_tags static %} {% block content %} {% include "public_funds/includes/lab_apply_cta.html" %} <div class="wrapper"> <section class="section section--main section--top-bottom-space"> <div class="media-box media-box--reverse media-box--bottom-space"> - {% if page.icon %} - <div class="media-box__images"> - {% image page.icon max-210x235 as page_icon %} - <img class="media-box__image media-box__image--large" src="{{ page_icon.url }}" alt="{{ page_icon.alt }}"> - <img class="media-box__image media-box__image--small" src="{{ page_icon.url }}" alt="{{ page_icon.alt }}"> - </div> - {% else %} - <div class="media-box__default-image"> - <svg><use xlink:href="#logo-mobile-no-text"></use></svg> - </div> - {% endif %} + {% include "utils/includes/media_box_icon.html" with page_icon=page.icon %} <div class="media-box__content"> <h4>{{ page.title }}</h4> diff --git a/opentech/public/projects/templates/projects/project_page.html b/opentech/public/projects/templates/projects/project_page.html index 825e761735af7bc79ed55bbff55ca38e0efc0b1d..0b261566cf0a6ab04b4d965e0e24aab148cb81ba 100644 --- a/opentech/public/projects/templates/projects/project_page.html +++ b/opentech/public/projects/templates/projects/project_page.html @@ -1,21 +1,10 @@ {% extends "base.html" %} -{% load wagtailcore_tags wagtailimages_tags %} +{% load wagtailcore_tags %} {% block content %} <div class="wrapper wrapper--small wrapper--top-inner-space"> <div class="media-box media-box--reverse"> - {% if page.icon %} - <div class="media-box__images"> - {% image page.icon max-210x235 as page_icon %} - <img class="media-box__image media-box__image--large" src="{{ page_icon.url }}" alt="{{ page_icon.alt }}"> - <img class="media-box__image media-box__image--small" src="{{ page_icon.url }}" alt="{{ page_icon.alt }}"> - </div> - {% else %} - <div class="media-box__default-image"> - <svg><use xlink:href="#logo-mobile-no-text"></use></svg> - </div> - {% endif %} - + {% include "utils/includes/media_box_icon.html" with page_icon=page.icon %} <div class="media-box__content"> {% if page.introduction %} <h5 class="media-box__teaser">{{ page.introduction }}</h5> diff --git a/opentech/public/utils/templates/utils/includes/media_box_icon.html b/opentech/public/utils/templates/utils/includes/media_box_icon.html new file mode 100644 index 0000000000000000000000000000000000000000..535b850ceb031f619bb1d5a2cc875136215e34c6 --- /dev/null +++ b/opentech/public/utils/templates/utils/includes/media_box_icon.html @@ -0,0 +1,18 @@ +{% load wagtailimages_tags %} +{% image page.icon max-210x235 as page_icon %} + +{% if page_icon %} + <div class="media-box__image-container" style="background-image:url('{{ page_icon.url }}')"> + <img class="media-box__image media-box__image--small" src="{{ page_icon.url }}" alt="{{ page_icon.alt }}"> + </div> +{% else %} + {% if listing %} + <div class="media-box__image-container"> + {% endif %} + <div class="media-box__default-image {% if listing %}media-box__image media-box__image--small media-box__default-image--small{% endif %}"> + <svg><use xlink:href="#logo-mobile-no-text"></use></svg> + </div> + {% if listing %} + </div> + {% endif %} +{% endif %} diff --git a/opentech/static_src/src/sass/components/_media-box.scss b/opentech/static_src/src/sass/components/_media-box.scss index 96fcf2c576213dc2f829ebc03665a2fed1b9206b..564fa80933533e881d315aa89b1e686afa0d9960 100644 --- a/opentech/static_src/src/sass/components/_media-box.scss +++ b/opentech/static_src/src/sass/components/_media-box.scss @@ -24,8 +24,20 @@ } } - &__images { + &__image-container { position: relative; + display: flex; + align-items: center; + justify-content: center; + width: 100%; + height: 170px; + background-repeat: no-repeat; + background-size: cover; + + @include media-query(mob-landscape) { + width: 210px; + height: 210px; + } &::before { position: absolute; @@ -53,12 +65,9 @@ } &--small { - position: absolute; - top: 50%; - left: 50%; + z-index: 10; max-width: 105px; border: 0 solid; - transform: translate(-50%, -50%); box-sizing: content-box; transition: border $transition; @@ -151,5 +160,25 @@ height: 70px; fill: $color--white; } + + &--small { + width: 105px; + height: 105px; + background-color: $color--white; + border: 0 solid; + box-sizing: content-box; + transition: border $transition; + + #{$root}:hover & { + border: 10px solid $color--light-blue; + transition: border $transition; + } + + > svg { + width: 50px; + height: 50px; + fill: $color--light-blue; + } + } } }