diff --git a/home/src/main/resources/rdf/display/everytime/article_custom_fields.n3 b/home/src/main/resources/rdf/display/everytime/article_custom_fields.n3 index 38ffd54e..3bc0bb3a 100644 --- a/home/src/main/resources/rdf/display/everytime/article_custom_fields.n3 +++ b/home/src/main/resources/rdf/display/everytime/article_custom_fields.n3 @@ -1,46 +1,73 @@ @prefix : . +@prefix searchIndex: . + @prefix rdfs: . -:vivodocumentModifier_excerptsInArticles +:vivodocumentModifier_excerptsInComplexPublications a , ; - rdfs:label "Elenph article excerpts" ; + rdfs:label "Populate complex publications with excerpts" ; :hasTargetField "ALLTEXT" ; :hasSelectQuery """ PREFIX rdfs: - PREFIX ts_: + PREFIX ts: PREFIX rdf: SELECT DISTINCT ?value WHERE { - ?uri rdf:type ts_:elenphArticle . - ?uri ts_:hasTOC ?toc . - ?toc (ts_:hasTOCItem/ts_:pointsTo)+/ts_:hasText ?elenphExcerpt . - VALUES ?property { ts_:works ts_:bibliography ts_:htmlExcerpt ts_:keywords } - ?elenphExcerpt ?property ?value . + ?uri ts:hasTOC ?toc . + ?toc (ts:hasTOCItem/ts:pointsTo)+/ts:hasText ?excerpt . + VALUES ?property { ts:works ts:bibliography ts:htmlExcerpt ts:keywords } + ?excerpt ?property ?value . } """ . - -:vivodocumentModifier_PopulateText + +:vivoUriFinder_excerptsInComplexPublications + a searchIndex:indexing.IndexingUriFinder , + searchIndex:indexing.SelectQueryUriFinder ; + rdfs:label "When excerpts change" ; + :hasSelectQuery """ + PREFIX ts: + SELECT ?uri + WHERE { + ?uri ts:hasTOC ?toc . + ?toc (ts:hasTOCItem/ts:pointsTo)+/ts:hasText ?subject . + } + """ . + +:vivoUriFinder_onRubricsAssign + a searchIndex:indexing.IndexingUriFinder , + searchIndex:indexing.SelectQueryUriFinder ; + rdfs:label "When rubric was assigned" ; + :hasSelectQuery """ + PREFIX ts: + SELECT ?uri + WHERE { + ?subject a ts:textExcerpt . + VALUES ?uri { ?subject } + } + """ . + +:vivodocumentModifier_PopulateTextWithHTMLContentsOfExcerpts a , ; rdfs:label "Html text to text field" ; :hasTargetField "text" ; :hasSelectQuery """ PREFIX rdfs: - PREFIX ts_: + PREFIX ts: PREFIX rdf: SELECT DISTINCT ?htmlExcerpt WHERE { { - ?uri rdf:type ts_:textExcerpt . - ?uri ts_:htmlExcerpt ?htmlExcerpt . + ?uri rdf:type ts:textExcerpt . + ?uri ts:htmlExcerpt ?htmlExcerpt . } UNION { - ?uri rdf:type ts_:publication . - ?uri ts_:hasTOC ?toc . - ?toc (ts_:hasTOCItem/ts_:pointsTo)+/ts_:hasText ?artExcerpt . - ?artExcerpt ts_:htmlExcerpt ?htmlExcerpt . + ?uri rdf:type ts:complexPublication . + ?uri ts:hasTOC ?toc . + ?toc (ts:hasTOCItem/ts:pointsTo)+/ts:hasText ?excerpt . + ?excerpt ts:htmlExcerpt ?htmlExcerpt . } } """ . @@ -52,22 +79,22 @@ :hasTargetField "rubrics" ; :hasSelectQuery """ PREFIX rdfs: - PREFIX ts_: + PREFIX ts: PREFIX rdf: PREFIX pr: SELECT DISTINCT ?rubric WHERE { { - ?uri rdf:type ts_:elenphExcerpt . + ?uri rdf:type ts:textExcerpt . ?uri pr:belongsTo ?assignedRubric . ?assignedRubric (pr:hasParent)* ?rubric . } UNION { - ?uri rdf:type ts_:elenphArticle . - ?uri ts_:hasTOC ?toc . - ?toc (ts_:hasTOCItem/ts_:pointsTo)+/ts_:hasText ?artExcerpt . - ?artExcerpt pr:belongsTo ?assignedRubric . + ?uri rdf:type ts:complexPublication . + ?uri ts:hasTOC ?toc . + ?toc (ts:hasTOCItem/ts:pointsTo)+/ts:hasText ?excerpt . + ?excerpt pr:belongsTo ?assignedRubric . ?assignedRubric (pr:hasParent)* ?rubric . } } @@ -95,20 +122,20 @@ :hasTargetField "keywords" ; :hasSelectQuery """ PREFIX rdfs: - PREFIX ts_: + PREFIX ts: PREFIX rdf: SELECT DISTINCT ?keywords WHERE { { - ?uri rdf:type ts_:elenphArticle . - ?uri ts_:hasTOC ?toc . - ?toc (ts_:hasTOCItem/ts_:pointsTo)+/ts_:hasText ?elenphExcerpt . - ?elenphExcerpt ts_:keywords ?keywords . + ?uri rdf:type ts:elenphArticle . + ?uri ts:hasTOC ?toc . + ?toc (ts:hasTOCItem/ts:pointsTo)+/ts:hasText ?elenphExcerpt . + ?elenphExcerpt ts:keywords ?keywords . } UNION { - ?uri rdf:type ts_:elenphExcerpt . - ?uri ts_:keywords ?keywords . + ?uri rdf:type ts:elenphExcerpt . + ?uri ts:keywords ?keywords . } } """ . @@ -120,20 +147,20 @@ :hasTargetField "bibliography" ; :hasSelectQuery """ PREFIX rdfs: - PREFIX ts_: + PREFIX ts: PREFIX rdf: SELECT DISTINCT ?bibliography WHERE { { - ?uri rdf:type ts_:elenphArticle . - ?uri ts_:hasTOC ?toc . - ?toc (ts_:hasTOCItem/ts_:pointsTo)+/ts_:hasText ?elenphExcerpt . - ?elenphExcerpt ts_:bibliography ?bibliography . + ?uri rdf:type ts:elenphArticle . + ?uri ts:hasTOC ?toc . + ?toc (ts:hasTOCItem/ts:pointsTo)+/ts:hasText ?elenphExcerpt . + ?elenphExcerpt ts:bibliography ?bibliography . } UNION { - ?uri rdf:type ts_:elenphExcerpt . - ?uri ts_:bibliography ?bibliography . + ?uri rdf:type ts:elenphExcerpt . + ?uri ts:bibliography ?bibliography . } } """ . diff --git a/home/src/main/resources/rdf/display/everytime/compilationDataGetters.n3 b/home/src/main/resources/rdf/display/everytime/compilationDataGetters.n3 index eb0564b6..eab30a54 100644 --- a/home/src/main/resources/rdf/display/everytime/compilationDataGetters.n3 +++ b/home/src/main/resources/rdf/display/everytime/compilationDataGetters.n3 @@ -42,11 +42,11 @@ display:getCompilationExcerptPathsDataGetter display:saveToVar "paths"; display:query """ - PREFIX rdfs: - PREFIX rdf: - PREFIX ts_: - SELECT (GROUP_CONCAT(substr(concat("000",str(?outline)),strlen(str(?outline))); SEPARATOR = ".") AS ?path ) ?tocElement ?elenphExcerpt - WHERE { + PREFIX rdfs: + PREFIX rdf: + PREFIX ts_: + SELECT (GROUP_CONCAT(substr(concat("000",str(?outline)),strlen(str(?outline))); SEPARATOR = ".") AS ?path ) (COUNT(?outline) AS ?level) ?tocElement ?elenphExcerpt + WHERE { ?individualURI ts_:hasTOC ?toc . ?toc ts_:hasTOCItem/(ts_:pointsTo/ts_:hasTOCItem)* ?tmpTOCItem . ?tmpTOCItem rdf:type ts_:TOCItem . @@ -56,10 +56,10 @@ display:getCompilationExcerptPathsDataGetter ?tocElement ts_:hasText ?elenphExcerpt . } { - SELECT ?tocElement + SELECT ?tocElement WHERE { - ?individualURI ts_:hasTOC ?toc . - ?toc (ts_:hasTOCItem/ts_:pointsTo)+ ?tocElement . + ?individualURI ts_:hasTOC ?toc . + ?toc (ts_:hasTOCItem/ts_:pointsTo)+ ?tocElement . ?tocElement rdf:type ts_:TOCLevel . } } @@ -74,11 +74,11 @@ display:getCompilationBibliographyDataGetter PREFIX rdfs: PREFIX ts_: PREFIX rdf: - SELECT DISTINCT ?bibliography ?elenphExcerpt + SELECT DISTINCT ?bibliography ?excerpt WHERE { ?individualURI ts_:hasTOC ?toc . - ?toc (ts_:hasTOCItem/ts_:pointsTo)+/ts_:hasText ?elenphExcerpt . - ?elenphExcerpt ts_:bibliography ?bibliography . + ?toc (ts_:hasTOCItem/ts_:pointsTo)+/ts_:hasText ?excerpt . + ?excerpt ts_:bibliography ?bibliography . } ORDER BY ?bibliography """ . @@ -90,11 +90,11 @@ display:getCompilationWorksDataGetter PREFIX rdfs: PREFIX ts_: PREFIX rdf: - SELECT DISTINCT ?works ?elenphExcerpt + SELECT DISTINCT ?works ?excerpt WHERE { ?individualURI ts_:hasTOC ?toc . - ?toc (ts_:hasTOCItem/ts_:pointsTo)+/ts_:hasText ?elenphExcerpt . - ?elenphExcerpt ts_:works ?works . + ?toc (ts_:hasTOCItem/ts_:pointsTo)+/ts_:hasText ?excerpt . + ?excerpt ts_:works ?works . } ORDER BY ?works """ . diff --git a/home/src/main/resources/rdf/display/everytime/deleteQueries.n3 b/home/src/main/resources/rdf/display/everytime/deleteQueries.n3 index a8aebb1a..6431a4f9 100644 --- a/home/src/main/resources/rdf/display/everytime/deleteQueries.n3 +++ b/home/src/main/resources/rdf/display/everytime/deleteQueries.n3 @@ -14,8 +14,10 @@ """ . display:hasDeleteQuery """ PREFIX ts: - DESCRIBE ?individualURI ?tocElement ?tocItem ?toc ?excerpt + PREFIX rdf: + DESCRIBE ?individualURI ?tocElement ?tocItem ?toc ?excerpt ?author ?organization WHERE { + ?individualURI rdf:type ts:elenphArticle . OPTIONAL { ?individualURI ts:hasTOC ?toc . ?toc (ts:hasTOCItem/ts:pointsTo)* ?tocElement . @@ -23,7 +25,13 @@ ?tocElement ts:hasTOCItem ?tocItem . } OPTIONAL { - ?tocElement ts_:hasText ?excerpt . + ?tocElement ts:hasText ?excerpt . + OPTIONAL { + ?excerpt ts:hasAuthor ?author . + OPTIONAL { + ?author ts:affiliatedWith ?organization . + } + } } } } @@ -35,6 +43,6 @@ WHERE { ?tocElement ts:hasText ?individualURI . - NOT EXISTS {?tocElement ts:hasTOCItem ?tocItem } + FILTER NOT EXISTS {?tocElement ts:hasTOCItem ?tocItem } } """ . diff --git a/home/src/main/resources/rdf/display/everytime/elenphArticleDataGetters.n3 b/home/src/main/resources/rdf/display/everytime/elenphArticleDataGetters.n3 index 8a801c4e..3c7a3977 100644 --- a/home/src/main/resources/rdf/display/everytime/elenphArticleDataGetters.n3 +++ b/home/src/main/resources/rdf/display/everytime/elenphArticleDataGetters.n3 @@ -42,11 +42,11 @@ display:getArticleExcerptPathsDataGetter display:saveToVar "paths"; display:query """ - PREFIX rdfs: - PREFIX rdf: - PREFIX ts_: - SELECT (GROUP_CONCAT(substr(concat("000",str(?outline)),strlen(str(?outline))); SEPARATOR = ".") AS ?path ) ?tocElement ?elenphExcerpt - WHERE { + PREFIX rdfs: + PREFIX rdf: + PREFIX ts_: + SELECT (GROUP_CONCAT(substr(concat("000",str(?outline)),strlen(str(?outline))); SEPARATOR = ".") AS ?path ) (COUNT(?outline) AS ?level) ?tocElement ?elenphExcerpt + WHERE { ?individualURI ts_:hasTOC ?toc . ?toc ts_:hasTOCItem/(ts_:pointsTo/ts_:hasTOCItem)* ?tmpTOCItem . ?tmpTOCItem rdf:type ts_:TOCItem . @@ -56,12 +56,11 @@ display:getArticleExcerptPathsDataGetter ?tocElement ts_:hasText ?elenphExcerpt . } { - SELECT ?elenphArticle ?tocElement + SELECT ?elenphArticle ?tocElement WHERE { - ?individualURI ts_:hasTOC ?toc . - ?toc (ts_:hasTOCItem/ts_:pointsTo)+ ?tocElement . + ?individualURI ts_:hasTOC ?toc . + ?toc (ts_:hasTOCItem/ts_:pointsTo)+ ?tocElement . ?tocElement rdf:type ts_:TOCLevel . - ?individualURI rdf:type ts_:elenphArticle . } } } GROUP BY ?tocElement ?elenphExcerpt ORDER BY ?path @@ -75,11 +74,11 @@ display:getArticleBibliographyDataGetter PREFIX rdfs: PREFIX ts_: PREFIX rdf: - SELECT DISTINCT ?bibliography ?elenphExcerpt + SELECT DISTINCT ?bibliography ?excerpt WHERE { ?individualURI ts_:hasTOC ?toc . - ?toc (ts_:hasTOCItem/ts_:pointsTo)+/ts_:hasText ?elenphExcerpt . - ?elenphExcerpt ts_:bibliography ?bibliography . + ?toc (ts_:hasTOCItem/ts_:pointsTo)+/ts_:hasText ?excerpt . + ?excerpt ts_:bibliography ?bibliography . } ORDER BY ?bibliography """ . @@ -91,11 +90,11 @@ display:getArticleWorksDataGetter PREFIX rdfs: PREFIX ts_: PREFIX rdf: - SELECT DISTINCT ?works ?elenphExcerpt + SELECT DISTINCT ?works ?excerpt WHERE { ?individualURI ts_:hasTOC ?toc . - ?toc (ts_:hasTOCItem/ts_:pointsTo)+/ts_:hasText ?elenphExcerpt . - ?elenphExcerpt ts_:works ?works . + ?toc (ts_:hasTOCItem/ts_:pointsTo)+/ts_:hasText ?excerpt . + ?excerpt ts_:works ?works . } ORDER BY ?works """ . diff --git a/webapp/src/main/webapp/WEB-INF/resources/shortview_config.n3 b/webapp/src/main/webapp/WEB-INF/resources/shortview_config.n3 new file mode 100644 index 00000000..c912bc22 --- /dev/null +++ b/webapp/src/main/webapp/WEB-INF/resources/shortview_config.n3 @@ -0,0 +1,27 @@ +@prefix ts_: . +@prefix display: . +@prefix mydomain: . + +ts_:elenphExcerpt display:hasCustomView mydomain:elenphExcerptShortView . + +mydomain:elenphExcerptShortView + a display:customViewForIndividual ; + display:appliesToContext "SEARCH" ; + display:hasTemplate "elenphExcerptShortView.ftl" ; + display:hasDataGetter mydomain:elenphExcerptShortViewDataGetter . + +mydomain:elenphExcerptShortViewDataGetter + a ; + display:saveToVar "excerptInfo"; + display:query + """ + PREFIX rdfs: + PREFIX vivo: + PREFIX rdf: + PREFIX ts_: + SELECT ?property ?value + WHERE { + ?individualUri ?property ?value . + ?individualUri rdf:type ts_:elenphExcerpt . + } + """ . diff --git a/webapp/src/main/webapp/favicon.ico b/webapp/src/main/webapp/favicon.ico index fe936708..d6f769bc 100644 Binary files a/webapp/src/main/webapp/favicon.ico and b/webapp/src/main/webapp/favicon.ico differ diff --git a/webapp/src/main/webapp/robots.txt b/webapp/src/main/webapp/robots.txt index ed35ce7c..659b6c36 100644 --- a/webapp/src/main/webapp/robots.txt +++ b/webapp/src/main/webapp/robots.txt @@ -22,4 +22,3 @@ Disallow: /vis/ # VIVO addition Disallow: /visualizationAjax/ # VIVO addition Disallow: /visualizationData/ # VIVO addition Disallow: /qrcode # VIVO addition -Disallow: /individual # VIVO addition diff --git a/webapp/src/main/webapp/templates/freemarker/body/partials/menupage/menupage-browse.ftl b/webapp/src/main/webapp/templates/freemarker/body/partials/menupage/menupage-browse.ftl new file mode 100644 index 00000000..5f94bcdb --- /dev/null +++ b/webapp/src/main/webapp/templates/freemarker/body/partials/menupage/menupage-browse.ftl @@ -0,0 +1,49 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#-- Template for browsing individuals in class groups for menupages --> + +<#import "lib-string.ftl" as str> + + + + diff --git a/webapp/src/main/webapp/templates/freemarker/body/partials/shortview/view-search-default.ftl b/webapp/src/main/webapp/templates/freemarker/body/partials/shortview/view-search-default.ftl index be693ca2..33db0830 100644 --- a/webapp/src/main/webapp/templates/freemarker/body/partials/shortview/view-search-default.ftl +++ b/webapp/src/main/webapp/templates/freemarker/body/partials/shortview/view-search-default.ftl @@ -4,8 +4,10 @@ <#import "lib-vivo-properties.ftl" as p> +
${individual.name} <@p.displayTitle individual />

