From e1c1f809d654940ea708cdf468ed4da28215a718 Mon Sep 17 00:00:00 2001 From: Silvio Hermann Date: Fri, 17 Nov 2023 10:18:24 +0100 Subject: [PATCH 01/17] MIR-1241: split the response-mir.xsl file, dynamic facets were split into a separate facets.xsl file; improved usability and customized the code in the mir_results.scss file; added some facets to the solr-config.json file and corresponding messages to messages_*.properties files. --- .../mir-layout/scss/common/mir_results.scss | 896 +++++++++--------- .../config/mir/messages_de.properties | 6 + .../config/mir/messages_en.properties | 6 + .../config/mir/messages_it.properties | 6 + .../config/mir/solr/main/solr-config.json | 9 +- mir-module/src/main/resources/xsl/facets.xsl | 181 ++++ .../main/resources/xsl/response-mir-utils.xsl | 2 +- .../src/main/resources/xsl/response-mir.xsl | 38 +- 8 files changed, 671 insertions(+), 473 deletions(-) create mode 100644 mir-module/src/main/resources/xsl/facets.xsl diff --git a/mir-layout/src/main/resources/META-INF/resources/mir-layout/scss/common/mir_results.scss b/mir-layout/src/main/resources/META-INF/resources/mir-layout/scss/common/mir_results.scss index 8b643a29cd..48288b6ba5 100644 --- a/mir-layout/src/main/resources/META-INF/resources/mir-layout/scss/common/mir_results.scss +++ b/mir-layout/src/main/resources/META-INF/resources/mir-layout/scss/common/mir_results.scss @@ -12,6 +12,7 @@ $filter_border: #ccc !default; $filter_headline: #999 !default; $filter_hits: #999 !default; $filter: #666 !default; +$hover_darken: 20%; @-webkit-keyframes bouncedelay { 0%, 80%, 100% { -webkit-transform: scale(0.0) } @@ -89,533 +90,554 @@ $filter: #666 !default; float: left; width: 100%; .card-header { + cursor: pointer; .card-title { font-size: 1rem; color: $filter_headline; margin-bottom: 0px; + &:hover { + color: darken($filter_headline, $hover_darken); + } } } .filter { li { - .checkbox { + cursor: pointer; + &:hover * { + background-color: transparent; + } + &:hover { + .custom-checkbox { + label { + .title { + color: darken($filter, $hover_darken); + } + .hits { + color: darken($filter_hits, $hover_darken); + } + } + } + } + .custom-checkbox { margin-top: 0px; margin-bottom: 0px; label { + cursor: pointer; vertical-align: middle; + .hits { + color: $filter_hits; + } + } + } + } + } + &.worldReadableComplete { + li[data-fq^='worldReadableComplete']{ + .title:before{ + display: inline-block; + font: normal normal 900 14px/1 'Font Awesome 5 Free'; + text-rendering: auto; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + margin-right: 5px; + } + } + li[data-fq='worldReadableComplete:true'] { + .title { + @extend .text-success; + &:before{ + content: "\f13e"; //fa-unlock-alt } - .hits { - color: $filter_hits; + } + } + li[data-fq='worldReadableComplete:false'] { + .title { + @extend .text-warning; + &:before{ + content: "\f023"; //fa-lock } } } } - &.oa { - li[data-fq^='worldReadableComplete']{ - .title:before{ - display: inline-block; - font: normal normal 900 14px/1 'Font Awesome 5 Free'; - text-rendering: auto; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - margin-right: 5px; - } - } - li[data-fq='worldReadableComplete:true'] { - .title { - @extend .text-success; - &:before{ - content: "\f13e"; //fa-unlock-alt - } - } - } - li[data-fq='worldReadableComplete:false'] { - .title { - @extend .text-warning; - &:before{ - content: "\f023"; //fa-lock - } - } - } - } } } .result_list { - #hit_list { - .hit_item { - margin-bottom: 30px; - border-top: 1px solid $light_neutral; - border-radius: 10px; - .hit_counter { - text-align: center; - font-weight: bold; - color: $light_neutral; - border: 1px solid $light_neutral; - border-width: 0 0 0 1px; - border-top-left-radius: 10px; - padding: 1px 0 0 0; - width: 73px; - float: left; - } - .hit_stars { - margin: 0px 0px 5px 15px; - overflow: hidden; - width: 73px; - float: left; - .hit_star { - float:left; - width: 5px; - height: 5px; - background-color: $light_neutral; - margin: 8px 2px 0 2px; - border-radius: 50%; + #hit_list { + .hit_item { + margin-bottom: 30px; + border-top: 1px solid $light_neutral; + border-radius: 10px; + .hit_counter { + text-align: center; + font-weight: bold; + color: $light_neutral; + border: 1px solid $light_neutral; + border-width: 0 0 0 1px; + border-top-left-radius: 10px; + padding: 1px 0 0 0; + width: 73px; + float: left; } - } - .hit_stars_1 .hit_star_1 { - background-color: $dark_neutral; - } - .hit_stars_2 .hit_star_1 { - background-color: $dark_neutral; - } - .hit_stars_2 .hit_star_2 { - background-color: $dark_neutral; - } - .hit_stars_3 .hit_star_1 { - background-color: $dark_neutral; - } - .hit_stars_3 .hit_star_2 { - background-color: $dark_neutral; - } - .hit_stars_3 .hit_star_3 { - background-color: $dark_neutral; - } - .hit_stars_4 .hit_star { - background-color: $dark_neutral; - } - .hit_stars_4 .hit_star_5 { - background-color: $dark_neutral; - } - .hit_stars_5 .hit_star { - background-color: $dark_neutral; - } - .hit_star_1 {} - .hit_star_2 {} - .hit_star_3 {} - .hit_star_4 {} - .hit_star_5 {} - .hit_download_box { - position:relative; - float: left; - width: 73px; - display: none; - } - a .hit_icon { - &:hover { - box-shadow: 1px 1px 4px #999; + .hit_stars { + margin: 0px 0px 5px 15px; + overflow: hidden; + width: 73px; + float: left; + .hit_star { + float:left; + width: 5px; + height: 5px; + background-color: $light_neutral; + margin: 8px 2px 0 2px; + border-radius: 50%; + } } - } - .hit_icon { - height: 100px; - background-color: #EDEDED; - background-position: center center; - background-size: 100% auto; - background-repeat: no-repeat; - border: 1px solid $light_neutral; - border-bottom-left-radius: 25px; - } - .hit_icon_overlay { - position: absolute; - top: 20px; - left: -8px; - width: 50%; - } - .hit_tnd_container { - } - .hit_tnd_content { + .hit_stars_1 .hit_star_1 { + background-color: $dark_neutral; + } + .hit_stars_2 .hit_star_1 { + background-color: $dark_neutral; + } + .hit_stars_2 .hit_star_2 { + background-color: $dark_neutral; + } + .hit_stars_3 .hit_star_1 { + background-color: $dark_neutral; + } + .hit_stars_3 .hit_star_2 { + background-color: $dark_neutral; + } + .hit_stars_3 .hit_star_3 { + background-color: $dark_neutral; + } + .hit_stars_4 .hit_star { + background-color: $dark_neutral; + } + .hit_stars_4 .hit_star_5 { + background-color: $dark_neutral; + } + .hit_stars_5 .hit_star { + background-color: $dark_neutral; + } + .hit_star_1 {} + .hit_star_2 {} + .hit_star_3 {} + .hit_star_4 {} + .hit_star_5 {} + .hit_download_box { + position:relative; + float: left; + width: 73px; + display: none; + } + a .hit_icon { + &:hover { + box-shadow: 1px 1px 4px #999; + } + } + .hit_icon { + height: 100px; + background-color: #EDEDED; + background-position: center center; + background-size: 100% auto; + background-repeat: no-repeat; + border: 1px solid $light_neutral; + border-bottom-left-radius: 25px; + } + .hit_icon_overlay { + position: absolute; + top: 20px; + left: -8px; + width: 50%; + } + .hit_tnd_container { + } + .hit_tnd_content { overflow:hidden; > div { float:left; - &:nth-child(n+1) { - margin-left: 5px; - } + &:nth-child(n+1) { + margin-left: 5px; + } } - } - .hit_date { - color: $dark_neutral; - } - .hit_type { - color: $dark_neutral; - } - .hit_state { - color: $white; - .mir-published { - background-color: $success; } - .mir-submitted, - .mir-new, - .mir-imported { - background-color: $warning; + .hit_date { + color: $dark_neutral; + } + .hit_type { + color: $dark_neutral; } - .mir-review { - background-color: $primary; + .hit_state { + color: $white; + .mir-published { + background-color: $success; + } + .mir-submitted, + .mir-new, + .mir-imported { + background-color: $warning; + } + .mir-review { + background-color: $primary; + } + .mir-blocked { + background-color: $danger; + } + .mir-deleted { + background-color: $secondary; + } + span { + background-color: $secondary; + } } - .mir-blocked { - background-color: $danger; + .hit_title { + font-size: 20px; + margin: 15px 0 5px 0; + border-left: 0px solid $light_neutral; } - .mir-deleted { - background-color: $secondary; + .hit_author { + font-size: 16px; + margin: 0 0 0px 0; } - span { - background-color: $secondary; + .hit_source { + margin-top: 10px; + .label_parent { + color: $dark_neutral; + } } - } - .hit_title { - font-size: 20px; - margin: 15px 0 5px 0; - border-left: 0px solid $light_neutral; - } - .hit_author { - font-size: 16px; - margin: 0 0 0px 0; - } - .hit_source { - margin-top: 10px; - .label_parent { - color: $dark_neutral; + .hit_abstract { + margin: 10px 0 5px 0; } - } - .hit_abstract { - margin: 10px 0 5px 0; - } - .hit_pub_name { - .label_publisher { - color: $dark_neutral; + .hit_pub_name { + .label_publisher { + color: $dark_neutral; + } } - } - .hit_options { - .btn { + .hit_options { + .btn { + margin-right: 0px; + padding: 2px 10px; + background-color: transparent; + border: 1px solid $light_neutral; + border-width: 0px 1px 0px 0px; + border-radius: 0; + border-top-right-radius: 10px; + color: $dark_neutral; + &:hover { + color: $link_color; + background-color: transparent; + } + } + .caret { + margin-left: 6px; + } + .hit_option { + .fas, + .far { + margin-right: 5px; + } + } + } + .single_hit_option { margin-right: 0px; padding: 2px 10px; background-color: transparent; border: 1px solid $light_neutral; border-width: 0px 1px 0px 0px; border-radius: 0; - border-top-right-radius: 10px; - color: $dark_neutral; - &:hover { + border-top-right-radius: 9px; + a:hover { color: $link_color; - background-color: transparent; + text-decoration: none; } - } - .caret { - margin-left: 6px; - } - .hit_option { - .fas, - .far { - margin-right: 5px; + a { + color: $dark_neutral; + .fas, + .far { + margin-right: 5px; + } } } } - .single_hit_option { - margin-right: 0px; - padding: 2px 10px; - background-color: transparent; - border: 1px solid $light_neutral; - border-width: 0px 1px 0px 0px; - border-radius: 0; - border-top-right-radius: 9px; - a:hover { - color: $link_color; - text-decoration: none; - } - a { - color: $dark_neutral; - .fas, - .far { - margin-right: 5px; - } + .hit_item:hover { + border-color: $highlight; + border-bottom-left-radius: 25%; + .hit_counter { + color: $highlight; + border-color: $highlight; + } + .hit_stars_1 .hit_star_1 { + background-color: $highlight; + } + .hit_stars_2 .hit_star_1 { + background-color: $highlight; + } + .hit_stars_2 .hit_star_2 { + background-color: $highlight; + } + .hit_stars_3 .hit_star_1 { + background-color: $highlight; + } + .hit_stars_3 .hit_star_2 { + background-color: $highlight; + } + .hit_stars_3 .hit_star_3 { + background-color: $highlight; + } + .hit_stars_4 .hit_star { + background-color: $highlight; + } + .hit_stars_5 .hit_star { + background-color: $highlight; + } + .hit_icon { + border-left-color: $highlight; + } + .hitmid { + border-color: $highlight; + } + .btn { + border-color: $highlight; + } + .hit_title { + border-color: $link_color; } } } - .hit_item:hover { - border-color: $highlight; - border-bottom-left-radius: 25%; - .hit_counter { - color: $highlight; - border-color: $highlight; - } - .hit_stars_1 .hit_star_1 { - background-color: $highlight; - } - .hit_stars_2 .hit_star_1 { - background-color: $highlight; - } - .hit_stars_2 .hit_star_2 { - background-color: $highlight; - } - .hit_stars_3 .hit_star_1 { - background-color: $highlight; - } - .hit_stars_3 .hit_star_2 { - background-color: $highlight; - } - .hit_stars_3 .hit_star_3 { - background-color: $highlight; - } - .hit_stars_4 .hit_star { - background-color: $highlight; - } - .hit_stars_5 .hit_star { - background-color: $highlight; - } - .hit_icon { - border-left-color: $highlight; - } - .hitmid { - border-color: $highlight; - } - .btn { - border-color: $highlight; - } - .hit_title { - border-color: $link_color; - } + .result_list_end { + height: 20px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; + border: 1px solid $light_neutral; + border-width: 0 1px 1px 1px; + margin: 0 0 20px 0px; } } - .result_list_end { - height: 20px; - border-bottom-left-radius: 5px; - border-bottom-right-radius: 5px; - border: 1px solid $light_neutral; - border-width: 0 1px 1px 1px; - margin: 0 0 20px 0px; - } - } } /* file box *****************************************************************/ $file_box_color: $card-bg !default; - .file_box { - border: 0px solid $file_box_color; - border-radius: 0px; - margin-bottom: 30px; - - .filelist-loading { - position: absolute; - width: 100%; - text-align: center; - div { - width: 18px; - height: 18px; - background-color: #333; - border-radius: 100%; - display: inline-block; - -webkit-animation: bouncedelay 1.4s infinite ease-in-out; - animation: bouncedelay 1.4s infinite ease-in-out; - box-shadow: 0 2px 2px 0 rgba(50, 50, 50, 0.2); - /* Prevent first frame from flickering when animation starts */ - -webkit-animation-fill-mode: both; - animation-fill-mode: both; - } - .bounce1 { - -webkit-animation-delay: -0.32s; - animation-delay: -0.32s; - } - .bounce2 { - -webkit-animation-delay: -0.16s; - animation-delay: -0.16s; +.file_box { + border: 0px solid $file_box_color; + border-radius: 0px; + margin-bottom: 30px; + + .filelist-loading { + position: absolute; + width: 100%; + text-align: center; + div { + width: 18px; + height: 18px; + background-color: #333; + border-radius: 100%; + display: inline-block; + -webkit-animation: bouncedelay 1.4s infinite ease-in-out; + animation: bouncedelay 1.4s infinite ease-in-out; + box-shadow: 0 2px 2px 0 rgba(50, 50, 50, 0.2); + /* Prevent first frame from flickering when animation starts */ + -webkit-animation-fill-mode: both; + animation-fill-mode: both; + } + .bounce1 { + -webkit-animation-delay: -0.32s; + animation-delay: -0.32s; + } + .bounce2 { + -webkit-animation-delay: -0.16s; + animation-delay: -0.16s; + } + } + .file_box_breadcrumbs { + padding: 5px 0; + overflow: hidden; + .derivate_folder { + padding-right: 5px; + } + .derivate_folder > a:after { + content: "/"; + padding-left: 5px; + } + } + .header { + .headline { + border-bottom: 1px solid #ddd; + padding: 0px 0 0px 0; + .title { + padding: 0 0 0 0; + .file_toggle { + font-size: 16px; + border: none; + background-color: transparent; + color: #333; + padding: 0; + font-weight: 300; + .set_number { + margin-left: 6px; } } - .file_box_breadcrumbs { - padding: 5px 0; - overflow: hidden; - .derivate_folder { - padding-right: 5px; - } - .derivate_folder > a:after { - content: "/"; - padding-left: 5px; + } + .options { + .btn { + border: 0px solid transparent; + margin-right: 0px; + background-color: transparent; + color: $primary; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + &:hover { + color: $link_color; + background-color: transparent; } } - .header { - .headline { - border-bottom: 1px solid #ddd; - padding: 0px 0 0px 0; - .title { - padding: 0 0 0 0; - .file_toggle { - font-size: 16px; - border: none; - background-color: transparent; - color: #333; - padding: 0; - font-weight: 300; - .set_number { - margin-left: 6px; - } - } - } - .options { - .btn { - border: 0px solid transparent; - margin-right: 0px; - background-color: transparent; - color: $primary; - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - &:hover { - color: $link_color; - background-color: transparent; - } - } - .caret { - margin-left: 6px; - } - .option { - .fas, - .far { - margin-right: 5px; - } - } - } - .title { - float: left; - } + .caret { + margin-left: 6px; + } + .option { + .fas, + .far { + margin-right: 5px; } } - .body { - .table { - margin-bottom: 0; + } + .title { + float: left; + } + } + } + .body { + .table { + margin-bottom: 0; + } + .file_set { + a { + text-decoration: none; + } + &.active_file { + background-color: fade($primary, 5%); + .file_name { + position: relative; + font-weight: bold; + > a::after { + font-family:"Font Awesome 5 Free"; // TODO: Find fontawesome mixing for sass + font-weight: 900; + content: "\f005"; + position: absolute; + right: 0; + top: 0; + margin-top: 5px; + // color: $text-color; TODO: whats the bootstrap 4 default color? } - .file_set { - a { - text-decoration: none; - } - &.active_file { - background-color: fade($primary, 5%); - .file_name { - position: relative; - font-weight: bold; - > a::after { - font-family:"Font Awesome 5 Free"; // TODO: Find fontawesome mixing for sass - font-weight: 900; - content: "\f005"; - position: absolute; - right: 0; - top: 0; - margin-top: 5px; - // color: $text-color; TODO: whats the bootstrap 4 default color? - } - } - } - &.waiting_file { - background-color: fade($primary, 5%); - .file_name { - position: relative; - font-weight: bold; - > a::after { - content: " "; - width: 20px; - height: 20px; - position: absolute; - right: 0; - top: 0; - border-radius: 100%; - margin-top: 5px; - // color: $text-color;TODO: whats the bootstrap 4 default color? - //background-color: $text-color; TODO: whats the bootstrap 4 default color? - animation: sk-scaleout 0.8s infinite ease-in-out; - -webkit-animation: sk-scaleout 0.8s infinite ease-in-out; - } - } - } - - .options { - .btn { - margin-right: 0px; - padding: 2px 10px; - background-color: transparent; - border: 1px solid $light_neutral; - border-width: 0px 0px 0px 0px; - border-radius: 0; - border-top-right-radius: 0px; - color: $dark_neutral; - &:hover { - color: $link_color; - background-color: transparent; - } - } - .caret { - margin-left: 6px; - } - .option { - .fas, - .far { - margin-right: 5px; - } - } - } - .file_date {} - .file_preview {} - .file_name {} - .derivate_folder { - cursor: pointer; - } - .go_back { - padding-left: 140px; - } - .file_urn { - padding-left: 2px; - } - .file_size {} + } + } + &.waiting_file { + background-color: fade($primary, 5%); + .file_name { + position: relative; + font-weight: bold; + > a::after { + content: " "; + width: 20px; + height: 20px; + position: absolute; + right: 0; + top: 0; + border-radius: 100%; + margin-top: 5px; + // color: $text-color;TODO: whats the bootstrap 4 default color? + //background-color: $text-color; TODO: whats the bootstrap 4 default color? + animation: sk-scaleout 0.8s infinite ease-in-out; + -webkit-animation: sk-scaleout 0.8s infinite ease-in-out; } } + } - .file_box_pagination { - .pagination-info, .pagination { - margin: 5px 0; + .options { + .btn { + margin-right: 0px; + padding: 2px 10px; + background-color: transparent; + border: 1px solid $light_neutral; + border-width: 0px 0px 0px 0px; + border-radius: 0; + border-top-right-radius: 0px; + color: $dark_neutral; + &:hover { + color: $link_color; + background-color: transparent; } - - .pagination-info { - // line-height: $line-height-small; // TODO find small text height + } + .caret { + margin-left: 6px; + } + .option { + .fas, + .far { + margin-right: 5px; } } } + .file_date {} + .file_preview {} + .file_name {} + .derivate_folder { + cursor: pointer; + } + .go_back { + padding-left: 140px; + } + .file_urn { + padding-left: 2px; + } + .file_size {} + } + } + + .file_box_pagination { + .pagination-info, .pagination { + margin: 5px 0; + } + + .pagination-info { + // line-height: $line-height-small; // TODO find small text height + } + } +} /* filter *******************************************************************/ .filter { - border-right: 0px solid #ccc; + border-right: 0px solid #ccc; } .filter, .filter > li ul { - list-style:none; - margin:0; - padding:0; + list-style:none; + margin:0; + padding:0; } .filter > li ul { - display:none; + display:none; } .filter > li { - margin:0 0 0px 0; - padding:0 0 0 0; + margin:0 0 0px 0; + padding:0 0 0 0; } .filter > li > ul > li { - margin:0 0 0px 0px; - padding:0 0 0 0; + margin:0 0 0px 0px; + padding:0 0 0 0; } .filter .hits { - color: #ccc; + color: #ccc; } .filter .hits:before { - content: " ("; + content: " ("; } .filter .hits:after { - content: ")"; + content: ")"; } diff --git a/mir-module/src/main/resources/config/mir/messages_de.properties b/mir-module/src/main/resources/config/mir/messages_de.properties index b9868ed24a..451c78af42 100644 --- a/mir-module/src/main/resources/config/mir/messages_de.properties +++ b/mir-module/src/main/resources/config/mir/messages_de.properties @@ -633,6 +633,12 @@ mir.response.openAccess.facet.true = Dateien frei zug\u00E4nglich mir.response.openAccess.false = Keine frei verf\u00FCgbare Datei angehangen. mir.response.openAccess.true = Frei verf\u00FCgbare Datei angehangen. mir.response.relevance = Relevanz des Treffers in Bezug auf alle Treffer dieser Suche +mir.response.facet.mods.genre.title = Typ +mir.response.facet.derivates.title = Derivate +mir.response.facet.state.title = Status +mir.response.facet.createdby.title = Erstellt von +mir.response.facet.modifiedby.title = Angepasst von +mir.response.facet.mods.author.title = Autor*in mir.results.hitDoesNotExist = Dieser Treffer kann nicht angezeigt werden oder wurde gerade gel\u00F6scht. mir.rights = Lizenz mir.rightsHolder = Rechteinhaber: diff --git a/mir-module/src/main/resources/config/mir/messages_en.properties b/mir-module/src/main/resources/config/mir/messages_en.properties index 036d5ec66e..acd866543c 100644 --- a/mir-module/src/main/resources/config/mir/messages_en.properties +++ b/mir-module/src/main/resources/config/mir/messages_en.properties @@ -606,6 +606,12 @@ mir.response.openAccess.facet.true = Files freely accessible mir.response.openAccess.false = No free available file attached. mir.response.openAccess.true = Free available file attached. mir.response.relevance = Relevance of this hit in relation to all hits of current search +mir.response.facet.mods.genre.title = Type +mir.response.facet.derivates.title = Derivates +mir.response.facet.state.title = State +mir.response.facet.createdby.title = Created by +mir.response.facet.modifiedby.title = Modified by +mir.response.facet.mods.author.title = Author mir.results.hitDoesNotExist = This result can not be displayed or was recently deleted. mir.rights = License mir.rightsHolder = License Holder: diff --git a/mir-module/src/main/resources/config/mir/messages_it.properties b/mir-module/src/main/resources/config/mir/messages_it.properties index 90aeaee382..6672fadb08 100644 --- a/mir-module/src/main/resources/config/mir/messages_it.properties +++ b/mir-module/src/main/resources/config/mir/messages_it.properties @@ -47,5 +47,11 @@ mir.response.button.filter = Filtri mir.response.openAccess.facet.false = file no o protetti mir.response.openAccess.facet.title = Disponibilit\u00E0 mir.response.openAccess.facet.true = File liberamente accessibili +mir.response.facet.mods.genre.title = Tipo +mir.response.facet.derivates.title = Derivati +mir.response.facet.state.title = Stato +mir.response.facet.createdby.title = Creato da +mir.response.facet.modifiedby.title = Modificato da +mir.response.facet.mods.author.title = Autore user.profile.id.orcid = Your ORCID iD diff --git a/mir-module/src/main/resources/config/mir/solr/main/solr-config.json b/mir-module/src/main/resources/config/mir/solr/main/solr-config.json index de76733f1f..ac9f67fd9c 100644 --- a/mir-module/src/main/resources/config/mir/solr/main/solr-config.json +++ b/mir-module/src/main/resources/config/mir/solr/main/solr-config.json @@ -191,7 +191,14 @@ }, "appends": { "facet": "true", - "facet.field": "mods.genre", + "facet.field": [ + "mods.genre", + "derivates", + "state", + "createdby", + "modifiedby", + "mods.author" + ], "facet.mincount": "1" } } diff --git a/mir-module/src/main/resources/xsl/facets.xsl b/mir-module/src/main/resources/xsl/facets.xsl new file mode 100644 index 0000000000..c28bc3086f --- /dev/null +++ b/mir-module/src/main/resources/xsl/facets.xsl @@ -0,0 +1,181 @@ + + + + + + + + +
+
+

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+
+ +
+
    + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
    + + + true + + + +
    +
  • +
    +
    + +
    diff --git a/mir-module/src/main/resources/xsl/response-mir-utils.xsl b/mir-module/src/main/resources/xsl/response-mir-utils.xsl index b3cea856a4..9b006438d5 100644 --- a/mir-module/src/main/resources/xsl/response-mir-utils.xsl +++ b/mir-module/src/main/resources/xsl/response-mir-utils.xsl @@ -393,4 +393,4 @@ - \ No newline at end of file + diff --git a/mir-module/src/main/resources/xsl/response-mir.xsl b/mir-module/src/main/resources/xsl/response-mir.xsl index 5f90225876..10db29ae7a 100644 --- a/mir-module/src/main/resources/xsl/response-mir.xsl +++ b/mir-module/src/main/resources/xsl/response-mir.xsl @@ -231,40 +231,10 @@ - -
    -
    -

    - -

    -
    -
    -
      - - - - -
    -
    -
    -
    - -
    -
    -

    - -

    -
    -
    -
      - - - - -
    -
    -
    -
    + + + + From f8d1f8491d865f72d421382c5890234089373570 Mon Sep 17 00:00:00 2001 From: Oleksiy 'Alex' Levshyn Date: Mon, 2 Oct 2023 14:22:11 +0200 Subject: [PATCH 02/17] MIR-1241: remove new fields from solr-config.json for SOLR request handler /select, remove some new messages from messages_*.properties --- .../main/resources/config/mir/messages_de.properties | 1 - .../main/resources/config/mir/messages_en.properties | 1 - .../main/resources/config/mir/messages_it.properties | 11 +++++------ .../resources/config/mir/solr/main/solr-config.json | 7 +------ 4 files changed, 6 insertions(+), 14 deletions(-) diff --git a/mir-module/src/main/resources/config/mir/messages_de.properties b/mir-module/src/main/resources/config/mir/messages_de.properties index 451c78af42..e2e62d8df5 100644 --- a/mir-module/src/main/resources/config/mir/messages_de.properties +++ b/mir-module/src/main/resources/config/mir/messages_de.properties @@ -634,7 +634,6 @@ mir.response.openAccess.false = Keine frei verf\u00FCgbare Dat mir.response.openAccess.true = Frei verf\u00FCgbare Datei angehangen. mir.response.relevance = Relevanz des Treffers in Bezug auf alle Treffer dieser Suche mir.response.facet.mods.genre.title = Typ -mir.response.facet.derivates.title = Derivate mir.response.facet.state.title = Status mir.response.facet.createdby.title = Erstellt von mir.response.facet.modifiedby.title = Angepasst von diff --git a/mir-module/src/main/resources/config/mir/messages_en.properties b/mir-module/src/main/resources/config/mir/messages_en.properties index acd866543c..757f59cbb2 100644 --- a/mir-module/src/main/resources/config/mir/messages_en.properties +++ b/mir-module/src/main/resources/config/mir/messages_en.properties @@ -607,7 +607,6 @@ mir.response.openAccess.false = No free available file attached mir.response.openAccess.true = Free available file attached. mir.response.relevance = Relevance of this hit in relation to all hits of current search mir.response.facet.mods.genre.title = Type -mir.response.facet.derivates.title = Derivates mir.response.facet.state.title = State mir.response.facet.createdby.title = Created by mir.response.facet.modifiedby.title = Modified by diff --git a/mir-module/src/main/resources/config/mir/messages_it.properties b/mir-module/src/main/resources/config/mir/messages_it.properties index 6672fadb08..2ca9835376 100644 --- a/mir-module/src/main/resources/config/mir/messages_it.properties +++ b/mir-module/src/main/resources/config/mir/messages_it.properties @@ -47,11 +47,10 @@ mir.response.button.filter = Filtri mir.response.openAccess.facet.false = file no o protetti mir.response.openAccess.facet.title = Disponibilit\u00E0 mir.response.openAccess.facet.true = File liberamente accessibili -mir.response.facet.mods.genre.title = Tipo -mir.response.facet.derivates.title = Derivati -mir.response.facet.state.title = Stato -mir.response.facet.createdby.title = Creato da -mir.response.facet.modifiedby.title = Modificato da -mir.response.facet.mods.author.title = Autore +mir.response.facet.mods.genre.title = Tipo +mir.response.facet.state.title = Stato +mir.response.facet.createdby.title = Creato da +mir.response.facet.modifiedby.title = Modificato da +mir.response.facet.mods.author.title = Autore user.profile.id.orcid = Your ORCID iD diff --git a/mir-module/src/main/resources/config/mir/solr/main/solr-config.json b/mir-module/src/main/resources/config/mir/solr/main/solr-config.json index ac9f67fd9c..ca5e818beb 100644 --- a/mir-module/src/main/resources/config/mir/solr/main/solr-config.json +++ b/mir-module/src/main/resources/config/mir/solr/main/solr-config.json @@ -192,12 +192,7 @@ "appends": { "facet": "true", "facet.field": [ - "mods.genre", - "derivates", - "state", - "createdby", - "modifiedby", - "mods.author" + "mods.genre" ], "facet.mincount": "1" } From 77b7bc5dfc0b22fe0bf1eedeae45966f8da41ea1 Mon Sep 17 00:00:00 2001 From: Silvio Hermann Date: Fri, 17 Nov 2023 10:20:16 +0100 Subject: [PATCH 03/17] MIR-1241: add facets for classifications --- .../resources/config/mir/mycore.properties | 3 +- .../xsl/{facets.xsl => response-facets.xsl} | 91 +++++++++++++++++-- .../src/main/resources/xsl/response-mir.xsl | 1 + 3 files changed, 85 insertions(+), 10 deletions(-) rename mir-module/src/main/resources/xsl/{facets.xsl => response-facets.xsl} (68%) diff --git a/mir-module/src/main/resources/config/mir/mycore.properties b/mir-module/src/main/resources/config/mir/mycore.properties index 87ace973f3..463cf93ab4 100644 --- a/mir-module/src/main/resources/config/mir/mycore.properties +++ b/mir-module/src/main/resources/config/mir/mycore.properties @@ -257,7 +257,8 @@ MCR.Solr.Proxy.WhiteList=%MCR.Solr.Proxy.WhiteList%,/find,/mods_name,/mods_nameI MCR.Solr.HTTPResponseHeader.Content-Security-Policy= # MIR still works with dynamic generated solr fields MCR.Solr.DynamicFields=true - +# specify a prefix for the classification facet +MIR.Response.Facet.Prefix.Classification= ############################################################################## # URIResolver & ContentTransformer # diff --git a/mir-module/src/main/resources/xsl/facets.xsl b/mir-module/src/main/resources/xsl/response-facets.xsl similarity index 68% rename from mir-module/src/main/resources/xsl/facets.xsl rename to mir-module/src/main/resources/xsl/response-facets.xsl index c28bc3086f..7b44302a3c 100644 --- a/mir-module/src/main/resources/xsl/facets.xsl +++ b/mir-module/src/main/resources/xsl/response-facets.xsl @@ -1,16 +1,39 @@ - + exclude-result-prefixes="i18n mcrxsl encoder xalan fn"> + + + + + + + + + + + + + + + + + + + + + + + +
    @@ -33,13 +56,25 @@ - - + + + + + + + + + + + + + + + + - + @@ -73,10 +108,12 @@ + - + + @@ -93,6 +130,13 @@ + + + + + + + @@ -149,6 +193,28 @@ + + + + + + diff --git a/mir-module/src/main/resources/xsl/response-mir.xsl b/mir-module/src/main/resources/xsl/response-mir.xsl index 10db29ae7a..1e7a207957 100644 --- a/mir-module/src/main/resources/xsl/response-mir.xsl +++ b/mir-module/src/main/resources/xsl/response-mir.xsl @@ -16,6 +16,7 @@ + From 7bd547df19ac05a52d37aa2689c52985ad62679a Mon Sep 17 00:00:00 2001 From: Oleksiy 'Alex' Levshyn Date: Tue, 26 Sep 2023 14:20:19 +0200 Subject: [PATCH 04/17] MIR-1241: split the response-mir.xsl file, dynamic facets were split into a separate facets.xsl file; improved usability and customized the code in the mir_results.scss file; added some facets to the solr-config.json file and corresponding messages to messages_*.properties files. --- mir-module/src/main/resources/xsl/facets.xsl | 181 +++++++++++++++++++ 1 file changed, 181 insertions(+) create mode 100644 mir-module/src/main/resources/xsl/facets.xsl diff --git a/mir-module/src/main/resources/xsl/facets.xsl b/mir-module/src/main/resources/xsl/facets.xsl new file mode 100644 index 0000000000..c28bc3086f --- /dev/null +++ b/mir-module/src/main/resources/xsl/facets.xsl @@ -0,0 +1,181 @@ + + + + + + + + +
    +
    +

    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +
    + +
    +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    +
    +
    +
    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  • +
    + + + true + + + +
    +
  • +
    +
    + +
    From 50c2b79c1f3d5423a2de96caf0375ddde9c9fa5d Mon Sep 17 00:00:00 2001 From: Oleksiy 'Alex' Levshyn Date: Thu, 19 Oct 2023 16:16:16 +0200 Subject: [PATCH 05/17] MIR-1241 --- mir-module/src/main/resources/config/mir/messages_de.properties | 1 - mir-module/src/main/resources/config/mir/messages_en.properties | 1 - mir-module/src/main/resources/config/mir/messages_it.properties | 1 - 3 files changed, 3 deletions(-) diff --git a/mir-module/src/main/resources/config/mir/messages_de.properties b/mir-module/src/main/resources/config/mir/messages_de.properties index e2e62d8df5..ff3a1f7ea1 100644 --- a/mir-module/src/main/resources/config/mir/messages_de.properties +++ b/mir-module/src/main/resources/config/mir/messages_de.properties @@ -634,7 +634,6 @@ mir.response.openAccess.false = Keine frei verf\u00FCgbare Dat mir.response.openAccess.true = Frei verf\u00FCgbare Datei angehangen. mir.response.relevance = Relevanz des Treffers in Bezug auf alle Treffer dieser Suche mir.response.facet.mods.genre.title = Typ -mir.response.facet.state.title = Status mir.response.facet.createdby.title = Erstellt von mir.response.facet.modifiedby.title = Angepasst von mir.response.facet.mods.author.title = Autor*in diff --git a/mir-module/src/main/resources/config/mir/messages_en.properties b/mir-module/src/main/resources/config/mir/messages_en.properties index 757f59cbb2..ee87d30d78 100644 --- a/mir-module/src/main/resources/config/mir/messages_en.properties +++ b/mir-module/src/main/resources/config/mir/messages_en.properties @@ -607,7 +607,6 @@ mir.response.openAccess.false = No free available file attached mir.response.openAccess.true = Free available file attached. mir.response.relevance = Relevance of this hit in relation to all hits of current search mir.response.facet.mods.genre.title = Type -mir.response.facet.state.title = State mir.response.facet.createdby.title = Created by mir.response.facet.modifiedby.title = Modified by mir.response.facet.mods.author.title = Author diff --git a/mir-module/src/main/resources/config/mir/messages_it.properties b/mir-module/src/main/resources/config/mir/messages_it.properties index 2ca9835376..0d9a55f2a0 100644 --- a/mir-module/src/main/resources/config/mir/messages_it.properties +++ b/mir-module/src/main/resources/config/mir/messages_it.properties @@ -48,7 +48,6 @@ mir.response.openAccess.facet.false = file no o protetti mir.response.openAccess.facet.title = Disponibilit\u00E0 mir.response.openAccess.facet.true = File liberamente accessibili mir.response.facet.mods.genre.title = Tipo -mir.response.facet.state.title = Stato mir.response.facet.createdby.title = Creato da mir.response.facet.modifiedby.title = Modificato da mir.response.facet.mods.author.title = Autore From 13ea0ada843e346a5aa0ea1644e7ec5079350d1c Mon Sep 17 00:00:00 2001 From: Oleksiy 'Alex' Levshyn Date: Thu, 19 Oct 2023 16:26:24 +0200 Subject: [PATCH 06/17] MIR-1241: remove unused file facets.xsl --- mir-module/src/main/resources/xsl/facets.xsl | 181 ------------------ .../main/resources/xsl/response-facets.xsl | 1 - 2 files changed, 182 deletions(-) delete mode 100644 mir-module/src/main/resources/xsl/facets.xsl diff --git a/mir-module/src/main/resources/xsl/facets.xsl b/mir-module/src/main/resources/xsl/facets.xsl deleted file mode 100644 index c28bc3086f..0000000000 --- a/mir-module/src/main/resources/xsl/facets.xsl +++ /dev/null @@ -1,181 +0,0 @@ - - - - - - - - -
    -
    -

    - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -
    - -
    -
      - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    -
    -
    - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  • -
    - - - true - - - -
    -
  • -
    -
    - -
    diff --git a/mir-module/src/main/resources/xsl/response-facets.xsl b/mir-module/src/main/resources/xsl/response-facets.xsl index 7b44302a3c..55068c0695 100644 --- a/mir-module/src/main/resources/xsl/response-facets.xsl +++ b/mir-module/src/main/resources/xsl/response-facets.xsl @@ -10,7 +10,6 @@ - From 7d72f326aec9a076a7e3b6d9a74b2226d3950d9f Mon Sep 17 00:00:00 2001 From: Oleksiy 'Alex' Levshyn Date: Tue, 24 Oct 2023 10:23:26 +0200 Subject: [PATCH 07/17] MIR-1241: refactoring: reducing the number of calls to URI-Resolver --- .../main/resources/xsl/response-facets.xsl | 51 ++++++------------- 1 file changed, 16 insertions(+), 35 deletions(-) diff --git a/mir-module/src/main/resources/xsl/response-facets.xsl b/mir-module/src/main/resources/xsl/response-facets.xsl index 55068c0695..74fb64af23 100644 --- a/mir-module/src/main/resources/xsl/response-facets.xsl +++ b/mir-module/src/main/resources/xsl/response-facets.xsl @@ -26,11 +26,9 @@ - - - - - + + + @@ -59,8 +57,8 @@ - - + + @@ -75,6 +73,7 @@ + @@ -93,6 +92,7 @@ + @@ -102,17 +102,17 @@ select="/response/lst[@name='facet_counts']/lst[@name='facet_fields']"> + - - + @@ -129,13 +129,7 @@ - - - - - - - + @@ -193,21 +187,13 @@ - + + + - - - - - - - - - - - + + - @@ -233,6 +219,7 @@ + @@ -244,10 +231,4 @@ - - - - - - From b63dd2cdd1ac68bf4a0e3df077788dae5470b1f8 Mon Sep 17 00:00:00 2001 From: Oleksiy 'Alex' Levshyn Date: Wed, 25 Oct 2023 11:58:11 +0200 Subject: [PATCH 08/17] MIR-1241: fix redundant condition --- .../main/resources/xsl/response-facets.xsl | 218 +++++++++--------- 1 file changed, 108 insertions(+), 110 deletions(-) diff --git a/mir-module/src/main/resources/xsl/response-facets.xsl b/mir-module/src/main/resources/xsl/response-facets.xsl index 74fb64af23..2607fafaca 100644 --- a/mir-module/src/main/resources/xsl/response-facets.xsl +++ b/mir-module/src/main/resources/xsl/response-facets.xsl @@ -11,117 +11,115 @@ - - - - - - - - - - - - - - - - - - - - - - -
    -
    -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -
    - -
    -
      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    -
    + + + + + + + + + + + + + + + + + + + + + +
    +
    +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    - - - + +
    +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    +
    +
    From 91ac90e3552fd96755bbc2161731093f17089781 Mon Sep 17 00:00:00 2001 From: Oleksiy 'Alex' Levshyn Date: Tue, 7 Nov 2023 09:39:06 +0100 Subject: [PATCH 09/17] MIR-1241: remove variables $MIR.Response.Facet.Prefix.Classification, $classId --- .../resources/config/mir/mycore.properties | 2 -- .../main/resources/xsl/response-facets.xsl | 19 +++---------------- 2 files changed, 3 insertions(+), 18 deletions(-) diff --git a/mir-module/src/main/resources/config/mir/mycore.properties b/mir-module/src/main/resources/config/mir/mycore.properties index 463cf93ab4..ae5d8f3618 100644 --- a/mir-module/src/main/resources/config/mir/mycore.properties +++ b/mir-module/src/main/resources/config/mir/mycore.properties @@ -257,8 +257,6 @@ MCR.Solr.Proxy.WhiteList=%MCR.Solr.Proxy.WhiteList%,/find,/mods_name,/mods_nameI MCR.Solr.HTTPResponseHeader.Content-Security-Policy= # MIR still works with dynamic generated solr fields MCR.Solr.DynamicFields=true -# specify a prefix for the classification facet -MIR.Response.Facet.Prefix.Classification= ############################################################################## # URIResolver & ContentTransformer # diff --git a/mir-module/src/main/resources/xsl/response-facets.xsl b/mir-module/src/main/resources/xsl/response-facets.xsl index 2607fafaca..826f3d04c3 100644 --- a/mir-module/src/main/resources/xsl/response-facets.xsl +++ b/mir-module/src/main/resources/xsl/response-facets.xsl @@ -7,27 +7,14 @@ xmlns:fn="http://www.w3.org/2005/xpath-functions" exclude-result-prefixes="i18n mcrxsl encoder xalan fn"> - - - - - - - - - - - - - - + - + @@ -110,7 +97,7 @@ - + From f0a68d8301ea695548673df53810e8554a2986c8 Mon Sep 17 00:00:00 2001 From: Silvio Hermann Date: Fri, 17 Nov 2023 10:59:48 +0100 Subject: [PATCH 10/17] MIR-1241 Moved facet related template to response-facets.xsl. Use include via resource: uri --- .../main/resources/xsl/response-facets.xsl | 94 +++++++--------- .../src/main/resources/xsl/response-mir.xsl | 105 +----------------- 2 files changed, 45 insertions(+), 154 deletions(-) diff --git a/mir-module/src/main/resources/xsl/response-facets.xsl b/mir-module/src/main/resources/xsl/response-facets.xsl index 826f3d04c3..248a83d2fb 100644 --- a/mir-module/src/main/resources/xsl/response-facets.xsl +++ b/mir-module/src/main/resources/xsl/response-facets.xsl @@ -17,7 +17,6 @@ -
    @@ -111,29 +110,44 @@ - - - - - + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + - + - + @@ -141,74 +155,50 @@ - + - + - + - + -
  • +
  • + /response/lst[@name='responseHeader']/lst[@name='params']/str[@name='fq' and text() = $fqResponseValue] | + /response/lst[@name='responseHeader']/lst[@name='params']/arr[@name='fq']/str[text() = $fqResponseValue]"> true
    diff --git a/mir-module/src/main/resources/xsl/response-mir.xsl b/mir-module/src/main/resources/xsl/response-mir.xsl index 1e7a207957..b203b86c88 100644 --- a/mir-module/src/main/resources/xsl/response-mir.xsl +++ b/mir-module/src/main/resources/xsl/response-mir.xsl @@ -11,13 +11,11 @@ xmlns:mcrxsl="xalan://org.mycore.common.xml.MCRXMLFunctions" xmlns:basket="xalan://org.mycore.frontend.basket.MCRBasketManager" xmlns:decoder="xalan://java.net.URLDecoder" - exclude-result-prefixes="i18n mods str exslt mcr acl mcrxsl basket encoder decoder" -> + exclude-result-prefixes="i18n mods str exslt mcr acl mcrxsl basket encoder decoder"> - - + - + @@ -887,103 +885,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  • -
    - - - true - - - -
    -
  • -
    -
    - From e976edf0bdb89eccd303d724251493232fb3a93c Mon Sep 17 00:00:00 2001 From: Silvio Hermann Date: Fri, 17 Nov 2023 12:12:15 +0100 Subject: [PATCH 11/17] MIR-1241 Simplified code for arbtrary facets --- .../main/resources/xsl/response-facets.xsl | 95 ++++++++++--------- 1 file changed, 49 insertions(+), 46 deletions(-) diff --git a/mir-module/src/main/resources/xsl/response-facets.xsl b/mir-module/src/main/resources/xsl/response-facets.xsl index 248a83d2fb..bde4fdad0c 100644 --- a/mir-module/src/main/resources/xsl/response-facets.xsl +++ b/mir-module/src/main/resources/xsl/response-facets.xsl @@ -7,17 +7,20 @@ xmlns:fn="http://www.w3.org/2005/xpath-functions" exclude-result-prefixes="i18n mcrxsl encoder xalan fn"> - + + + - + +

    @@ -43,10 +46,10 @@ - - + - + @@ -65,39 +68,30 @@

    +
      - - + - - + - - + - - - + - - - + - - @@ -106,48 +100,53 @@
    - - - - + + + + - + - + - + + - + - - - + + + + + - + - + @@ -155,18 +154,20 @@ - + - + - + - + @@ -180,25 +181,27 @@ true +
    From 250845fd5aebf67b11fb2c9f44127773feb74f93 Mon Sep 17 00:00:00 2001 From: Silvio Hermann Date: Fri, 17 Nov 2023 12:31:32 +0100 Subject: [PATCH 12/17] MIR-1241 Parse classification only once --- .../main/resources/xsl/response-facets.xsl | 22 +++++++------------ 1 file changed, 8 insertions(+), 14 deletions(-) diff --git a/mir-module/src/main/resources/xsl/response-facets.xsl b/mir-module/src/main/resources/xsl/response-facets.xsl index bde4fdad0c..8e40667d56 100644 --- a/mir-module/src/main/resources/xsl/response-facets.xsl +++ b/mir-module/src/main/resources/xsl/response-facets.xsl @@ -14,40 +14,34 @@ - - - - -

    - - + - - - - + - - + + select="$classification/mycoreclass/label[@xml:lang=$CurrentLang]/@text"/> From 5b1775bcbc262076771275558f6547fc367fd40b Mon Sep 17 00:00:00 2001 From: Silvio Hermann Date: Mon, 4 Dec 2023 14:52:05 +0100 Subject: [PATCH 13/17] MIR-1241 Support dynamic facet titles, allow to read values from category.top solr field --- .../config/mir/messages_de.properties | 1 + .../config/mir/messages_en.properties | 1 + .../config/mir/messages_it.properties | 1 + .../main/resources/xsl/response-facets.xsl | 84 ++++++++++--------- 4 files changed, 49 insertions(+), 38 deletions(-) diff --git a/mir-module/src/main/resources/config/mir/messages_de.properties b/mir-module/src/main/resources/config/mir/messages_de.properties index ff3a1f7ea1..5795bc0e29 100644 --- a/mir-module/src/main/resources/config/mir/messages_de.properties +++ b/mir-module/src/main/resources/config/mir/messages_de.properties @@ -637,6 +637,7 @@ mir.response.facet.mods.genre.title = Typ mir.response.facet.createdby.title = Erstellt von mir.response.facet.modifiedby.title = Angepasst von mir.response.facet.mods.author.title = Autor*in +mir.response.facet.worldReadableComplete.title = Verf\u00FCgbarkeit mir.results.hitDoesNotExist = Dieser Treffer kann nicht angezeigt werden oder wurde gerade gel\u00F6scht. mir.rights = Lizenz mir.rightsHolder = Rechteinhaber: diff --git a/mir-module/src/main/resources/config/mir/messages_en.properties b/mir-module/src/main/resources/config/mir/messages_en.properties index ee87d30d78..7ce692cded 100644 --- a/mir-module/src/main/resources/config/mir/messages_en.properties +++ b/mir-module/src/main/resources/config/mir/messages_en.properties @@ -868,3 +868,4 @@ subselect.category.cancel = Cancel subselect.category.title = Choose category user.profile.id.orcid = Your ORCID iD +mir.response.facet.worldReadableComplete.title = Availability diff --git a/mir-module/src/main/resources/config/mir/messages_it.properties b/mir-module/src/main/resources/config/mir/messages_it.properties index 0d9a55f2a0..65999672c1 100644 --- a/mir-module/src/main/resources/config/mir/messages_it.properties +++ b/mir-module/src/main/resources/config/mir/messages_it.properties @@ -53,3 +53,4 @@ mir.response.facet.modifiedby.title = Modificato da mir.response.facet.mods.author.title = Autore user.profile.id.orcid = Your ORCID iD +mir.response.facet.worldReadableComplete.title = Disponibilit\u00E0 diff --git a/mir-module/src/main/resources/xsl/response-facets.xsl b/mir-module/src/main/resources/xsl/response-facets.xsl index 8e40667d56..3908cda3d3 100644 --- a/mir-module/src/main/resources/xsl/response-facets.xsl +++ b/mir-module/src/main/resources/xsl/response-facets.xsl @@ -10,6 +10,8 @@ + + @@ -19,45 +21,29 @@

    - + - - - - - + + - - - - + + - - + + - - - - - - - - - - - - - + + + + +

    @@ -84,8 +70,15 @@ + + + + + @@ -97,16 +90,29 @@ - - + + + + + + + + + + + + + + + - - + + @@ -116,8 +122,8 @@ - - + + @@ -179,8 +185,10 @@
    @@ -177,8 +155,9 @@ - - + + From 38a0b0c1396d5211c6255e988b2890c3381bbdce Mon Sep 17 00:00:00 2001 From: Silvio Hermann Date: Tue, 5 Dec 2023 10:20:18 +0100 Subject: [PATCH 17/17] MIR-1241 Reduce diff in mir_results.scss (removed changes caused by code format) --- .../mir-layout/scss/common/mir_results.scss | 812 +++++++++--------- 1 file changed, 406 insertions(+), 406 deletions(-) diff --git a/mir-layout/src/main/resources/META-INF/resources/mir-layout/scss/common/mir_results.scss b/mir-layout/src/main/resources/META-INF/resources/mir-layout/scss/common/mir_results.scss index 48288b6ba5..1e02a54ced 100644 --- a/mir-layout/src/main/resources/META-INF/resources/mir-layout/scss/common/mir_results.scss +++ b/mir-layout/src/main/resources/META-INF/resources/mir-layout/scss/common/mir_results.scss @@ -163,481 +163,481 @@ $hover_darken: 20%; } } .result_list { - #hit_list { - .hit_item { - margin-bottom: 30px; - border-top: 1px solid $light_neutral; - border-radius: 10px; - .hit_counter { - text-align: center; - font-weight: bold; - color: $light_neutral; - border: 1px solid $light_neutral; - border-width: 0 0 0 1px; - border-top-left-radius: 10px; - padding: 1px 0 0 0; - width: 73px; - float: left; - } - .hit_stars { - margin: 0px 0px 5px 15px; - overflow: hidden; - width: 73px; - float: left; - .hit_star { - float:left; - width: 5px; - height: 5px; - background-color: $light_neutral; - margin: 8px 2px 0 2px; - border-radius: 50%; - } - } - .hit_stars_1 .hit_star_1 { - background-color: $dark_neutral; - } - .hit_stars_2 .hit_star_1 { - background-color: $dark_neutral; - } - .hit_stars_2 .hit_star_2 { - background-color: $dark_neutral; - } - .hit_stars_3 .hit_star_1 { - background-color: $dark_neutral; - } - .hit_stars_3 .hit_star_2 { - background-color: $dark_neutral; - } - .hit_stars_3 .hit_star_3 { - background-color: $dark_neutral; - } - .hit_stars_4 .hit_star { - background-color: $dark_neutral; - } - .hit_stars_4 .hit_star_5 { - background-color: $dark_neutral; - } - .hit_stars_5 .hit_star { - background-color: $dark_neutral; - } - .hit_star_1 {} - .hit_star_2 {} - .hit_star_3 {} - .hit_star_4 {} - .hit_star_5 {} - .hit_download_box { - position:relative; - float: left; - width: 73px; - display: none; - } - a .hit_icon { - &:hover { - box-shadow: 1px 1px 4px #999; - } - } - .hit_icon { - height: 100px; - background-color: #EDEDED; - background-position: center center; - background-size: 100% auto; - background-repeat: no-repeat; - border: 1px solid $light_neutral; - border-bottom-left-radius: 25px; - } - .hit_icon_overlay { - position: absolute; - top: 20px; - left: -8px; - width: 50%; + #hit_list { + .hit_item { + margin-bottom: 30px; + border-top: 1px solid $light_neutral; + border-radius: 10px; + .hit_counter { + text-align: center; + font-weight: bold; + color: $light_neutral; + border: 1px solid $light_neutral; + border-width: 0 0 0 1px; + border-top-left-radius: 10px; + padding: 1px 0 0 0; + width: 73px; + float: left; + } + .hit_stars { + margin: 0px 0px 5px 15px; + overflow: hidden; + width: 73px; + float: left; + .hit_star { + float:left; + width: 5px; + height: 5px; + background-color: $light_neutral; + margin: 8px 2px 0 2px; + border-radius: 50%; } - .hit_tnd_container { + } + .hit_stars_1 .hit_star_1 { + background-color: $dark_neutral; + } + .hit_stars_2 .hit_star_1 { + background-color: $dark_neutral; + } + .hit_stars_2 .hit_star_2 { + background-color: $dark_neutral; + } + .hit_stars_3 .hit_star_1 { + background-color: $dark_neutral; + } + .hit_stars_3 .hit_star_2 { + background-color: $dark_neutral; + } + .hit_stars_3 .hit_star_3 { + background-color: $dark_neutral; + } + .hit_stars_4 .hit_star { + background-color: $dark_neutral; + } + .hit_stars_4 .hit_star_5 { + background-color: $dark_neutral; + } + .hit_stars_5 .hit_star { + background-color: $dark_neutral; + } + .hit_star_1 {} + .hit_star_2 {} + .hit_star_3 {} + .hit_star_4 {} + .hit_star_5 {} + .hit_download_box { + position:relative; + float: left; + width: 73px; + display: none; + } + a .hit_icon { + &:hover { + box-shadow: 1px 1px 4px #999; } - .hit_tnd_content { + } + .hit_icon { + height: 100px; + background-color: #EDEDED; + background-position: center center; + background-size: 100% auto; + background-repeat: no-repeat; + border: 1px solid $light_neutral; + border-bottom-left-radius: 25px; + } + .hit_icon_overlay { + position: absolute; + top: 20px; + left: -8px; + width: 50%; + } + .hit_tnd_container { + } + .hit_tnd_content { overflow:hidden; > div { float:left; - &:nth-child(n+1) { - margin-left: 5px; - } + &:nth-child(n+1) { + margin-left: 5px; + } } + } + .hit_date { + color: $dark_neutral; + } + .hit_type { + color: $dark_neutral; + } + .hit_state { + color: $white; + .mir-published { + background-color: $success; } - .hit_date { - color: $dark_neutral; - } - .hit_type { - color: $dark_neutral; - } - .hit_state { - color: $white; - .mir-published { - background-color: $success; - } - .mir-submitted, - .mir-new, - .mir-imported { - background-color: $warning; - } - .mir-review { - background-color: $primary; - } - .mir-blocked { - background-color: $danger; - } - .mir-deleted { - background-color: $secondary; - } - span { - background-color: $secondary; - } + .mir-submitted, + .mir-new, + .mir-imported { + background-color: $warning; } - .hit_title { - font-size: 20px; - margin: 15px 0 5px 0; - border-left: 0px solid $light_neutral; + .mir-review { + background-color: $primary; } - .hit_author { - font-size: 16px; - margin: 0 0 0px 0; + .mir-blocked { + background-color: $danger; } - .hit_source { - margin-top: 10px; - .label_parent { - color: $dark_neutral; - } + .mir-deleted { + background-color: $secondary; } - .hit_abstract { - margin: 10px 0 5px 0; + span { + background-color: $secondary; } - .hit_pub_name { - .label_publisher { - color: $dark_neutral; - } + } + .hit_title { + font-size: 20px; + margin: 15px 0 5px 0; + border-left: 0px solid $light_neutral; + } + .hit_author { + font-size: 16px; + margin: 0 0 0px 0; + } + .hit_source { + margin-top: 10px; + .label_parent { + color: $dark_neutral; } - .hit_options { - .btn { - margin-right: 0px; - padding: 2px 10px; - background-color: transparent; - border: 1px solid $light_neutral; - border-width: 0px 1px 0px 0px; - border-radius: 0; - border-top-right-radius: 10px; - color: $dark_neutral; - &:hover { - color: $link_color; - background-color: transparent; - } - } - .caret { - margin-left: 6px; - } - .hit_option { - .fas, - .far { - margin-right: 5px; - } - } + } + .hit_abstract { + margin: 10px 0 5px 0; + } + .hit_pub_name { + .label_publisher { + color: $dark_neutral; } - .single_hit_option { + } + .hit_options { + .btn { margin-right: 0px; padding: 2px 10px; background-color: transparent; border: 1px solid $light_neutral; border-width: 0px 1px 0px 0px; border-radius: 0; - border-top-right-radius: 9px; - a:hover { + border-top-right-radius: 10px; + color: $dark_neutral; + &:hover { color: $link_color; - text-decoration: none; - } - a { - color: $dark_neutral; - .fas, - .far { - margin-right: 5px; - } + background-color: transparent; } } - } - .hit_item:hover { - border-color: $highlight; - border-bottom-left-radius: 25%; - .hit_counter { - color: $highlight; - border-color: $highlight; - } - .hit_stars_1 .hit_star_1 { - background-color: $highlight; - } - .hit_stars_2 .hit_star_1 { - background-color: $highlight; - } - .hit_stars_2 .hit_star_2 { - background-color: $highlight; - } - .hit_stars_3 .hit_star_1 { - background-color: $highlight; - } - .hit_stars_3 .hit_star_2 { - background-color: $highlight; - } - .hit_stars_3 .hit_star_3 { - background-color: $highlight; - } - .hit_stars_4 .hit_star { - background-color: $highlight; - } - .hit_stars_5 .hit_star { - background-color: $highlight; - } - .hit_icon { - border-left-color: $highlight; - } - .hitmid { - border-color: $highlight; + .caret { + margin-left: 6px; } - .btn { - border-color: $highlight; + .hit_option { + .fas, + .far { + margin-right: 5px; + } } - .hit_title { - border-color: $link_color; + } + .single_hit_option { + margin-right: 0px; + padding: 2px 10px; + background-color: transparent; + border: 1px solid $light_neutral; + border-width: 0px 1px 0px 0px; + border-radius: 0; + border-top-right-radius: 9px; + a:hover { + color: $link_color; + text-decoration: none; + } + a { + color: $dark_neutral; + .fas, + .far { + margin-right: 5px; + } } } } - .result_list_end { - height: 20px; - border-bottom-left-radius: 5px; - border-bottom-right-radius: 5px; - border: 1px solid $light_neutral; - border-width: 0 1px 1px 1px; - margin: 0 0 20px 0px; + .hit_item:hover { + border-color: $highlight; + border-bottom-left-radius: 25%; + .hit_counter { + color: $highlight; + border-color: $highlight; + } + .hit_stars_1 .hit_star_1 { + background-color: $highlight; + } + .hit_stars_2 .hit_star_1 { + background-color: $highlight; + } + .hit_stars_2 .hit_star_2 { + background-color: $highlight; + } + .hit_stars_3 .hit_star_1 { + background-color: $highlight; + } + .hit_stars_3 .hit_star_2 { + background-color: $highlight; + } + .hit_stars_3 .hit_star_3 { + background-color: $highlight; + } + .hit_stars_4 .hit_star { + background-color: $highlight; + } + .hit_stars_5 .hit_star { + background-color: $highlight; + } + .hit_icon { + border-left-color: $highlight; + } + .hitmid { + border-color: $highlight; + } + .btn { + border-color: $highlight; + } + .hit_title { + border-color: $link_color; + } } } + .result_list_end { + height: 20px; + border-bottom-left-radius: 5px; + border-bottom-right-radius: 5px; + border: 1px solid $light_neutral; + border-width: 0 1px 1px 1px; + margin: 0 0 20px 0px; + } + } } /* file box *****************************************************************/ $file_box_color: $card-bg !default; -.file_box { - border: 0px solid $file_box_color; - border-radius: 0px; - margin-bottom: 30px; - - .filelist-loading { - position: absolute; - width: 100%; - text-align: center; - div { - width: 18px; - height: 18px; - background-color: #333; - border-radius: 100%; - display: inline-block; - -webkit-animation: bouncedelay 1.4s infinite ease-in-out; - animation: bouncedelay 1.4s infinite ease-in-out; - box-shadow: 0 2px 2px 0 rgba(50, 50, 50, 0.2); - /* Prevent first frame from flickering when animation starts */ - -webkit-animation-fill-mode: both; - animation-fill-mode: both; - } - .bounce1 { - -webkit-animation-delay: -0.32s; - animation-delay: -0.32s; - } - .bounce2 { - -webkit-animation-delay: -0.16s; - animation-delay: -0.16s; - } - } - .file_box_breadcrumbs { - padding: 5px 0; - overflow: hidden; - .derivate_folder { - padding-right: 5px; - } - .derivate_folder > a:after { - content: "/"; - padding-left: 5px; - } - } - .header { - .headline { - border-bottom: 1px solid #ddd; - padding: 0px 0 0px 0; - .title { - padding: 0 0 0 0; - .file_toggle { - font-size: 16px; - border: none; - background-color: transparent; - color: #333; - padding: 0; - font-weight: 300; - .set_number { - margin-left: 6px; + .file_box { + border: 0px solid $file_box_color; + border-radius: 0px; + margin-bottom: 30px; + + .filelist-loading { + position: absolute; + width: 100%; + text-align: center; + div { + width: 18px; + height: 18px; + background-color: #333; + border-radius: 100%; + display: inline-block; + -webkit-animation: bouncedelay 1.4s infinite ease-in-out; + animation: bouncedelay 1.4s infinite ease-in-out; + box-shadow: 0 2px 2px 0 rgba(50, 50, 50, 0.2); + /* Prevent first frame from flickering when animation starts */ + -webkit-animation-fill-mode: both; + animation-fill-mode: both; } - } - } - .options { - .btn { - border: 0px solid transparent; - margin-right: 0px; - background-color: transparent; - color: $primary; - padding: 5px 10px; - font-size: 12px; - line-height: 1.5; - &:hover { - color: $link_color; - background-color: transparent; + .bounce1 { + -webkit-animation-delay: -0.32s; + animation-delay: -0.32s; } - } - .caret { - margin-left: 6px; - } - .option { - .fas, - .far { - margin-right: 5px; + .bounce2 { + -webkit-animation-delay: -0.16s; + animation-delay: -0.16s; } } - } - .title { - float: left; - } - } - } - .body { - .table { - margin-bottom: 0; - } - .file_set { - a { - text-decoration: none; - } - &.active_file { - background-color: fade($primary, 5%); - .file_name { - position: relative; - font-weight: bold; - > a::after { - font-family:"Font Awesome 5 Free"; // TODO: Find fontawesome mixing for sass - font-weight: 900; - content: "\f005"; - position: absolute; - right: 0; - top: 0; - margin-top: 5px; - // color: $text-color; TODO: whats the bootstrap 4 default color? + .file_box_breadcrumbs { + padding: 5px 0; + overflow: hidden; + .derivate_folder { + padding-right: 5px; + } + .derivate_folder > a:after { + content: "/"; + padding-left: 5px; } } - } - &.waiting_file { - background-color: fade($primary, 5%); - .file_name { - position: relative; - font-weight: bold; - > a::after { - content: " "; - width: 20px; - height: 20px; - position: absolute; - right: 0; - top: 0; - border-radius: 100%; - margin-top: 5px; - // color: $text-color;TODO: whats the bootstrap 4 default color? - //background-color: $text-color; TODO: whats the bootstrap 4 default color? - animation: sk-scaleout 0.8s infinite ease-in-out; - -webkit-animation: sk-scaleout 0.8s infinite ease-in-out; + .header { + .headline { + border-bottom: 1px solid #ddd; + padding: 0px 0 0px 0; + .title { + padding: 0 0 0 0; + .file_toggle { + font-size: 16px; + border: none; + background-color: transparent; + color: #333; + padding: 0; + font-weight: 300; + .set_number { + margin-left: 6px; + } + } + } + .options { + .btn { + border: 0px solid transparent; + margin-right: 0px; + background-color: transparent; + color: $primary; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + &:hover { + color: $link_color; + background-color: transparent; + } + } + .caret { + margin-left: 6px; + } + .option { + .fas, + .far { + margin-right: 5px; + } + } + } + .title { + float: left; + } } } - } + .body { + .table { + margin-bottom: 0; + } + .file_set { + a { + text-decoration: none; + } + &.active_file { + background-color: fade($primary, 5%); + .file_name { + position: relative; + font-weight: bold; + > a::after { + font-family:"Font Awesome 5 Free"; // TODO: Find fontawesome mixing for sass + font-weight: 900; + content: "\f005"; + position: absolute; + right: 0; + top: 0; + margin-top: 5px; + // color: $text-color; TODO: whats the bootstrap 4 default color? + } + } + } + &.waiting_file { + background-color: fade($primary, 5%); + .file_name { + position: relative; + font-weight: bold; + > a::after { + content: " "; + width: 20px; + height: 20px; + position: absolute; + right: 0; + top: 0; + border-radius: 100%; + margin-top: 5px; + // color: $text-color;TODO: whats the bootstrap 4 default color? + //background-color: $text-color; TODO: whats the bootstrap 4 default color? + animation: sk-scaleout 0.8s infinite ease-in-out; + -webkit-animation: sk-scaleout 0.8s infinite ease-in-out; + } + } + } - .options { - .btn { - margin-right: 0px; - padding: 2px 10px; - background-color: transparent; - border: 1px solid $light_neutral; - border-width: 0px 0px 0px 0px; - border-radius: 0; - border-top-right-radius: 0px; - color: $dark_neutral; - &:hover { - color: $link_color; - background-color: transparent; + .options { + .btn { + margin-right: 0px; + padding: 2px 10px; + background-color: transparent; + border: 1px solid $light_neutral; + border-width: 0px 0px 0px 0px; + border-radius: 0; + border-top-right-radius: 0px; + color: $dark_neutral; + &:hover { + color: $link_color; + background-color: transparent; + } + } + .caret { + margin-left: 6px; + } + .option { + .fas, + .far { + margin-right: 5px; + } + } + } + .file_date {} + .file_preview {} + .file_name {} + .derivate_folder { + cursor: pointer; + } + .go_back { + padding-left: 140px; + } + .file_urn { + padding-left: 2px; + } + .file_size {} } } - .caret { - margin-left: 6px; - } - .option { - .fas, - .far { - margin-right: 5px; + + .file_box_pagination { + .pagination-info, .pagination { + margin: 5px 0; + } + + .pagination-info { + // line-height: $line-height-small; // TODO find small text height } } } - .file_date {} - .file_preview {} - .file_name {} - .derivate_folder { - cursor: pointer; - } - .go_back { - padding-left: 140px; - } - .file_urn { - padding-left: 2px; - } - .file_size {} - } - } - - .file_box_pagination { - .pagination-info, .pagination { - margin: 5px 0; - } - - .pagination-info { - // line-height: $line-height-small; // TODO find small text height - } - } -} /* filter *******************************************************************/ .filter { - border-right: 0px solid #ccc; + border-right: 0px solid #ccc; } .filter, .filter > li ul { - list-style:none; - margin:0; - padding:0; + list-style:none; + margin:0; + padding:0; } .filter > li ul { - display:none; + display:none; } .filter > li { - margin:0 0 0px 0; - padding:0 0 0 0; + margin:0 0 0px 0; + padding:0 0 0 0; } .filter > li > ul > li { - margin:0 0 0px 0px; - padding:0 0 0 0; + margin:0 0 0px 0px; + padding:0 0 0 0; } .filter .hits { - color: #ccc; + color: #ccc; } .filter .hits:before { - content: " ("; + content: " ("; } .filter .hits:after { - content: ")"; + content: ")"; }