${individual.snippet}

+
diff --git a/webapp/src/main/webapp/templates/freemarker/body/search/search-error.ftl b/webapp/src/main/webapp/templates/freemarker/body/search/search-error.ftl new file mode 100644 index 00000000..3f08f55d --- /dev/null +++ b/webapp/src/main/webapp/templates/freemarker/body/search/search-error.ftl @@ -0,0 +1,16 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#-- Template for displaying search error message --> + +<#if title??> +
+

${title?html}

+
+ +
+

+ ${message?html} +

+
+<#include "searchSelector.ftl"> +<#include "search-help.ftl" > diff --git a/webapp/src/main/webapp/templates/freemarker/body/search/search-help.ftl b/webapp/src/main/webapp/templates/freemarker/body/search/search-help.ftl new file mode 100644 index 00000000..e892f96d --- /dev/null +++ b/webapp/src/main/webapp/templates/freemarker/body/search/search-help.ftl @@ -0,0 +1,49 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#if origination?has_content && origination == "helpLink"> +
+

Search Tips

+
+ + Back to results + +<#else> +
+

Search Tips

+
+ +
    +
  • Keep it simple! Use short, single terms unless your searches are returning too many results.
  • +
  • Use quotes to search for an entire phrase -- e.g., "protein folding".
  • +
  • Except for boolean operators, searches are not case-sensitive, so "Geneva" and "geneva" are equivalent
  • +
  • If you are unsure of the correct spelling, put ~ at the end of your search term -- e.g., cabage~ finds cabbage, steven~ finds Stephen and Stefan (as well as other similar names).
  • +
+ + + + +${stylesheets.add('')} + diff --git a/webapp/src/main/webapp/templates/freemarker/body/search/search-pagedResults.ftl b/webapp/src/main/webapp/templates/freemarker/body/search/search-pagedResults.ftl new file mode 100644 index 00000000..83c45e9f --- /dev/null +++ b/webapp/src/main/webapp/templates/freemarker/body/search/search-pagedResults.ftl @@ -0,0 +1,252 @@ +<#-- $This file is distributed under the terms of the license in LICENSE$ --> + +<#-- Template for displaying paged search results --> + +

+ +<#include "searchSelector.ftl"> + +<#escape x as x?html> +
${i18n().search_results_for} '${querytext}'
+
<#if classGroupName?has_content>${i18n().limited_to_type} '${classGroupName}'
+
<#if typeName?has_content>${i18n().limited_to_type} '${typeName}'
+ + + + ${i18n().download_results} +<#-- --> +

+ +${i18n().not_expected_results} +
+ + <#-- Refinement links --> + <#if classGroupLinks?has_content && classGroupLinks?size gt 1> +
+

${i18n().display_only}

+
    + <#list classGroupLinks as link> +
  • ${link.text}(${link.count})
  • + +
+
+ + + <#if classLinks?has_content && classLinks?size gt 1 > +
+ <#if classGroupName?has_content> +

${i18n().limit} ${classGroupName} ${i18n().to}

+ <#else> +

${i18n().limit_to}

+ +
    + <#list classLinks as link> +
  • ${link.text}(${link.count})
  • + +
+
+ + + +
+ + <#if user.loggedIn> + + +
+ + + + <#-- Search results --> +
    + <#list individuals as individual> +
  • + <@shortView uri=individual.uri viewContext="search" /> +
  • + +
+ + + <#-- Paging controls --> + <#if (pagingLinks?size > 0)> +
+ ${i18n().pages}: + <#if prevPage??> + <#list pagingLinks as link> + <#if link.url??> + ${link.text} + <#else> + ${link.text} <#-- no link if current page --> + + + <#if nextPage??> +
+ +
+ + <#-- VIVO OpenSocial Extension by UCSF --> + <#if openSocial??> + <#if openSocial.visible> +

OpenSocial

+ + + + + + +
+ + + +${stylesheets.add('', + '', + '')} + +${headScripts.add('', + '', + '' + )} + +${scripts.add('')} diff --git a/webapp/src/main/webapp/templates/freemarker/elenphExcerpt.ftl b/webapp/src/main/webapp/templates/freemarker/elenphExcerpt.ftl deleted file mode 100644 index 893cbea3..00000000 --- a/webapp/src/main/webapp/templates/freemarker/elenphExcerpt.ftl +++ /dev/null @@ -1,42 +0,0 @@ -<#-- $This file is distributed under the terms of the license in LICENSE$ --> - -<#-- - - This version of individual--foaf-person.ftl is a "router" template. The original VIVO - version of this template now resides in the /themes/wilma/templates directory. - - This version of the template is used when the profile page types feature is enabled. - This template serves to "rout" the user to the correct template based (1) the - profile page type of the foaf person being displayed or (2) the targeted view that - the user wants to see. For example, when a user is routed to a quick view template, - the user has the option of displaying the full view. If the user chooses that option, - the targetedView variable gets set. - - This template could also be used to load just the "individual--foaf-person-2column.ftl" - without enabling profile page types. "individual--foaf-person-2column.ftl" is a slightly - different design than the "individual--foaf-person.ftl" template in the themes/wilma - directory. - - --> - -<#include "individual-setup.ftl"> - -${scripts.add('')} -${scripts.add('')} - -<#assign selectedTemplate = "elenphExcerpt-internal.ftl" > - -<#if profilePageTypesEnabled > - <#assign profilePageType = profileType > - - <#-- targetedView takes precedence over the profilePageType. --> - - <#if targetedView?has_content> - <#if targetedView != "standardView"> - <#assign selectedTemplate = "individual--foaf-person-quickview.ftl" > - - <#elseif profilePageType == "quickView" > - <#assign selectedTemplate = "individual--foaf-person-quickview.ftl" > - - -<#include selectedTemplate > diff --git a/webapp/src/main/webapp/templates/freemarker/text-lib.ftl b/webapp/src/main/webapp/templates/freemarker/text-lib.ftl deleted file mode 100644 index f88a661d..00000000 --- a/webapp/src/main/webapp/templates/freemarker/text-lib.ftl +++ /dev/null @@ -1,38 +0,0 @@ - -<#macro showRubrics> - <#assign currentRubrics = propertyGroups.pullProperty("https://iph.ras.ru/relationships#belongsTo")!> - <#if currentRubrics?? && currentRubrics?has_content> -
Относится к рубрикам: <@p.addLink currentRubrics editable /> <@p.verboseDisplay currentRubrics />
- <#if rubrics?? && rubrics?has_content> - <#list rubrics as rubric> -
  • - ${rubric.rubricName} -
  • - - -
    - - - -<#macro showIssue> - <#assign issue = propertyGroups.pullProperty("https://litvinovg.pro/text_structures#issue")!> - <#if issue.statements?has_content && issue.type == "data"> -
    -
    Входит в выпуск
    - <@p.dataPropertyList issue editable /> -
    - - - -<#macro showYear> - <#assign year = propertyGroups.pullProperty("https://litvinovg.pro/text_structures#year")!> - <#if year.statements?has_content && year.type == "data"> -
    -
    Год
    - <@p.dataPropertyList year editable /> -
    - - -<#macro showWorks works > - - \ No newline at end of file diff --git a/webapp/src/main/webapp/themes/iph/css/iph.css b/webapp/src/main/webapp/themes/iph/css/iph.css index 95d85f81..637c7189 100644 --- a/webapp/src/main/webapp/themes/iph/css/iph.css +++ b/webapp/src/main/webapp/themes/iph/css/iph.css @@ -20,7 +20,7 @@ html, body { padding: 0; height: 100%; /* needed for container min-height */ - font-family: "IPH Serif","Roboto","Lucida Sans Unicode","Lucida Grande", Geneva, helvetica, sans-serif; + font-family: "IPH Astra Serif","Roboto","IPH Serif","Lucida Sans Unicode","Lucida Grande", Geneva, helvetica, sans-serif; height: auto !important; /* real browsers */ height: 100%; /* IE6: treaded as min-height*/; min-height: 100%; /* real browsers */ @@ -34,9 +34,7 @@ body { min-width: 700px; max-width: 1920px; width: 100%; - background-size: 100%; - background: url(../images/header-image.png) center 0 no-repeat; - height: 200px; + height: 200px; display: flex; flex-direction: column; flex-wrap: nowrap; @@ -44,8 +42,13 @@ body { } a { color: #000000; + text-decoration: none; + font-size: 1.2rem; } -a:hover, +a:hover { + color: #8B4513; +} + h2 a:hover, h2 a:active, ul#header-nav a:link, @@ -63,6 +66,8 @@ h2 { font-size: 1.375em; color: #000000; line-height: 1.5em; + font-family: "IPH Astra Serif"; + font-size: 1.2rem; } h2 a { color: #8B4513; @@ -131,10 +136,8 @@ select.form-control >option { input.form-control { font-family: "Roboto"; font-size: 1rem; - color: #ababab; + color: #363636; } - - .btn-success.set-json { background-color: #ffffff; border: 1px dashed #000000; @@ -143,13 +146,15 @@ input.form-control { flex-grow: 1; margin-right: 10px; } - input.block { margin-bottom: 20px; } -label { +.label { margin-top: .5em; margin-bottom: .5em; + font-size: 1.2rem; + font-family: "IPH Astra Serif"; + color: #000000; } label.inline { display: inline; @@ -180,7 +185,7 @@ input.form-button:visited { position: relative; border: 0; margin: 0; - background-color: #749a02; + background-color: #DD9F00; color: #fff; font-size: 1rem; font-weight: normal; @@ -501,10 +506,16 @@ hr.formDivider { /* HEADER ------> */ #branding { position: relative; - width: 80%; + width: 100%; height: 200px; margin: 0 auto; padding: 0px 0px 0px 0px; + background-image: url(../images/header-image.png); + background-position: center; + background-repeat: no-repeat; +} +#topArea{ + width: 90%; } /* BRANDING ------> */ h1.vivo-logo { @@ -533,11 +544,6 @@ ul#header-nav { /* margin-right: 13px; */ font-size: 1.1rem; } - -.collapsible { - margin-top: 10pxl; -} - ul#header-nav li { float: left; display: block; @@ -571,7 +577,12 @@ ul#header-nav a.log-out { } .searchResultsHeader { - width: unset !important; + width: 100%; +} + +.searchResultsHeader >div#simple-search-container { + margin-left: auto; + margin-right: auto; } #switch-to-extended-searchform { border:none; @@ -593,8 +604,66 @@ ul#header-nav a.log-out { flex-wrap: nowrap; justify-content: center; } - - +.customsearch >div#articleWrapper >div#wrapper-content >div#simple-search-container { + margin-left: auto; + margin-right: auto; +} +.errorPageTitle { + text-align: center; +} +.errorPageTitle >h2 { + padding-bottom: 5px; +} +#nomatchingTitle { + text-align: center; + margin-bottom: 10px; +} +#searchTipsTitleH3 { + margin-bottom: 10px; + border-top: 1px solid #8B4513; + border-bottom: 1px solid #8B4513; + margin-top: 25px; + font-size: 1.2rem; + font-family: "IPH Astra Serif"; + background-color: #F6F6F6; + padding-left: 10px; +} +#searchTipsTitleH3 >h3 { + padding-bottom: 5px; + padding-top: 5px; +} +ul.searchTips >li { + font-family: "IPH Astra Serif"; + font-size: 1.1rem; +} +#advancedTipsWrapper { + margin-bottom: 10px; + border-top: 1px solid #8B4513; + border-bottom: 1px solid #8B4513; + margin-top: 10px; + font-size: 1.2rem; + font-family: "IPH Astra Serif"; + background-color: #F6F6F6; + padding-left: 10px; + width: 100%; +} +#advancedTipsWrapper >h4 { + padding-bottom: 5px; + padding-top: 5px; +} +#closeLink { + font-family: "IPH Astra Serif"; + font-size: 1rem!important; + text-transform: uppercase; + font-weight: bold; + border: 1px solid #8B4513; + padding: 8px; + background-color: #F6F6F6; + margin-left: 20px; +} +.customsearch >div#articleWrapper >div#wrapper-content >ul#advanced.searchTips { + margin-bottom: 10px; +} .custom-search-input { width: 90%; border-radius: unset !important; @@ -656,7 +725,6 @@ input.search-submit-button { height: 38px; /* top: 90px; right: 10px;*/ - padding-top: 20px; } #search-field { width: 396px; @@ -771,6 +839,8 @@ input.search-vivo { border: 1px solid #DD9F00; font-size: 1rem; height: 49px; + cursor: pointer; + outline: none; } #btn-reset-button { @@ -962,7 +1032,7 @@ p.forgot-password a, ul#individual-personInPosition li a, ul.individual-urls li a, ul.individual-urls-people li a { - color: #2485ae + color: #8B4513 } /* LOG IN------> */ #login { @@ -1186,6 +1256,8 @@ input.search-home-vivo { flex-direction: row; flex-wrap: wrap; justify-content: center;*/ + margin-left: auto; + margin-right: auto; } @@ -1218,12 +1290,29 @@ input.search-homepage { #limitedToClassGroup { font-size: 1rem; + display: none; } #searchQueryResults { - font-size: 1rem; + font-size: 1.3rem; + font-family: "IPH Astra Serif"; + margin-top: 25px; + color: #8B4513; + display: inline-block; + vertical-align: middle; +} +img#downloadIcon { + display: inline; + vertical-align: bottom; + height: 0px; + width: 0px; + padding: 15px; + background-image: url(../images/download-icon.svg); + background-position: center bottom; + background-repeat: no-repeat; } #limitedToType { font-size: 1rem; + display: none; } .filter-default { @@ -1527,13 +1616,36 @@ footer p.copyright { float: left; padding-top: 55px; /*padding-left: 30px;*/ - width: 30%; color: #ffffff; font-family: "Roboto"; font-style: normal; + display: flex; + justify-content: flex-start; + flex-direction: row; + flex-wrap: nowrap; + align-items: baseline; } footer p.copyright small { font-size: 1rem; + display: flex; + align-items: center; + flex-direction: row; + flex-wrap: nowrap; + justify-content: flex-start; +} +p.copyright >small >a >img { + padding-left: 5px; + padding-right: 5px; + padding-top: 7px; +} +p.copyright >small >a { + font-family: "IPH Astra Serif"; + font-size: 1.2rem; + color: #DD9F00; + padding-left: 5px; +} +p.copyright >small >a:hover { + color: #ffffff; } ul#footer-nav { float: right; @@ -1561,20 +1673,33 @@ ul#individual-facultyMemberships li:last-child { } #footer-nav a { color: #ffffff; + font-family: "IPH Astra Serif"; + font-size: 1.2rem; } #footer-nav a:hover, -a.terms, -a.powered-by-vivo { +a.terms { color: #DD9F00; text-decoration: none; } -a.terms:hover, -a.powered-by-vivo:hover { +a.powered-by-vivo { + color: #CDC9C9; + text-decoration: none; + font-size: 1rem; +} +a.powered-by-vivo >strong { + font-size: 0.9rem; + color: #CDB79E; +} +a.terms:hover { color: #4e5051; text-decoration: none; } +a.powered-by-vivo:hover { + color: #ffffff; + text-decoration: none; +} p { - margin-bottom: 1.3em; + margin-bottom: 0.3em; } /* STYLED BUTTONS ------> */ @@ -1770,7 +1895,7 @@ ul#browse-classes { outline-color: #efe9d9; outline-style: solid; outline-width: 1px; - height: 78px; + min-height: 78px; } ul#browse-classes li, ul#vgraph-classes li { @@ -1812,11 +1937,21 @@ ul#vgraph-classes .count-classes { font-size: .75em; } .alphaIndex, -.pagination.menupage, tr.editformcell td select, ul#alpha-browse-individuals li { font-size: .8em; } +.pagination.menupage { + font-size: 1rem; + font-family: "IPH Astra Serif"; + margin-bottom: 10px; + margin-left: 0px; +} +.pagination li.selected { + font-size: 1.2rem; + background: #FDF5E6; + color: #8B4513; +} nav#alpha-browse-container { border-top: 1px solid #efe9d9; background-color: #fff; @@ -1853,7 +1988,13 @@ article.property ul.property-list { font-size: 1em; } .pagination.menupage li a:hover { - background: #5e6363; + font-size: 1.2rem; + background: #ffffff; + color: #8B4513; +} +.pagination h3 { + font-family: "IPH Astra Serif"; + font-size: 1.2rem; } li.individual { margin-left: 0; @@ -1917,7 +2058,7 @@ li.individual { } #individual-intro h1 { font-size: 1.375em; - color: #2485ae; + color: #000000; } #individual-intro span.display-title, h1.fn .display-title { @@ -1950,7 +2091,7 @@ ul#individual-tools { color: #5f6464; } ul.individual-urls { - list-style: url(../../../images/individual/arrow-green.gif); + list-style: url(../images/arrow-brown.png); } ul.individual-urls li { font-size: .875em; @@ -1963,28 +2104,33 @@ ul.individual-urls-people { #individual-info, #property-group-menu a, .grey, -.pagination.menupage li.selected, h2#mainImage, #share-contact h2, h3.internal-auth { color: #5e6363; } #individual-info { - border-bottom: 1px solid #8B4513; - font-family: "IPH Astra Serif Regular"; + font-family: "IPH Astra Serif"; } #titleContainer { - font-family: "IPH Astra Serif Regular"; + font-family: "IPH Astra Serif"; + width: auto!important; } #individual-info h1.fn { - font-size: 1.375em; + font-size: 1.7rem; color: #595B5B; - line-height: 1.3em; background-image: url(../images/circle_title.png); background-repeat: no-repeat; background-position: left center; padding-left: 22px; + padding-bottom: 5px; color: #000000; + font-family: "IPH Astra Serif"; + border-right: none !important; + margin-top: 5px; + margin-right: 0px; + float: none; + display: inline; } #individual-info h2 { color: #5E6363; @@ -1997,7 +2143,7 @@ h3.internal-auth { } ul#individual-personInPosition { font-size: 1em; - list-style: url("../../../images/individual/arrow-green.gif"); + list-style: url("../images/arrow-brown.png"); } ul#individual-personInPosition li { line-height: 1.8em; @@ -2017,6 +2163,11 @@ ul#individual-facultyMemberships li { .display-title-not-editable { color: #4F4F4F; + display: block; + padding-top: 7px; + padding-left: 10px; + border-left: 1px solid #5e6363; + font-size: 1.5rem; } /* INDIVIDUAL VISUALIZATION ------> */ @@ -2063,7 +2214,7 @@ img.co-author { section.property-group h2, #menupage-content h4 { font-size: 1.25em; - color: #2485ae; + color: #8B4513; font-weight: normal; } article.property { @@ -2071,8 +2222,10 @@ article.property { } article.property h3 { background: #fafaf9; - font-size: 1.063em; - color: #8aa149; + font-size: 1.4rem; + color: #8B4513; + font-family: "IPH Astra Serif"; + font-style: normal; } article.property ul.property-list li.subclass h3 { font-size: 1.063em; @@ -2092,9 +2245,7 @@ article.property ul.property-list li a { position: absolute; left: -9999px; } -a { - text-decoration: none; -} + .middle { vertical-align: middle; } @@ -2109,7 +2260,8 @@ p.address-line { } /* EDITING DISPLAY------> */ .edit-individual { - border-left: 1px dotted #B2D15A; + border-left: 1px dotted #8B4513; + margin-left: 5px; } /* -------------------------------------------------> */ /* SITE ADMIN DASHBOARD ----------------------------> */ @@ -2232,8 +2384,8 @@ input.add-account:hover { background: url(../images/addNewAccountOver.png) 0 center no-repeat; } .disabledSubmit { - color: #ede ! important; - background-color: #b2d15a ! important; + color: #000000 ! important; + background-color: #DD9F00 ! important; cursor: default ! important; } /* -------------------------------------------------> */ @@ -2296,9 +2448,9 @@ span.subclassExpandMinus { } .affiliations { - margin-bottom: 1.5em; - font-family: "IPH Astra Serif Bold"; - font-size: 1rem; + font-family: "IPH Astra Serif"; + font-size: 1.2rem; + font-weight: bold; } /* -------------------------------------------------> */ /* ARTICLESTYLES --------------------------------> */ @@ -2306,23 +2458,47 @@ span.subclassExpandMinus { .articleExcerpt { background-color: #ffffff; /*border: 1px solid #F6F6F6;*/ - font-family: "IPH Astra Serif Regular"; - font-size: 1.4rem; + font-family: "IPH Astra Serif" !important; + font-size: 1.4rem !important; } .articleExcerpt >div.htmlExcerpt >p.Textbody { - font-family: "IPH Astra Serif Regular"; - font-size: 1rem; + font-family: "IPH Astra Serif" !important; + font-size: 1.3rem !important; + padding-top: 10px!important; +} +.htmlExcerpt h1:first-child { + display: none; +} +.htmlExcerpt h2:first-child { + display: none; +} +.htmlExcerpt h3:first-child { + display: none; +} +.htmlExcerpt >li >p.Textbody { + font-family: "IPH Astra Serif" !important; + font-size: 1.3rem !important; + padding-top: 10px!important; +} +.articleExcerpt >div.htmlExcerpt >p.Textbody >span { + font-family: "IPH Astra Serif" !important; + font-size: 1.3rem !important; } button.collapsible { background-color: #F6F6F6; /*border: 1px solid #F6F6F6 !important;*/ outline: none; - background-image: url(../images/arrow_down.png); + background-image: url(../images/arrow-down-big.svg); background-repeat: no-repeat; background-position: 1% 50%; padding-left: 40px !important; font-family: "IPH Astra Serif"; - font-size: 1.4rem; + font-size: 1.4rem !important; + cursor: pointer; + padding: 14px; + width: 100%; + text-align: left; + border: none; } button.collapsible:visited { -webkit-appearance: none; @@ -2335,12 +2511,82 @@ button.collapsible.active { -moz-appearance: none; border: 1px solid #F6F6F6; outline: none; + background-image: url(../images/arrow-top-big.svg); + background-repeat: no-repeat; + background-position: 1% 50%; } button.collapsible.active:focus { background-color: #F6F6F6; border: 1px solid #F6F6F6; } - +button.collapsible.metadataAuthors { + background-color: #FFFAF0; + border-bottom: 1px dashed #9C9C9C; + padding: 18px; + width: 100%; + outline: none; + border-left: 0px; + border-right: 0px; + border-top: 0px; + text-align:left; + margin-top: 0px; + background-image: url(../images/arrow-top.svg); + background-repeat: no-repeat; + background-position: 1% 50%; +} +button.collapsible.metadataAuthors.active { + background-color: #ffffff; + border-bottom: 1px dashed #9C9C9C; + padding: 18px; + width: 100%; + outline: none; + border-left: 0px; + border-right: 0px; + border-top: 0px; + text-align:left; + margin-top: 0px; + background-image: url(../images/arrow-down.svg); + background-repeat: no-repeat; + background-position: 1% 50%; +} +.metadataAuthors { + margin-top: 10px; + padding-left: 15px; +} +.metadataRubrics { + margin-top: 10px; + padding-left: 15px; +} +button.collapsible.metadataRubrics { + background-color: #FFFAF0; + border-bottom: 1px dashed #9C9C9C; + padding: 18px; + width: 100%; + outline: none; + border-left: 0px; + border-right: 0px; + border-top: 0px; + text-align:left; + margin-top: 0px; + background-image: url(../images/arrow-top.svg); + background-repeat: no-repeat; + background-position: 1% 50%; +} +button.collapsible.metadataRubrics.active { + background-color: #ffffff; + border-bottom: 1px dashed #9C9C9C; + padding: 18px; + width: 100%; + outline: none; + border-left: 0px; + border-right: 0px; + border-top: 0px; + text-align:left; + margin-top: 0px; + background-image: url(../images/arrow-down.svg); + background-repeat: no-repeat; + background-position: 1% 50%; +} .authors { width: 100%; border-top: 1px solid #8B4513; @@ -2348,15 +2594,151 @@ button.collapsible.active:focus { margin-bottom: 10px; text-align: right; padding-top: 10px; - font-family: IPH Serif; + font-family: IPH Astra Serif; font-style: italic; + font-size: 1.3rem; } .works { + font-family: IPH Astra Serif; + font-style: italic; + font-size: 1.2rem; + margin-left: 30px; + padding-left: 20px; +} +.works >li { + font-family: IPH Astra Serif; + font-style: italic; + font-size: 1.2rem; + margin-bottom: 1.3em; + display: list-item; + list-style-image: url(../images/bullet_icon.png); +} +.works >div.work >p { + font-family: IPH Astra Serif; + font-style: italic; + font-size: 1.2rem; +} +.works >h2.label { + background-image: url(../images/book_icon.png); + background-repeat: no-repeat; + background-position: left center; padding-left: 40px; + font-family: IPH Astra Serif; + font-size: 1.4rem; + font-style: normal; + margin-left: -50px; +} +.virtualWorks { + font-family: IPH Astra Serif; + font-style: italic; + font-size: 1.2rem; +} +.virtualWorks.virtualArticlePart >div.virtualWorks { + padding-top: 10px; + padding-bottom: 10px; +} +.virtualArticleWorks >div.virtualWorks >div.work { + background-image: url(../images/bullet_icon.png); + background-repeat: no-repeat; + background-position: left center; + margin-left: 30px; + padding-left: 20px; +} +.virtualWorks.virtualArticlePart >div.virtualWorks >div.work >p { + background-image: url(../images/bullet_icon.png); + background-repeat: no-repeat; + background-position: left center; + margin-left: 30px; + padding-left: 20px; } .bibliography { - padding-left: 40px; + margin-left: 30px; + padding-left: 20px; + font-family: IPH Astra Serif; + font-style: italic; + font-size: 1.2rem; } +.bibliography_entry >p { + font-family: IPH Astra Serif; + font-style: italic; + font-size: 1.2rem; +} +.virtualBibliography.virtualArticlePart >div.virtualBibliography >.bibliography { + background-image: url(../images/bullet_icon.png); + background-repeat: no-repeat; + background-position: left center; +} +.virtualBibliography.virtualArticlePart >div.virtualBibliography { + padding-top: 10px; + padding-bottom: 10px; +} +.searchResult { + margin-top: 15px; + font-family: "IPH Astra Serif"; + font-style: normal; + font-size: 1.4rem; + border-bottom: 1px solid #dde4e3; +} +.searchResult >a { + font-family: IPH Astra Serif; + font-style: normal; + font-size: 1.2rem; + color: #000000; + font-weight: bold; +} +.searchResult >a:hover { + color: #8B4513; +} +.virtualArticleBiblio >div.virtualBibliography { + margin-top: 10px; +} +.expandedAffilations { + padding-top: 10px; + padding-bottom: 10px; + padding-left: 20px; +} +.expandedAffilations span { + color: #696969; + font-family: "IPH Astra Serif"; + font-size: 1.2rem; + line-height: 1.4em; +} +.virtualArticleSwitch { + border-top: 1px solid #8B4513; + border-bottom: 1px solid #dde4e3; + display: flex; + flex-direction: row; + flex-wrap: nowrap; + justify-content: flex-start; + align-items: baseline; + background-color: #F6F6F6; +} +.virtualArticleSwitch >label.switch { + font-family: IPH Astra Serif; + font-style: normal; + font-size: 1.3rem; + padding-bottom: 15px; + padding-top: 9px; + display: flex; + align-items: center; +} +.virtualArticleSwitch >button { + all: unset; + cursor: pointer; + font-family: "IPH Astra Serif"; + font-size: 1.3rem; + padding: 15px; + background-color: #f8eccc; +} +.virtualArticleBiblio >div.virtualBibliography >div.bibliography { + background-image: url(../images/bullet_icon.png); + background-repeat: no-repeat; + background-position: left center; +} +.searchhits li { + margin-top: 0px; +} + ul.dropdown li#user-menu a { font-family: "Roboto"; font-size: 1rem; @@ -2392,6 +2774,42 @@ ul.dropdown ul.sub_menu li a:hover { flex-wrap: nowrap; justify-content: space-between; } +.entity >div#articleWrapper { + width: 80%; + margin-left: auto; + margin-right: auto; + display: flex; + flex-direction: row-reverse; + flex-wrap: nowrap; + justify-content: space-between; +} +.entity.loggedIn >div#articleWrapper { + width: 80%; + margin-left: auto; + margin-right: auto; + display: flex; + flex-direction: row-reverse; + flex-wrap: nowrap; + justify-content: space-between; +} +.display.loggedIn >div#articleWrapper { + width: 80%; + margin-left: auto; + margin-right: auto; + display: flex; + flex-direction: row-reverse; + flex-wrap: nowrap; + justify-content: space-between; +} +.display >div#articleWrapper { + width: 80%; + margin-left: auto; + margin-right: auto; + display: flex; + flex-direction: row-reverse; + flex-wrap: nowrap; + justify-content: space-between; +} .individual.loggedIn >div#articleWrapper >div#searchRightpanel { width: 27%; margin-left: 3%; @@ -2400,6 +2818,18 @@ ul.dropdown ul.sub_menu li a:hover { width: 30%; margin-left: 3%; } +.entity >div#articleWrapper >div#searchRightpanel { + width: 30%; + margin-left: 3%; +} +.entity.loggedIn >div#articleWrapper >div#searchRightpanel { + width: 27%; + margin-left: 3%; +} +.display > div#articleWrapper > div#searchRightpanel { + width: 30%; + margin-left: 3%; +} .individual.loggedIn >div#articleWrapper >div#wrapper-content { width: 70%; } @@ -2454,6 +2884,645 @@ button.collapsible.active { border-bottom: 1px solid #dde4e3 !important; background-image: none; } +.affiliations >span { + font-family: "IPH Astra Serif"; + font-size: 1.1rem; +} +.parentRubric >li >a { + font-family: "IPH Astra Serif"; + font-size: 1.2rem; + color: #8B4513; +} +.parentRubric >li { + margin-bottom: 8px; +} +.childRubric a { + font-family: "IPH Astra Serif"; + font-size: 1.2rem; +} +.childRubric { + list-style:none; + border:none; + padding: 5px; + width: 100%; + text-align:left; +} +.childRubric > a:hover { + color: #8B4513; +} +#individual-intro.person { + margin-top: 0px; +} +#articleHeaderWrapper { + display: flex; + flex-direction: column; + flex-wrap: nowrap; + justify-content: space-between; + width: 100%; +} +.keywords { + font-family: "IPH Astra Serif"; + font-size: 1.2rem; +} +.biblio >h2.label { + background-image: url(../images/book_icon.png); + background-repeat: no-repeat; + background-position: left center; + font-family: "IPH Astra Serif"; + font-size: 1.4rem; + padding-left: 40px; +} +.biblio >li { + font-family: "IPH Astra Serif"; + font-size: 1.2rem; + font-style: italic; + margin-bottom: 1.3em; + display: list-item; + list-style-image: url(../images/bullet_icon.png); + margin-left: 40px; +} +#individual-intro.person #individual-info { + width:80%; + margin-bottom: 0px; +} +#share-contact { + width: 16%; +} +li.nonSelectedGroupTab { + background-color: #efe9d9; +} +button#scrollToTopBtn { + all: unset; + background-image: url(../images/to_up.png); + background-repeat: no-repeat; + background-position: top center; + cursor: pointer; + font-size: 0.8rem; + text-transform: uppercase; + font-family: "Roboto"; + color: #ffffff; + height: 62px; + margin-top: 45px; +} +button#scrollToTopBtn:hover { + background-image: url(../images/to_up_hover.png); + background-repeat: no-repeat; + background-position: top center; +} +span.iconControlsNotEditable { + top: 0px; + position: relative; + padding-top: 5px; +} +span.iconControlsEditable { + position: relative; + top: 0px; + padding-top: 5px; +} +.expandSwitch { + width: auto; + text-align: center; + font-family: "Roboto"; + font-size: 1rem; + text-align: center; + /*background-color: #000000;*/ + /*background-image: url(../images/expand-label-image.svg); + background-repeat: no-repeat; + background-position: right bottom;*/ + /*margin-top: -1px; + border: 1px solid #8B4513; + border-bottom-left-radius: 2em;*/ + /*clip-path:polygon(10% 0%, 100% 0%, 100% 100%, 0% 100%);*/ +} + +#articleTitleWrapper { + width: 100%; + /*display: flex;*/ + border-bottom: 1px solid #8B4513; + /*flex-direction: row; + flex-wrap: wrap; + justify-content: flex-start;*/ + padding-bottom: 6px; +} +.articleToolsContainer { + display: flex; + flex-direction: row; + flex-wrap: nowrap; + justify-content: space-between; + border-bottom: 1px solid #8B4513; + background-color: #F6F6F6; + width: 100%; +} +#articleIconsWrapper { + margin-top: 25px; +} +#print { + all: unset; + cursor: pointer; + padding-left: 8px; + padding-top: 5px; + padding-right: 10px; +} +.articleButtons { + /*width: 10%;*/ + display: flex; + justify-content: flex-end; +} +#save { + all: unset; +} +#exportPdf { + all: unset; +} + +#tocPlaceHolder { + margin-top: 10px; + border: 1px solid #8B4513; +} +#tocName { + text-align: center; + font-family: "Roboto"; + font-size: 1.2rem; + border-bottom: 1px solid #8B4513; + padding-top: 7px; + padding-bottom: 7px; +} +#wrapperTocButtons { + display: flex; + flex-direction: row; + flex-wrap: nowrap; + justify-content: space-between; + font-size: 1rem; + font-family: "Roboto"; + padding-top: 10px; + padding-bottom: 10px; + border-bottom: 1px dashed #8B4513; + color: #000000; + background-color: #ffffff!important; +} +#tocExpandAll:hover { + cursor: pointer; + color: #8B4513; +} +#tocCollapseAll:hover { + cursor: pointer; + color: #8B4513; +} +#tocExpandImageAll { + float: left; + padding-left: 10px; + padding-right: 10px; + padding-top: 2px; +} +#tocCollapseImageAll { + padding-left: 10px; + padding-right: 10px; + padding-top: 2px; + float: right; +} +.tocElementSwitchImage { + padding-right: 10px; + cursor: pointer; +} +.tocElement >div.tocElement { + padding-left: 20px; + background-color: #ffffff; +} +.tocElement >div.tocElement >div.tocElementName { + padding-left: 14px; + background-image: none; + margin-left: 0px; +} +#tocPlaceHolder >div { + background-color: #F6F6F6; +} +#tocPlaceHolder a { + font-family: "Roboto"; + font-size: 1rem; +} +.tocElementName { + padding-left: 5px; + margin-left: 8px; + padding-top: 5px; + padding-bottom: 5px; +} +.display-title-editable { + font-size: 1.15em!important; + padding-top: 7px; +} +.collapsibleLink { + font-family: "IPH Astra Serif"; + font-size: 1.3rem; + cursor: pointer; +} +.collapsibleLink:hover { + color: #8B4513; +} +.label.collapsible { + padding-top: 10px; + padding-right: 10px; + padding-bottom: 10px; + border-bottom: 1px dashed #9C9C9C; + background-color: #FDF5E6; +} +.collapsible.collapsed { + padding: 4px 4px 4px 10px; + background-color: #fdfaf5; +} +.collapsible.collapsed >div.collapsibleLink { + background-image: url(../images/arrow-down-big.svg); + background-repeat: no-repeat; + background-position: left center; + cursor: pointer; + padding-left: 30px; +} +.collapsible.collapsed >div.collapsibleLink >b { + font-weight: normal; +} +.collapsible.expanded { + padding: 4px 4px 4px 10px; + background-color: #fdfaf5; +} +.collapsible.expanded >div.collapsibleLink { + background-image: url(../images/arrow-top-big.svg); + background-repeat: no-repeat; + background-position: left center; + cursor: pointer; + padding-left: 30px; + +} +.collapsible.expanded >div.collapsibleLink >b { + font-weight: normal; +} +.searchTOC { + display: none; +} +span#searchHelp { + display: none; +} +.searchpages >span { + font-size: 1.2rem; + font-family: "IPH Astra Serif"; + background-color: #FDF5E6; + padding: 0 0.4em; + border-radius: 3px; + margin-left: 0px; + margin-right: 0px; +} +.searchpages a { + margin-left: 0.3em; + margin-right: 0.3em; +} +p.snippet { + font-size: 1.1rem; + margin-bottom: 0.9em; +} +p.snippet >strong { + color: #8B4513; +} +.searchpages { + border-top: 1px solid #dde4e3; + padding-top: 20px; +} +.expandedContent { + padding-left: 10px; + padding-top: 10px; + margin-bottom: 10px; + padding-bottom: 5px; + border-top: 1px solid #dde4e3; +} +.expandedContent a { + font-family: "IPH Astra Serif"; + font-size: 1.2rem; +} +.childArticle { + list-style:none; + border:none; + padding: 5px; + width: 100%; + text-align:left; +} +.childArticle a { + font-family: "IPH Astra Serif"; + font-size: 1.2rem; +} +.childExcerpt { + list-style:none; + border:none; + padding: 5px; + width: 100%; + text-align:left; +} +.childExcerpt a { + font-family: "IPH Astra Serif"; + font-size: 1.2rem; +} +input#expandCB { + display: none; +} +label.switch { + padding-top: 6px; + padding-left: 9px; + padding-right: 9px; +} +.collapseTextControl:hover { + color: #8B4513; +} +.expandTextControl:hover { + color: #8B4513; +} +label.switch >.expandTextControl >img { + padding-left: 6px; +} +label.switch >.collapseTextControl >img { + padding-left: 6px; +} +.firstPub { + padding-bottom: 15px; + padding-top: 8px; +} +.firstPub .label { + font-family: "IPH Astra Serif"; + font-size: 1.2rem; + margin-top: 0px; + margin-bottom: .2em; +} +.firstPub li { + font-family: "IPH Astra Serif"; + font-size: 1.2rem; +} +.affilation { + margin-bottom: 12px; +} +.expandedAuthors >.affilation { + font-family: "IPH Astra Serif"; + line-height: 1.6em; +} +.expandedAuthors >.affilation >b { + font-family: "IPH Astra Serif"; + font-size: 1.2rem; + padding-top: 6px; + padding-bottom: 5px; + padding-right: 5px; + border-bottom: 1px dashed #dde4e3; + border-top: 1px solid #dde4e3; + display: block; + font-weight: bold; + margin-bottom: 4px; +} +.authorOrgName { + font-family: "IPH Astra Serif"; + font-size: 1.1rem; + color: #4F4F4F; +} +.authorOrgAdress { + font-family: "IPH Astra Serif"; + font-size: 1.1rem; + color: #4F4F4F; +} +.wrapperExpandedKeywords { + display: flex; + flex-direction: row; + flex-wrap: wrap; + justify-content: flex-start; + list-style: none; + border-top: 1px solid #dde4e3; + padding-top: 10px; +} +.wrapperExpandedKeywords >li { + border-right: 1px solid #8B4513; + font-size: 1.2rem; + font-family: "IPH Astra Serif"; + padding-right: 8px; + padding-left: 8px; + margin-bottom: 5px; + margin-top: 5px; +} +.wrapperExpandedKeywords > li:last-child { + border-right: none; +} +.rubricsList { + border-top: 1px solid #dde4e3; + padding-left: 10px; + padding-top: 10px; + line-height: 1.7em; + margin-bottom: 10px; +} +.articleList { + border-top: 1px solid #dde4e3; + padding-left: 10px; + padding-top: 10px; + line-height: 1.7em; + margin-bottom: 10px; +} +.nonePubAuthors { + padding-left: 40px; + padding-bottom: 4px; + padding-top: 4px; +} +#virtualArticleCheck { + appearance: none; + -webkit-appearance: none; + -moz-appearance: none; +} +#virtualArticleCheck[type="checkbox"] { + border: 1px solid #8B4513; + background-color: #ffffff; + width: 20px; + height: 20px; + margin-left: 15px; + outline: none; +} +#virtualArticleCheck[type="checkbox"]:hover { + background-color: #F1F1F1; + outline: none; +} +#virtualArticleCheck[type="checkbox"]:checked { + background-color: #EAD6A2; + background-image: url(../images/check-icon.svg); + background-repeat: no-repeat; + background-position: center center; + outline: none; +} +.toolsWrapper { + display: flex; + flex-direction: row; + flex-wrap: nowrap; + justify-content: flex-end; +} +#metadataExpandCB { + display: none; +} +.metaDataName { + text-transform: none; + border-bottom:1px solid #dde4e3; +} +.metaDataName.collapsible.collapsed > div.collapsibleLink { + font-size: 1.3rem; + font-family: "IPH Astra Serif"; +} +.metaDataName.collapsible.expanded > div.collapsibleLink { + font-size: 1.3rem; + font-family: "IPH Astra Serif"; +} +.autoMetadataExpand >div.collapsible.collapsed > div.collapsibleLink { + font-size: 1.2rem; + font-family: "IPH Astra Serif"; +} +.autoMetadataExpand >div.collapsible.expanded > div.collapsibleLink { + font-size: 1.2rem; + font-family: "IPH Astra Serif"; +} +.metaDataName.collapsible.collapsed { + padding: 10px; + background-color: #FDF5E6; +} +.metaDataName.collapsible.expanded { + padding: 10px; + background-color: #FDF5E6; +} +.metadataSwitch >.expandSwitch >label.switch >.expandTextControl >img { + padding-left: 0px; + padding-right: 8px; + padding-top: 9px; + float: left; +} +.metadataSwitch >.expandSwitch >label.switch >.collapseTextControl >img { + padding-left: 0px; + padding-right: 6px; + padding-top: 9px; + float: left; +} +#rubricFollow { + display: inline; +} +#rubricFollow a { + font-size: 0.9rem; + padding-left: 10px; + vertical-align: middle; + background-image: url(../images/arrow-right.svg); + background-position: left center; + background-repeat: no-repeat; + color: #8B4513; +} +.tocElementLeafImage { + padding-left: 4px; + padding-right: 12px; +} + +/* Modal windows */ +#userSettingsModal { + display: none; /* Hidden by default */ + position: fixed; /* Stay in place */ + z-index: 1; /* Sit on top */ + padding-top: 100px; /* Location of the box */ + left: 0; + top: 0; + width: 100%; /* Full width */ + height: 100%; /* Full height */ + overflow: auto; /* Enable scroll if needed */ + background-color: rgb(0,0,0); /* Fallback color */ + background-color: rgba(0,0,0,0.4); /* Black w/ opacity */ +} + +/* Modal Content */ +.modal-content { + background-color: #fefefe; + margin: auto; + padding: 30px 30px 15px 30px; + border: 1px solid #888; + width: 60%; +} +.modal-content >label { + display: flex; + flex-direction: row; + font-size: 1.2rem; + font-family: "Roboto"; + align-items: baseline; + margin-bottom: 15px; +} +#expandSettingsCB { + -moz-appearance: none; +} +#expandSettingsCB[type="checkbox"] { + border: 1px solid #8B4513; + width: 14px; + height: 14px; + margin-left: 8px; +} +#expandSettingsCB[type="checkbox"]:checked { + background-color: #EAD6A2; + background-image: url(../images/check-icon.svg); + background-repeat: no-repeat; + background-position: center center; + outline: none; + background-size: 12px 12px; +} +#metadataExpandSettingsCB { + -moz-appearance: none; +} +#metadataExpandSettingsCB[type="checkbox"] { + border: 1px solid #8B4513; + width: 14px; + height: 14px; + margin-left: 8px; +} +#metadataExpandSettingsCB[type="checkbox"]:checked { + background-color: #EAD6A2; + background-image: url(../images/check-icon.svg); + background-repeat: no-repeat; + background-position: center center; + outline: none; + background-size: 12px 12px; +} +#titleSettings { + font-size: 1.4rem; + font-family: "Roboto"; + padding-bottom: 8px; + width: 80%; +} +#userViewSettings { + border: none; + cursor: pointer; + background: none; + padding-top: 3px; + padding-right: 0px; + padding-left: 4px; +} +.modalWrapper { + display: flex; + flex-direction: row; + flex-wrap: nowrap; + width: 100%; + border-bottom: 1px solid #8B4513; + margin-bottom: 15px; + justify-content: space-between; +} +#closeModalWindow { + color: #8B4513; + width: 20%; + text-align: right; + font-size: 3rem; + font-family: "IPH Astra Serif"; +} +#closeModalWindow:hover, +#closeModalWindow:focus { + color: black; + text-decoration: none; + cursor: pointer; +} + +.removeDocFromSearch { + border-inline-width: thin; + border-top-width: thin; + border-bottom-width: thin; + border-color: #8B4513; + border-inline-style: solid; + border-top-style: solid; + border-bottom-style: solid; + margin-left: 0.4em; + padding: 0.0em 0.2em 0.1em 0.2em; +} /* -------------------------------------------------> */ /* FONTS --------------------------------> */ @@ -2543,7 +3612,7 @@ button.collapsible.active { } @media screen and (max-width: 1500px) { - #branding { + #topArea { width: 90%; } ul#main-nav { @@ -2561,10 +3630,28 @@ button.collapsible.active { #footerWrapper { width: 90%; } + .individual >div#articleWrapper { + width: 90%; + } + .individual.loggedIn >div#articleWrapper { + width: 90%; + } + .entity >div#articleWrapper { + width: 90%; + } + .entity.loggedIn >div#articleWrapper { + width: 90%; + } + .display.loggedIn >div#articleWrapper { + width: 90%; + } + .display >div#articleWrapper { + width: 90%; + } } @media screen and (max-width: 1300px) { - #branding { + #topArea { width: 100%; } ul#main-nav { @@ -2591,6 +3678,24 @@ button.collapsible.active { ul#browse-classes li { font-size: 1.1rem; } + .individual >div#articleWrapper { + width: 95%; + } + .entity >div#articleWrapper { + width: 95%; + } + .entity.loggedIn >div#articleWrapper { + width: 95%; + } + .individual.loggedIn >div#articleWrapper { + width: 95%; + } + .display.loggedIn >div#articleWrapper { + width: 95%; + } + .display >div#articleWrapper { + width: 95%; + } } @media screen and (max-width: 1100px) { @@ -2618,6 +3723,9 @@ button.collapsible.active { footer p.copyright small { font-size: 0.8rem; } + #main-nav li a { + font-size: 1rem; + } } @media screen and (max-width: 900px) { @@ -2631,6 +3739,7 @@ button.collapsible.active { #main-nav li a { padding-left: 15px; padding-right: 15px; + font-size: 0.8rem; } #wrapper-content { width: 95%; @@ -2787,6 +3896,7 @@ button.collapsible.active { #main-nav li a { padding-left: 10px; padding-right: 10px; + font-size: 0.7rem; } #SearchTitle { font-size: 1.1rem; @@ -2803,4 +3913,4 @@ button.collapsible.active { font-size: 0.8rem; line-height: 1.2em; } -} \ No newline at end of file +} diff --git a/webapp/src/main/webapp/themes/iph/css/query-builder-theme.css b/webapp/src/main/webapp/themes/iph/css/query-builder-theme.css index 1169d954..87398f3a 100644 --- a/webapp/src/main/webapp/themes/iph/css/query-builder-theme.css +++ b/webapp/src/main/webapp/themes/iph/css/query-builder-theme.css @@ -87,7 +87,6 @@ button.btn.btn-xs.btn-danger { /*box-shadow: 0px 0px 0px #000000;*/ border-left: 1px solid #ead6a2 !important; font-family: Roboto; - } .query-builder .btn-success.active, .query-builder .btn-success.focus, diff --git a/webapp/src/main/webapp/themes/iph/i18n/all.properties b/webapp/src/main/webapp/themes/iph/i18n/all.properties index e66f906a..dbeff3f9 100644 --- a/webapp/src/main/webapp/themes/iph/i18n/all.properties +++ b/webapp/src/main/webapp/themes/iph/i18n/all.properties @@ -1,32 +1,32 @@ -menu_contactus = Contact Us -menu_welcomestart = Welcome -menu_copyright = copyright -menu_support = Support -menu_logout = Log out +menu_contactus = Контакты +menu_welcomestart = Добро пожаловать +menu_copyright = права +menu_support = Поддержка +menu_logout = Выйти menu_loginfull = Log in to manage this site -menu_login = Log in -menu_version = Version -menu_about = About -menu_termuse = Terms of Use -menu_powered = Powered by +menu_login = Войти +menu_version = Версия +menu_about = О нас +menu_termuse = Правила использования +menu_powered = Сделано с помощью -intro_title = Welcome to VIVO +intro_title = Добро пожаловать в VIVO intro_para1 = VIVO is a research-focused discovery tool that enables collaboration among scholars of all disciplines. intro_para2 = Browse or search information on people, departments, courses, grants, and publications. -intro_searchvivo = Search VIVO -intro_filtersearch = Filter search +intro_searchvivo = Поиск VIVO +intro_filtersearch = Ограничить поиск -identity_title = VIVO | connect share discover +identity_title = VIVO | соединяй делись познавай identity_index = Index -identity_edit = Edit Page -identity_admin = Site Admin -identity_myprofile = My profile -identity_myaccount = My account -identity_user = user +identity_edit = Редактировать страницу +identity_admin = Админка +identity_myprofile = Мой профиль +identity_myaccount = Моя учётная запись +identity_user = пользователь -collection_capitalized = Collection -place_of_grant = Place of grant -email_address = Email Address +collection_capitalized = Коллекция +place_of_grant = Место получения гранта +email_address = email адрес # # menupage templates ( /templates/freemarker/body/menupage ) @@ -41,69 +41,126 @@ grants_two = This technique could be used to define pages without menu items, th grants_text_three = This would create a page that would use about.ftl as the body. The page would be \ accessed via /about and would override all servlet mappings in web.xml. -address_street_one = address street one -address_street_two = address street two -address_street_three = address street three -address_label = address label +address_street_one = первая строка адреса +address_street_two = вторая строка адреса +address_street_three = третья строка адреса +address_label = подпись адреса -loading_website_image = Loading website image +loading_website_image = Загрузка изображения сайта -researchers_in = researchers in -view = view -grant_type = grant Type +researchers_in = исследователь в +view = вид +grant_type = тип гранта grant_entry_for = grant entry for -regions = regions -grant_date = grant Date -map_states_string = states. -map_state_string = state. +regions = регионы +grant_date = дата получения гранта +map_states_string = штатов. +map_state_string = штат. unable_to_handle_grant_editing = This form is unable to handle the editing of this grant because it is associated with multiple grant individuals. unable_to_handle_position_editing = This form is unable to handle the editing of this position because it is associated with multiple Position individuals. currently_no_papers_for = Currently there are no {0} papers for -change_selection = change selection +change_selection = Изменить выделенное view_all_departments = view all academic departments -first_name = First name -last_name = Last name -first_grant = First Grant -last_grant = Last Grant +first_name = Имя +last_name = Фамилия +first_grant = Первый грант +last_grant = Последний грант currently_no_researchers = There are currently no researchers with a defined geographic focus. -reviewer_role = Reviewer Role -vivo_profile = VIVO profile -loading_data = loading data +reviewer_role = Роль рецензента +vivo_profile = профиль VIVO +loading_data = данные загружаются select_award = Selected Award -grants_in_vivo = grants in VIVO -service_provider_role = Service Provider Role -view_all_faculty = view all faculty -no_grants_for = Currently there are no grants for +grants_in_vivo = гранты в VIVO +service_provider_role = Роль предоставителя услуг +view_all_faculty = просмотреть весь факультет +no_grants_for = В данный момент грантов нет грантов для statewide_locations = state-wide locations. faculty_who_are_members_of_org = Here are the faculty in the {0} department who are members of this organization. -indiv_foafperson_for = for -indiv_foafperson_return = return to -no_departments_found = No academic departments found. -leadership_role = Leadership Role -countries = countries -first_publication = First publication -last_publication = Last publication -research_area = individuals in the department with this research area -password = password -limit_search = limit search -placeholder_image = placeholder image -view_all_members_of_org = View all the members of this organization. -display_more = more -create_entry = Create Entry -attendee_capitalized = Attendee -no_faculty_found = No faculty members found. -create_capitalized = Create -to = to -enter_new_role_value = Please enter a new value in the Role field. -countries_and_regions = countries and regions. -province_or_region = Province or Region -full_name = Full name -researchers = researchers -years_participation_in = Years of Participation in -return_to_grant = Return to grant -profile_capitalized = Profile -organizer_role = Organizer Role -faculty_memberships = Faculty Memberships -edit_mailing_address = Edit Mailing Address -add_capitalized = Add +indiv_foafperson_for = к +indiv_foafperson_return = вернуться к +no_departments_found = Университетских департаментов не найдено. +leadership_role = Управляющая роль +countries = страны +first_publication = Первая публикация +last_publication = Последняя публикация +research_area = сотрудников департамента спецализирующихся на данной области исследования +password = пароль +limit_search = ограничить поиск +placeholder_image = Изображение-заполнитель +view_all_members_of_org = Просмотреть всех участников данной организации. +display_more = больше +create_entry = Создать запись +attendee_capitalized = Посетитель +no_faculty_found = Членов факультета найдено не было. +create_capitalized = Создать +to = к +enter_new_role_value = Введеите новое значение в поле Роль. +countries_and_regions = страны и регионы. +province_or_region = Провинция или регион +full_name = Полное имя +researchers = исследователи +years_participation_in = Годы участия в +return_to_grant = Вернуться к гранту +profile_capitalized = Профиль +organizer_role = Роль организатора +faculty_memberships = Членство в факультете +edit_mailing_address = Изменить email адрес +add_capitalized = Добавить + +#Design labels +scroll_to_top_label = Наверх +toc_label = Содержание +collapse_something = Свернуть +expand_something = Раскрыть + +user_settings_label = Выберите настройки: +user_settings_always_open_full_doc = Всегда раскрывать документ при открытии +user_settings_always_open_metadata = Всегда раскрывать метаданные при открытии +expand_doc_switch = Раскрыть документ +collapse_doc_switch = Свернуть документ +expand_metadata_switch = Раскрыть метаданные +collapse_metadata_switch = Свернуть метаданные + + +literature_excerpt_button_text = Литература +literature_all_button_text = Сводная литература +sources_excerpt_button_text = Источники +sources_all_button_text = Сводные источники +extended_search_label = Расширенный поиск +metadata_label = Метаданные +metadata_query = Поисковый запрос +metadata_relates_to_rubrics = Относится к рубрикам: +metadata_relates_to_issue = Входит в выпуск +metadata_year = Год +metadata_to_rubric = перейти в рубрику +metadata_firstPublication = Первая публикация +metadata_authors = Авторы: +metadata_keywords = Ключевые слова: +metadata_html_text = Текст: +metadata_org_address = Адрес организации: +metadata_in_articles = В составе статей: + +#Philosophical classifier +rubricator_parent_rubric = Родительская рубрика: +rubricator_rubric_order = Порядок рубрики +rubricator_subrubrics = Подрубрики +rubricator_articles_in_subrubrics = Статьи в подрубриках +rubricator_excerpts_in_subrubrics = Отрывки в подрубриках +rubricator_articles_in_rubric = Статьи в данной рубрике +rubricator_excerpts_in_rubric = Отрывки в данной рубрике + +#Extended search form +extended_search_example = Пример заполнения +extended_search_results_on_page = Результатов на страницу +extended_search_clean = Очистить +extended_search_execute_search = Поиск +open_standard_search_form = Стандартная форма поиска + +#Virtual articles creation +show_virtual_article = Показать виртуальную статью +create_compilation_button = Сохранить +create_compilation_no_excerpts = Отрывков не найдено +create_compilation_enter_name_notification = Введите название подобрки +create_compilation_no_name_entered_error = Для создания подоборки необходимо ввести её название + diff --git a/webapp/src/main/webapp/themes/iph/i18n/all_en_US.properties b/webapp/src/main/webapp/themes/iph/i18n/all_en_US.properties new file mode 100644 index 00000000..406a7b63 --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/i18n/all_en_US.properties @@ -0,0 +1,115 @@ +menu_contactus = Contact Us +menu_welcomestart = Welcome +menu_copyright = copyright +menu_support = Support +menu_logout = Log out +menu_loginfull = Log in to manage this site +menu_login = Log in +menu_version = Version +menu_about = About +menu_termuse = Terms of Use +menu_powered = Powered by + +intro_title = Welcome to VIVO +intro_para1 = VIVO is a research-focused discovery tool that enables collaboration among scholars of all disciplines. +intro_para2 = Browse or search information on people, departments, courses, grants, and publications. +intro_searchvivo = Search VIVO +intro_filtersearch = Filter search + +identity_title = VIVO | connect share discover +identity_index = Index +identity_edit = Edit Page +identity_admin = Site Admin +identity_myprofile = My profile +identity_myaccount = My account +identity_user = user + +collection_capitalized = Collection +place_of_grant = Place of grant +email_address = Email Address + +# +# menupage templates ( /templates/freemarker/body/menupage ) +# +grants_text_one = This body is from the the template file \ + vivo/productMods/templates/freemarker/body/menupage/grants.ftl. \ + In the display model, the grants page has a display:requiresBodyTemplate \ + property that defines that the grants page overrides the default template. \ + The default template for these pages is at /vitro/webapp/web/templates/freemarker/body/menupage/menupage.ftl +grants_two = This technique could be used to define pages without menu items, that get \ + their content from a freemarker template. An example would be the about page. +grants_text_three = This would create a page that would use about.ftl as the body. The page would be \ + accessed via /about and would override all servlet mappings in web.xml. + +address_street_one = address street one +address_street_two = address street two +address_street_three = address street three +address_label = address label + +loading_website_image = Loading website image + +researchers_in = researchers in +view = view +grant_type = grant Type +grant_entry_for = grant entry for +regions = regions +grant_date = grant Date +map_states_string = states. +map_state_string = state. +unable_to_handle_grant_editing = This form is unable to handle the editing of this grant because it is associated with multiple grant individuals. +unable_to_handle_position_editing = This form is unable to handle the editing of this position because it is associated with multiple Position individuals. +currently_no_papers_for = Currently there are no {0} papers for +change_selection = change selection +view_all_departments = view all academic departments +first_name = First name +last_name = Last name +first_grant = First Grant +last_grant = Last Grant +currently_no_researchers = There are currently no researchers with a defined geographic focus. +reviewer_role = Reviewer Role +vivo_profile = VIVO profile +loading_data = loading data +select_award = Selected Award +grants_in_vivo = grants in VIVO +service_provider_role = Service Provider Role +view_all_faculty = view all faculty +no_grants_for = Currently there are no grants for +statewide_locations = state-wide locations. +faculty_who_are_members_of_org = Here are the faculty in the {0} department who are members of this organization. +indiv_foafperson_for = for +indiv_foafperson_return = return to +no_departments_found = No academic departments found. +leadership_role = Leadership Role +countries = countries +first_publication = First publication +last_publication = Last publication +research_area = individuals in the department with this research area +password = password +limit_search = limit search +placeholder_image = placeholder image +view_all_members_of_org = View all the members of this organization. +display_more = more +create_entry = Create Entry +attendee_capitalized = Attendee +no_faculty_found = No faculty members found. +create_capitalized = Create +to = to +enter_new_role_value = Please enter a new value in the Role field. +countries_and_regions = countries and regions. +province_or_region = Province or Region +full_name = Full name +researchers = researchers +years_participation_in = Years of Participation in +return_to_grant = Return to grant +profile_capitalized = Profile +organizer_role = Organizer Role +faculty_memberships = Faculty Memberships +edit_mailing_address = Edit Mailing Address +add_capitalized = Add + +literature_excerpt_button_text = Bibliography +literature_all_button_text = All bibliorgraphy +sources_excerpt_button_text = Sources +sources_all_button_text = All sources +remove_doc_from_search_results = Remove from search results + diff --git a/webapp/src/main/webapp/themes/iph/i18n/all_ru_RU.properties b/webapp/src/main/webapp/themes/iph/i18n/all_ru_RU.properties index 67434d96..ae45b193 100644 --- a/webapp/src/main/webapp/themes/iph/i18n/all_ru_RU.properties +++ b/webapp/src/main/webapp/themes/iph/i18n/all_ru_RU.properties @@ -106,4 +106,4 @@ organizer_role = Organizer Role faculty_memberships = Faculty Memberships edit_mailing_address = Edit Mailing Address add_capitalized = Add - +remove_doc_from_search_results=Удалить из результатов поиска diff --git a/webapp/src/main/webapp/themes/iph/images/all-toc-collapse.svg b/webapp/src/main/webapp/themes/iph/images/all-toc-collapse.svg new file mode 100644 index 00000000..f2f6f449 --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/all-toc-collapse.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/webapp/src/main/webapp/themes/iph/images/all-toc-expand.svg b/webapp/src/main/webapp/themes/iph/images/all-toc-expand.svg new file mode 100644 index 00000000..fd8c4338 --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/all-toc-expand.svg @@ -0,0 +1,6 @@ + + + + + + diff --git a/webapp/src/main/webapp/themes/iph/images/arrow-down-big.svg b/webapp/src/main/webapp/themes/iph/images/arrow-down-big.svg new file mode 100644 index 00000000..e470467a --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/arrow-down-big.svg @@ -0,0 +1,3 @@ + + + diff --git a/webapp/src/main/webapp/themes/iph/images/arrow-down-small.png b/webapp/src/main/webapp/themes/iph/images/arrow-down-small.png new file mode 100644 index 00000000..6121c8da Binary files /dev/null and b/webapp/src/main/webapp/themes/iph/images/arrow-down-small.png differ diff --git a/webapp/src/main/webapp/themes/iph/images/arrow-down-small.svg b/webapp/src/main/webapp/themes/iph/images/arrow-down-small.svg new file mode 100644 index 00000000..e470467a --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/arrow-down-small.svg @@ -0,0 +1,3 @@ + + + diff --git a/webapp/src/main/webapp/themes/iph/images/arrow-down.svg b/webapp/src/main/webapp/themes/iph/images/arrow-down.svg new file mode 100644 index 00000000..44de0c5d --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/arrow-down.svg @@ -0,0 +1,3 @@ + + + diff --git a/webapp/src/main/webapp/themes/iph/images/arrow-green.gif b/webapp/src/main/webapp/themes/iph/images/arrow-green.gif index b3a75c25..d4d79c31 100644 Binary files a/webapp/src/main/webapp/themes/iph/images/arrow-green.gif and b/webapp/src/main/webapp/themes/iph/images/arrow-green.gif differ diff --git a/webapp/src/main/webapp/themes/iph/images/arrow-right.svg b/webapp/src/main/webapp/themes/iph/images/arrow-right.svg new file mode 100644 index 00000000..fca54213 --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/arrow-right.svg @@ -0,0 +1,61 @@ + + + + + + image/svg+xml + + + + + + + + + diff --git a/webapp/src/main/webapp/themes/iph/images/arrow-top-big.svg b/webapp/src/main/webapp/themes/iph/images/arrow-top-big.svg new file mode 100644 index 00000000..4a9456ed --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/arrow-top-big.svg @@ -0,0 +1,3 @@ + + + diff --git a/webapp/src/main/webapp/themes/iph/images/arrow-top-small.svg b/webapp/src/main/webapp/themes/iph/images/arrow-top-small.svg new file mode 100644 index 00000000..4a9456ed --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/arrow-top-small.svg @@ -0,0 +1,3 @@ + + + diff --git a/webapp/src/main/webapp/themes/iph/images/arrow-top.svg b/webapp/src/main/webapp/themes/iph/images/arrow-top.svg new file mode 100644 index 00000000..f43e7765 --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/arrow-top.svg @@ -0,0 +1,3 @@ + + + diff --git a/webapp/src/main/webapp/themes/iph/images/arrow.gif b/webapp/src/main/webapp/themes/iph/images/arrow.gif index 8d9199e7..01f51333 100644 Binary files a/webapp/src/main/webapp/themes/iph/images/arrow.gif and b/webapp/src/main/webapp/themes/iph/images/arrow.gif differ diff --git a/webapp/src/main/webapp/themes/iph/images/arrowSmall.gif b/webapp/src/main/webapp/themes/iph/images/arrowSmall.gif index 1e050cd4..b464f9bb 100644 Binary files a/webapp/src/main/webapp/themes/iph/images/arrowSmall.gif and b/webapp/src/main/webapp/themes/iph/images/arrowSmall.gif differ diff --git a/webapp/src/main/webapp/themes/iph/images/check-icon.svg b/webapp/src/main/webapp/themes/iph/images/check-icon.svg new file mode 100644 index 00000000..51c9036a --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/check-icon.svg @@ -0,0 +1,3 @@ + + + diff --git a/webapp/src/main/webapp/themes/iph/images/circle-item.svg b/webapp/src/main/webapp/themes/iph/images/circle-item.svg new file mode 100644 index 00000000..def917f5 --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/circle-item.svg @@ -0,0 +1,3 @@ + + + diff --git a/webapp/src/main/webapp/themes/iph/images/download-icon.svg b/webapp/src/main/webapp/themes/iph/images/download-icon.svg new file mode 100644 index 00000000..01a98a88 --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/download-icon.svg @@ -0,0 +1,79 @@ + + + + + + + + + + image/svg+xml + + + + + + + + + + + diff --git a/webapp/src/main/webapp/themes/iph/images/expand-label-image.svg b/webapp/src/main/webapp/themes/iph/images/expand-label-image.svg new file mode 100644 index 00000000..881a6676 --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/expand-label-image.svg @@ -0,0 +1,3 @@ + + + diff --git a/webapp/src/main/webapp/themes/iph/images/expand_button.png b/webapp/src/main/webapp/themes/iph/images/expand_button.png new file mode 100644 index 00000000..b5e1aac0 Binary files /dev/null and b/webapp/src/main/webapp/themes/iph/images/expand_button.png differ diff --git a/webapp/src/main/webapp/themes/iph/images/exportPdf.svg b/webapp/src/main/webapp/themes/iph/images/exportPdf.svg new file mode 100644 index 00000000..3e39df79 --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/exportPdf.svg @@ -0,0 +1,68 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + diff --git a/webapp/src/main/webapp/themes/iph/images/print-icon.png b/webapp/src/main/webapp/themes/iph/images/print-icon.png new file mode 100644 index 00000000..b3a54282 Binary files /dev/null and b/webapp/src/main/webapp/themes/iph/images/print-icon.png differ diff --git a/webapp/src/main/webapp/themes/iph/images/print.svg b/webapp/src/main/webapp/themes/iph/images/print.svg new file mode 100644 index 00000000..e7c22d3c --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/print.svg @@ -0,0 +1,108 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + diff --git a/webapp/src/main/webapp/themes/iph/images/save-icon.png b/webapp/src/main/webapp/themes/iph/images/save-icon.png new file mode 100644 index 00000000..6bc8f5bb Binary files /dev/null and b/webapp/src/main/webapp/themes/iph/images/save-icon.png differ diff --git a/webapp/src/main/webapp/themes/iph/images/save-pdf-icon.png b/webapp/src/main/webapp/themes/iph/images/save-pdf-icon.png new file mode 100644 index 00000000..acb7e624 Binary files /dev/null and b/webapp/src/main/webapp/themes/iph/images/save-pdf-icon.png differ diff --git a/webapp/src/main/webapp/themes/iph/images/save.svg b/webapp/src/main/webapp/themes/iph/images/save.svg new file mode 100644 index 00000000..df7f3aff --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/save.svg @@ -0,0 +1,99 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + diff --git a/webapp/src/main/webapp/themes/iph/images/settings.svg b/webapp/src/main/webapp/themes/iph/images/settings.svg new file mode 100644 index 00000000..e53e92e9 --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/images/settings.svg @@ -0,0 +1,111 @@ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + diff --git a/webapp/src/main/webapp/themes/iph/images/share-icon.png b/webapp/src/main/webapp/themes/iph/images/share-icon.png new file mode 100644 index 00000000..b5491e0d Binary files /dev/null and b/webapp/src/main/webapp/themes/iph/images/share-icon.png differ diff --git a/webapp/src/main/webapp/themes/iph/images/small-dot.png b/webapp/src/main/webapp/themes/iph/images/small-dot.png new file mode 100644 index 00000000..ae91e899 Binary files /dev/null and b/webapp/src/main/webapp/themes/iph/images/small-dot.png differ diff --git a/webapp/src/main/webapp/themes/iph/images/to_up.png b/webapp/src/main/webapp/themes/iph/images/to_up.png new file mode 100644 index 00000000..f5cad4d8 Binary files /dev/null and b/webapp/src/main/webapp/themes/iph/images/to_up.png differ diff --git a/webapp/src/main/webapp/themes/iph/images/to_up_hover.png b/webapp/src/main/webapp/themes/iph/images/to_up_hover.png new file mode 100644 index 00000000..4e263a0e Binary files /dev/null and b/webapp/src/main/webapp/themes/iph/images/to_up_hover.png differ diff --git a/webapp/src/main/webapp/themes/iph/images/uricon-icon.png b/webapp/src/main/webapp/themes/iph/images/uricon-icon.png new file mode 100644 index 00000000..0600d164 Binary files /dev/null and b/webapp/src/main/webapp/themes/iph/images/uricon-icon.png differ diff --git a/webapp/src/main/webapp/themes/iph/js/collapsible_elements.js b/webapp/src/main/webapp/themes/iph/js/collapsible_elements.js new file mode 100644 index 00000000..9cca3c92 --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/js/collapsible_elements.js @@ -0,0 +1,123 @@ +document.addEventListener('DOMContentLoaded', addCollapsibleOnClick(), false); +document.addEventListener('DOMContentLoaded', applyExpandSettings(), false); +document.addEventListener('DOMContentLoaded', hideUserSettingsModal(), false); + +function showUserSettingsModal() { + var modalElement = document.getElementById("userSettingsModal"); + if (modalElement != null) { + modalElement.style.display = 'block'; + } +} + +function hideUserSettingsModal() { + window.onclick = function(event) { + var modalElement = document.getElementById("userSettingsModal"); + var closeElement = document.getElementById("closeModalWindow"); + if (event.target == modalElement || event.target == closeElement) { + modalElement.style.display = 'none'; + } + } +} + +function addCollapsibleOnClick() { + var coll = document.getElementsByClassName("collapsible"); + var i; + for (i = 0; i < coll.length; i++) { + var collapsibleLink = coll[i].querySelector('.collapsibleLink'); + if (collapsibleLink === null) { + collapseNextElementOnClick(coll[i]); + } else { + expandableNextOuterElementOnClick(collapsibleLink); + } + + } +} + +function expandableNextOuterElementOnClick(element) { + element.addEventListener("click", function() { + this.parentElement.classList.toggle("expanded"); + this.parentElement.classList.toggle("collapsed"); + var content = this.parentElement.nextElementSibling; + if (content.style.display === "block") { + content.style.display = "none"; + } else { + content.style.display = "block"; + } + }); +} + +function collapseNextElementOnClick(element) { + element.addEventListener("click", function() { + this.classList.toggle("active"); + var content = this.nextElementSibling; + if (content.style.display === "block") { + content.style.display = "none"; + } else { + content.style.display = "block"; + } + }); +} + +function applyExpandSettings() { + applyDocumentExpandSettings('switchExpand', 'expandCB', 'expandSettingsCB', '.autoExpand'); + applyDocumentExpandSettings('metadataExpandSetting', 'metadataExpandCB', 'metadataExpandSettingCB', '.autoMetadataExpand'); +} + +function applyDocumentExpandSettings(settingName, buttonId, settingButtonId, targetElementsClass) { + if (localStorage.getItem(settingName) === true || localStorage.getItem(settingName) === 'true') { + var expandSwitchCB = document.getElementById(buttonId); + if (expandSwitchCB != null) { + expandSwitchCB.checked = true; + } + var expandSwitchSettingsCB = document.getElementById(settingButtonId); + if (expandSwitchSettingsCB != null) { + expandSwitchSettingsCB.checked = true; + } + $(targetElementsClass).show(); + showDocumentCollapseButton(buttonId); + } else { + $(targetElementsClass).hide(); + showDocumentExpandButton(buttonId); + } +} + +function switchExpand(inputID, elementsClass) { + var checkBox = document.getElementById(inputID); + if (checkBox.checked == true) { + $(elementsClass).show(); + showDocumentCollapseButton(inputID); + } else { + $(elementsClass).hide(); + showDocumentExpandButton(inputID); + } +} +function showDocumentCollapseButton(inputID) { + var inputElement = document.getElementById(inputID); + if (inputElement === null) { + return; + } + var collapseTextControl = inputElement.parentElement.querySelector('.collapseTextControl'); + collapseTextControl.style.display = "inline"; + var expandTextControl = inputElement.parentElement.querySelector('.expandTextControl'); + expandTextControl.style.display = "none"; +} + +function showDocumentExpandButton(inputID) { + var inputElement = document.getElementById(inputID); + if (inputElement === null) { + return; + } + var collapseTextControl = inputElement.parentElement.querySelector('.collapseTextControl'); + collapseTextControl.style.display = "none"; + var expandTextControl = inputElement.parentElement.querySelector('.expandTextControl'); + expandTextControl.style.display = "inline"; +} + +function switchExpandSettings(checkboxID, settingName) { + var checkBox = document.getElementById(checkboxID); + if (checkBox.checked == true) { + localStorage.setItem(settingName, true); + } else { + localStorage.setItem(settingName, false); + } +} diff --git a/webapp/src/main/webapp/themes/iph/js/toc.js b/webapp/src/main/webapp/themes/iph/js/toc.js new file mode 100644 index 00000000..212b1346 --- /dev/null +++ b/webapp/src/main/webapp/themes/iph/js/toc.js @@ -0,0 +1,178 @@ + document.addEventListener('DOMContentLoaded', createTOC(), false); + + function createTOC(){ + var complexDocElement = document.getElementById("complexDocument"); + var tocElement = document.getElementById("tocPlaceHolder"); + + if (complexDocElement === null || tocElement === null){ + console.log("no complex document or no placeholder"); + return; + } + addItemsToTOC(complexDocElement,tocElement); + + collapseAllTOCElements("tocPlaceHolder"); + //show created TOC + tocElement.style.display = "block"; + } + + function addItemsToTOC(docPart, tocElement){ + var docPartChilds = docPart.childNodes; + for (var i = 0; i < docPartChilds.length; i++){ + var docPartChild = docPartChilds[i]; + if ( docPartChild.nodeType === Node.ELEMENT_NODE && docPartChild.classList.contains("documentPart")){ + var tocElementChild = createTOCItem(docPartChild, tocElement); + addItemsToTOC(docPartChild,tocElementChild); + addElementControls(tocElementChild); + } + } + } + function addElementControls(tocElement){ + + var nameContainer = tocElement.querySelector('.tocElementName'); + if (nameContainer === null){ + console.log("no nameContainer found"); + return; + } + if (tocElement.id === null){ + console.log("no tocElement id found"); + return; + } + + var elementChild = tocElement.querySelector('.tocElement'); + if (elementChild === null){ + var leafImage = document.createElement("img"); + leafImage.className = "tocElementLeafImage"; + leafImage.src = urlsBase + "/themes/iph/images/circle-item.svg"; + nameContainer.prepend(leafImage); + } else { + var switchImage = document.createElement("img"); + switchImage.onclick = function() {switchTOCElement(tocElement.id);}; + switchImage.className = "tocElementSwitchImage"; + nameContainer.prepend(switchImage); + } + } + + function switchTOCElement(id){ + var tocElement = document.getElementById(id); + var elementChild = tocElement.querySelector('.tocElement'); + if (elementChild.style.display === "none"){ + expandTOCElementChilds(id); + setCollapseImageToElement(id); + } else { + collapseTOCElementDescendants(id); + setExpandImageToElement(id); + } + } + + function setCollapseImageToElement(id){ + var tocElement = document.getElementById(id); + var nameContainer = tocElement.querySelector('.tocElementName'); + if (nameContainer === null){ + console.log("no nameContainer found"); + return; + } + $.extend(this, urlsBase); + var imgElement = nameContainer.querySelector('.tocElementSwitchImage'); + if (imgElement != null){ + imgElement.src = urlsBase + "/themes/iph/images/arrow-top-small.svg"; + } + } + + function setExpandImageToElement(id){ + var tocElement = document.getElementById(id); + var nameContainer = tocElement.querySelector('.tocElementName'); + if (nameContainer === null){ + console.log("no nameContainer found"); + return; + } + $.extend(this, urlsBase); + var imgElement = nameContainer.querySelector('.tocElementSwitchImage'); + if (imgElement != null){ + imgElement.src = urlsBase + "/themes/iph/images/arrow-down-small.svg"; + } + + } + + function expandTOCElementChilds(id){ + var tocElement = document.getElementById(id); + var elementChilds = tocElement.querySelectorAll(':scope > .tocElement'); + for (let i = 0; i < elementChilds.length; i++) { + elementChilds[i].style.display = "block"; + setExpandImageToElement(elementChilds[i].id); + } + } + + function expandTOCElementDescendants(id){ + var tocElement = document.getElementById(id); + var elementChilds = tocElement.querySelectorAll('.tocElement'); + for (let i = 0; i < elementChilds.length; i++) { + elementChilds[i].style.display = "block"; + setExpandImageToElement(elementChilds[i].id); + } + } + + function collapseAllTOCElements(placeHolderId){ + var tocRoot = document.getElementById(placeHolderId); + var elementChilds = tocRoot.querySelectorAll('.tocElement'); + for (let i = 0; i < elementChilds.length; i++) { + collapseTOCElementDescendants(elementChilds[i].id); + setExpandImageToElement(elementChilds[i].id); + } + } + function expandAllTOCElements(placeHolderId){ + var tocRoot = document.getElementById(placeHolderId); + var elementChilds = tocRoot.querySelectorAll('.tocElement'); + for (let i = 0; i < elementChilds.length; i++) { + expandTOCElementDescendants(elementChilds[i].id); + setCollapseImageToElement(elementChilds[i].id); + } + } + + function collapseTOCElementDescendants(id){ + var tocElement = document.getElementById(id); + var elementChilds = tocElement.querySelectorAll('.tocElement'); + for (let i = 0; i < elementChilds.length; i++) { + elementChilds[i].style.display = "none"; + setCollapseImageToElement(elementChilds[i].id); + } + } + + function createTOCItem(docPart, tocElement){ + var newTOCElement = document.createElement("div"); + var newTOCElementName = document.createElement("div"); + var anchor = docPart.getAttribute('id'); + var tocElementID = "toc-" + anchor; + newTOCElement.id = tocElementID; + var docPartButton = docPart.previousElementSibling; + var itemName = docPartButton.textContent; + var link = document.createElement("a"); + link.setAttribute("href", "javascript:goToDocumentPart(\"" + anchor + "\");" ); + link.innerText = itemName; + newTOCElement.appendChild(newTOCElementName); + newTOCElementName.appendChild(link); + newTOCElement.className = "tocElement"; + newTOCElementName.className = "tocElementName"; + tocElement.appendChild(newTOCElement); + return newTOCElement; + } + function goToDocumentPart(targetId){ + if (targetId ===""){ + return; + } + var targetNode = document.getElementById(targetId); + if (targetNode === null){ + console.log("document has no target node to go to") + return; + } + showParents(targetNode); + document.getElementById(targetId).scrollIntoView(); + } + function showParents(targetNode){ + if (targetNode != null && "complexDocument" !== targetNode.id){ + if (targetNode.style.display === "none") { + targetNode.style.display = "block"; + } + showParents(targetNode.parentElement); + } + } + \ No newline at end of file diff --git a/webapp/src/main/webapp/templates/freemarker/compilation.ftl b/webapp/src/main/webapp/themes/iph/templates/compilation.ftl similarity index 62% rename from webapp/src/main/webapp/templates/freemarker/compilation.ftl rename to webapp/src/main/webapp/themes/iph/templates/compilation.ftl index b5078d91..73e9704b 100644 --- a/webapp/src/main/webapp/templates/freemarker/compilation.ftl +++ b/webapp/src/main/webapp/themes/iph/templates/compilation.ftl @@ -8,6 +8,8 @@ ${scripts.add('')} ${scripts.add('')} ${scripts.add('')} +${scripts.add('')} +${scripts.add('')} <#import "individual-qrCodeGenerator.ftl" as qr> <#import "lib-vivo-properties.ftl" as vp> <#include "text-lib.ftl"> @@ -32,6 +34,8 @@ ${scripts.add(' <#-- <@dumpAll /> --> <#assign selectedTemplate = "individual--foaf-person-2column.ftl" > @@ -277,24 +184,6 @@ for (i = 0; i < coll.length; i++) { - - <#if !editable> ')} ${scripts.add('')} ${scripts.add('')} +${scripts.add('')} +${scripts.add('')} <#import "individual-qrCodeGenerator.ftl" as qr> <#import "lib-vivo-properties.ftl" as vp> +<#include "text-lib.ftl"> + <#--Number of labels present--> <#if !labelCount??> <#assign labelCount = 0 > @@ -30,13 +34,18 @@ ${scripts.add(' - <#-- <@dumpAll /> --> - - <#assign selectedTemplate = "individual--foaf-person-2column.ftl" > +<#assign selectedTemplate = "individual--foaf-person-2column.ftl" > <#if profilePageTypesEnabled > <#assign profilePageType = profileType > @@ -276,24 +160,6 @@ for (i = 0; i < coll.length; i++) { - - <#if !editable> ')} +${scripts.add('')} +${scripts.add('')} +${scripts.add('')} +${scripts.add('')} + + <#-- Individual profile page template for foaf:Person individuals --> + <#-- <#include "individual-setup.ftl"> --> <#import "individual-qrCodeGenerator.ftl" as qr> <#import "lib-vivo-properties.ftl" as vp> +<#include "text-lib.ftl"> + <#--Number of labels present--> <#if !labelCount??> <#assign labelCount = 0 > @@ -27,6 +38,8 @@
    <#include "individual-adminPanel.ftl">
    +
    +
    <#if relatedSubject??>

    ${relatedSubject.relatingPredicateDomainPublic} ${i18n().for} ${relatedSubject.name}

    ← ${i18n().return_to(relatedSubject.name)}

    @@ -58,20 +71,31 @@ <@p.mostSpecificTypesPerson individual editable/> - style="top:5px"> - <#include "individual-iconControls.ftl"> - - <#if editable && profilePageTypesEnabled > - <#include "individual-profilePageTypes.ftl"> - +
    +
    +
    + <@expandMetadataSwitch /> +
    +
    +
    + > + <#include "individual-iconControls-iph.ftl"> + + <#if editable && profilePageTypesEnabled > + <#include "individual-profilePageTypes.ftl"> + + <@userSettingsModal /> + +
    +
    +
    <#include "individual-positions.ftl"> <#if !editable> -

    - + <#include "individual-overview.ftl"> @@ -90,64 +114,77 @@ <#assign skipThis = propertyGroups.pullProperty("http://xmlns.com/foaf/0.1/firstName")!> <#assign skipThis = propertyGroups.pullProperty("http://xmlns.com/foaf/0.1/lastName")!> -<#if !editable> -<#if authors??> - <#list authors as author> -
    - <#if author.authorFamily??>${author.authorFamily} <#if author.authorGivenName??>${author.authorGivenName} - <#if author.orgName??> -
    ${author.orgName} - - <#if author.orgAddress??> -
    - Адрес организации: <#if author.orgPostalCode??>${author.orgPostalCode}, ${author.orgAddress}  - + + - - -<#else> - <#assign pubAuthors = propertyGroups.pullProperty("https://litvinovg.pro/text_structures#hasAuthor")!> - <#if pubAuthors?has_content> -
    Авторы: <@p.addLink pubAuthors editable /> <@p.verboseDisplay pubAuthors />
    - <#if pubAuthors.statements?has_content > -
    - <@p.objectProperty pubAuthors editable /> -
    - - - <#if articles?has_content> -
    В составе статей:
    -
    - <#list articles as article> - <#if article?has_content > -
    - ${article.articleName} -
    - - + + <#assign rubrics = propertyGroups.pullProperty("https://iph.ras.ru/relationships#belongsTo")!> <#if rubrics?has_content> -
    Относится к: <@p.addLink rubrics editable /> <@p.verboseDisplay rubrics />
    + + + <#assign keywords = propertyGroups.pullProperty("https://litvinovg.pro/text_structures#keywords")!> <#if keywords?has_content > -
    Ключевые слова: <@p.addLink keywords editable /> <@p.verboseDisplay keywords />
    - <#if keywords.statements?has_content && keywords.type == "data"> -
    - <@p.dataPropertyList keywords editable /> -
    - + + +
    <#assign htmlExcerpt = propertyGroups.pullProperty("https://litvinovg.pro/text_structures#htmlExcerpt")!> <#if htmlExcerpt?has_content > <#if htmlExcerpt.statements?has_content && htmlExcerpt.type == "data"> @@ -156,24 +193,22 @@ <#-- object property -->
    <#else> -
    Текст отрывка: <@p.addLink htmlExcerpt editable /> <@p.verboseDisplay htmlExcerpt />
    +
    ${i18n().metadata_html_text} <@p.addLink htmlExcerpt editable /> <@p.verboseDisplay htmlExcerpt />
    <#assign works = propertyGroups.pullProperty("https://litvinovg.pro/text_structures#works")!> <#if works.statements?has_content || editable > -
    -

    Работы: <@p.addLink works editable /> <@p.verboseDisplay works />

    +

    ${i18n().sources_excerpt_button_text} <@p.addLink works editable /> <@p.verboseDisplay works />

    <@p.dataPropertyList works editable />
    <#assign biblio= propertyGroups.pullProperty("https://litvinovg.pro/text_structures#bibliography")!> <#if biblio.statements?has_content || editable > -
    -

    Литература: <@p.addLink biblio editable /> <@p.verboseDisplay biblio />

    +

    ${i18n().literature_excerpt_button_text} <@p.addLink biblio editable /> <@p.verboseDisplay biblio />

    <@p.dataPropertyList biblio editable />
    diff --git a/webapp/src/main/webapp/templates/freemarker/elenphExcerptShortView.ftl b/webapp/src/main/webapp/themes/iph/templates/elenphExcerptShortView.ftl similarity index 85% rename from webapp/src/main/webapp/templates/freemarker/elenphExcerptShortView.ftl rename to webapp/src/main/webapp/themes/iph/templates/elenphExcerptShortView.ftl index ce2c0616..bae63143 100644 --- a/webapp/src/main/webapp/templates/freemarker/elenphExcerptShortView.ftl +++ b/webapp/src/main/webapp/themes/iph/templates/elenphExcerptShortView.ftl @@ -4,7 +4,6 @@ <#import "lib-vivo-properties.ftl" as p> <#-- <@dumpAll /> --> - -
    +
    ${individual.name} <@p.displayTitle individual />

    ${individual.snippet}

    diff --git a/webapp/src/main/webapp/templates/freemarker/elenph_issue.ftl b/webapp/src/main/webapp/themes/iph/templates/elenph_issue.ftl similarity index 72% rename from webapp/src/main/webapp/templates/freemarker/elenph_issue.ftl rename to webapp/src/main/webapp/themes/iph/templates/elenph_issue.ftl index a8158d42..5f1ed9eb 100644 --- a/webapp/src/main/webapp/templates/freemarker/elenph_issue.ftl +++ b/webapp/src/main/webapp/themes/iph/templates/elenph_issue.ftl @@ -5,16 +5,16 @@ <#if !issueName??> <#assign issueName = article.issue> <#assign divOpened = true > - -
    + +

    ${article.name}

    <#elseif issueName == article.issue>

    ${article.name}

    <#else> <#assign issueName = article.issue>
    - -
    + +

    ${article.name}

    @@ -38,4 +38,8 @@ for (i = 0; i < coll.length; i++) { } }); } +var issueContents = document.getElementsByClassName("issue"); +for (i = 0; i < issueContents.length; i++) { + issueContents[i].style.display = "none"; +} diff --git a/webapp/src/main/webapp/themes/iph/templates/footer.ftl b/webapp/src/main/webapp/themes/iph/templates/footer.ftl index 82f942bf..cce1dd26 100644 --- a/webapp/src/main/webapp/themes/iph/templates/footer.ftl +++ b/webapp/src/main/webapp/themes/iph/templates/footer.ftl @@ -13,26 +13,35 @@ <#else> ${copyright.text} - | ${i18n().menu_termuse} | + Creative Commons - ${i18n().menu_powered} VIVO + Powered by VIVO <#if user.hasRevisionInfoAccess> - | ${i18n().menu_version} ${version.label} + ${i18n().menu_version} ${version.label}

    - - - -
    diff --git a/webapp/src/main/webapp/themes/iph/templates/head.ftl b/webapp/src/main/webapp/themes/iph/templates/head.ftl index 06af8d7a..b67f8456 100644 --- a/webapp/src/main/webapp/themes/iph/templates/head.ftl +++ b/webapp/src/main/webapp/themes/iph/templates/head.ftl @@ -36,3 +36,4 @@ an individual profile page. --> ${headContent!} +<#include "statistic_counters.ftl"> diff --git a/webapp/src/main/webapp/themes/iph/templates/identity.ftl b/webapp/src/main/webapp/themes/iph/templates/identity.ftl index 0027ad68..45017254 100644 --- a/webapp/src/main/webapp/themes/iph/templates/identity.ftl +++ b/webapp/src/main/webapp/themes/iph/templates/identity.ftl @@ -1,7 +1,7 @@ <#-- $This file is distributed under the terms of the license in LICENSE$ --> \ No newline at end of file +
    + diff --git a/webapp/src/main/webapp/themes/iph/templates/individual--foaf-person.ftl b/webapp/src/main/webapp/themes/iph/templates/individual--foaf-person.ftl index b115ab55..1abe11bb 100644 --- a/webapp/src/main/webapp/themes/iph/templates/individual--foaf-person.ftl +++ b/webapp/src/main/webapp/themes/iph/templates/individual--foaf-person.ftl @@ -44,7 +44,7 @@
    - ${i18n().uri_icon} + ${i18n().uri_icon} <#if checkNamesResult?has_content > ${i18n().qr_icon}