Flask application repository for Banner Repeater's DAAP (Digital Archive of Artists Publishing).
SPARQL queries by Lozana Rossenova, CSS and JS by Joana Chicau, python and Jinja by Julie Boschat-Thorez.
See https://daap.network
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
567 lines
16 KiB
567 lines
16 KiB
{% extends "layout.html" %}
|
|
{% block content %}
|
|
|
|
<!-- START OF BLOCK -->
|
|
<div>
|
|
|
|
|
|
<!-- ITEM TITLE AND SHORT INTRO FOR ALL-->
|
|
<div>
|
|
<!-- TITLE label in rectangle -->
|
|
|
|
<!-- switch label depending on label -->
|
|
{% for x in itemintro['results']['bindings'] %}
|
|
{% if 'itemtypeLabel' in x %}
|
|
<div class="artwork-box">
|
|
<span>{{ x['itemtypeLabel']['value'] }}</span>
|
|
</div>
|
|
{% else %}
|
|
<div class="artwork-box">
|
|
<span>UNKNOWN</span>
|
|
</div>
|
|
{% endif %}
|
|
|
|
<!-- Item name -->
|
|
<div class="artwork-title">
|
|
{{ x['itemLabel']['value'] }}
|
|
</div>
|
|
|
|
<!-- ITEM intro-description -->
|
|
<div class="artwork-intro">
|
|
|
|
{% if 'itemDescription' in x %}
|
|
{{ x['itemDescription']['value'] }}
|
|
{% endif %}
|
|
</div>
|
|
{% endfor %}
|
|
|
|
</div>
|
|
<!-- END TITLE SHORT INTRO OF ITEM-->
|
|
|
|
<!-- NAVIGATION HERE? -->
|
|
<div class="artwork-nav">
|
|
<div class="artwork-nav-label artwork-nav-label-about active">ABOUT THIS WORK</div>
|
|
<!-- <div class="artwork-nav-label">RELATIONSHIPS</div> -->
|
|
<!-- <div class="artwork-nav-label">LISTS</div> -->
|
|
<div class="artwork-nav-label artwork-nav-label-record"><a class="det-record" target="_blank" href="https://daap.bannerrepeater.org/wiki/Item:{{ artwork_id }}">DETAILED RECORD</a></div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<!-- ########################### -->
|
|
<!-- BLOCK IMAGE/DATA AND BIO -->
|
|
<!-- ############################ -->
|
|
<div class="artwork-about">
|
|
|
|
|
|
<!-- LEFT COLUMN IDENTITAL FOR ALL ITEMS-->
|
|
<div class="artwork-leftcolumn">
|
|
|
|
<!-- ITEM IMAGES -->
|
|
<div class="my-slider">
|
|
{% if itemimage['results']['bindings']==[] %}
|
|
<img src="{{ url_for('static', filename='/imgs/Icons/placeholder_no-image2.png') }}">
|
|
{% else %}
|
|
|
|
{% for x in itemimage['results']['bindings'] %}
|
|
<div class="item">
|
|
<!-- START GROUP IMG + LABELS -->
|
|
{% if "image" in x %}
|
|
<img src='{{ x["image"]["value"] | replace("wiki/File:","wiki/Special:Redirect/file/") }}'>
|
|
<!-- copyright and front or back -->
|
|
{% endif %}
|
|
|
|
{% if "depictsLabel" in x %}
|
|
<p>{{ x['depictsLabel']['value'] }}</p>
|
|
{% endif %}
|
|
|
|
{% if "licenseLabel" in x %}
|
|
<p>License: {{ x['licenseLabel']['value'] }}</p>
|
|
{% endif %}
|
|
<!-- END GROUP IMG + LABELS -->
|
|
</div>
|
|
{% endfor %}
|
|
|
|
{% endif %}
|
|
</div>
|
|
<!-- END CONTRIBUTOR IMAGES -->
|
|
</div>
|
|
<!-- end of left column, which has only images actually -->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- RIGHT COLUMN -->
|
|
<div class="artwork-rightcolumn">
|
|
|
|
<!-- ##################### -->
|
|
<!-- RIGHT TOP : DATA SECTION SECTION -->
|
|
<!-- ##################### -->
|
|
<div class="artwork-rightcolumn-top">
|
|
|
|
<!-- div for right top left -->
|
|
<div class="artwork-rightcolumn-top-contributors">
|
|
|
|
<!-- THE DATA FOR PERSON -->
|
|
{% for x in itemintro['results']['bindings'] %}
|
|
{% if 'itemtypeLabel' in x %}
|
|
{% if x['itemtypeLabel']['value'] == 'contributor' %}
|
|
|
|
<!-- person gender -->
|
|
<p class="label-item">GENDER IDENTITY</p>
|
|
{% if persongender['results']['bindings']==[] %}
|
|
<div>information not available</div>
|
|
{% else %}
|
|
{% for x in persongender['results']['bindings'] %}
|
|
<span>
|
|
{{ x['genderLabel']['value'] }}
|
|
</span>
|
|
{% endfor %}
|
|
{% endif %}
|
|
<!-- end person gender -->
|
|
|
|
<!-- person pronouns -->
|
|
<p class="label-item">PREFERRED PRONOUNS</p>
|
|
{% if personpronouns['results']['bindings']==[] %}
|
|
<div>information not available</div>
|
|
{% else %}
|
|
{% for x in personpronouns['results']['bindings'] %}
|
|
<span>
|
|
{{ x['pronounLabel']['value'] }}
|
|
</span>
|
|
{% endfor %}
|
|
{% endif %}
|
|
|
|
|
|
<!-- end personpronouns -->
|
|
|
|
|
|
<!-- official website -->
|
|
<p class="label-item">OFFICIAL WEBSITE</p>
|
|
{% if itemwebsite['results']['bindings']==[] %}
|
|
<div>information not available</div>
|
|
{% else %}
|
|
<!-- else loop through available data -->
|
|
{% for x in itemwebsite['results']['bindings'] %}
|
|
<div class="metadata-link">
|
|
<a target="_blank" href="{{ x['website']['value'] }}">
|
|
<span>{{ x['website']['value'] }}</span>
|
|
</a>
|
|
|
|
</div>
|
|
{% endfor %}
|
|
{% endif %}
|
|
<!-- end official website -->
|
|
|
|
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
<!-- END OF DATA FOR PERSON -->
|
|
|
|
|
|
<!-- THE DATA FOR INSTITUTION -->
|
|
{% for x in itemintro['results']['bindings'] %}
|
|
{% if 'itemtypeLabel' in x %}
|
|
{% if x['itemtypeLabel']['value'] == 'organisation' %}
|
|
|
|
<!-- location -->
|
|
<p class="label-item">LOCATION</p>
|
|
{% if orglocation['results']['bindings']==[] %}
|
|
<div>information not available</div>
|
|
{% else %}
|
|
<!-- else loop through available data -->
|
|
{% for x in orglocation['results']['bindings'] %}
|
|
<span>{{ x['locationLabel']['value'] }}</span>
|
|
{% endfor %}
|
|
{% endif %}
|
|
<!-- end location -->
|
|
|
|
|
|
<!-- country -->
|
|
<p class="label-item">COUNTRY</p>
|
|
{% if orgcountry['results']['bindings']==[] %}
|
|
<div>information not available</div>
|
|
{% else %}
|
|
<!-- else loop through available data -->
|
|
{% for x in orgcountry['results']['bindings'] %}
|
|
<span>{{ x['countryLabel']['value'] }}</span>
|
|
{% endfor %}
|
|
{% endif %}
|
|
<!-- end country -->
|
|
|
|
|
|
<!-- official website -->
|
|
<p class="label-item">OFFICIAL WEBSITE</p>
|
|
{% if itemwebsite['results']['bindings']==[] %}
|
|
<div>information not available</div>
|
|
{% else %}
|
|
<!-- else loop through available data -->
|
|
{% for x in itemwebsite['results']['bindings'] %}
|
|
<!-- name surname -->
|
|
<div class="metadata-link">
|
|
<a target="_blank" href="{{ x['website']['value'] }}">
|
|
<span>{{ x['website']['value'] }}</span>
|
|
</a>
|
|
|
|
</div>
|
|
{% endfor %}
|
|
{% endif %}
|
|
<!-- end official website -->
|
|
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
<!-- END OF DATA FOR INSTITUTION -->
|
|
|
|
|
|
<!-- THE DATA FOR COLLECTIVE -->
|
|
{% for x in itemintro['results']['bindings'] %}
|
|
{% if 'itemtypeLabel' in x %}
|
|
{% if x['itemtypeLabel']['value'] == 'collective' %}
|
|
|
|
<!-- collective members -->
|
|
<p class="label-item">MEMBERS</p>
|
|
{% if collectivemembers['results']['bindings']==[] %}
|
|
<div>information not available</div>
|
|
{% else %}
|
|
<!-- else loop through available data -->
|
|
{% for x in collectivemembers['results']['bindings'] %}
|
|
<!-- name surname -->
|
|
<div class="metadata-link">
|
|
<a target="_blank" href="item?id={{ x['members']['value'] | replace('http://daap.bannerrepeater.org/entity/', '') }}">
|
|
<span>{{ x['membersLabel']['value'] }}</span>
|
|
</a>
|
|
|
|
</div>
|
|
{% endfor %}
|
|
{% endif %}
|
|
|
|
<!-- end collective members -->
|
|
|
|
<!-- official website -->
|
|
<p class="label-item">OFFICIAL WEBSITE</p>
|
|
{% if itemwebsite['results']['bindings']==[] %}
|
|
<div>information not available</div>
|
|
{% else %}
|
|
<!-- else loop through available data -->
|
|
{% for x in itemwebsite['results']['bindings'] %}
|
|
<!-- name surname -->
|
|
<div class="metadata-link">
|
|
<a target="_blank" href="{{ x['website']['value'] }}">
|
|
<span>{{ x['website']['value'] }}</span>
|
|
</a>
|
|
|
|
</div>
|
|
{% endfor %}
|
|
{% endif %}
|
|
<!-- end official website -->
|
|
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
<!-- END OF DATA FOR COLLECTIVE -->
|
|
|
|
</div>
|
|
|
|
<!-- IDENTIFIERS FOR PERSON INSTITUTION AND COLLECTIVE -->
|
|
|
|
<div class="artwork-rightcolumn-top-date">
|
|
<p>IDENTIFIERS IN OTHER DATABASES:</p>
|
|
|
|
<!-- WIKIDATA ID -->
|
|
<p class="label-item">WIKIDATA ID</p>
|
|
{% if itemwikidataID['results']['bindings']==[] %}
|
|
<div>information not available</div>
|
|
{% else %}
|
|
<!-- else loop through available data -->
|
|
{% for x in itemwikidataID['results']['bindings'] %}
|
|
<!-- name surname -->
|
|
<div class="metadata-link">
|
|
<a target="_blank" href="{{ x['WikidataID']['value'] }}">
|
|
<span>{{ x['WikidataID']['value'] }}</span>
|
|
</a>
|
|
|
|
</div>
|
|
{% endfor %}
|
|
{% endif %}
|
|
<!-- end WIKIDATA ID -->
|
|
|
|
|
|
<!-- VIAFID -->
|
|
<p class="label-item">VIAFID</p>
|
|
{% if itemviafID['results']['bindings']==[] %}
|
|
<div>information not available</div>
|
|
{% else %}
|
|
<!-- else loop through available data -->
|
|
{% for x in itemviafID['results']['bindings'] %}
|
|
<!-- name surname -->
|
|
<div class="metadata-link">
|
|
<p>{{ x['VIAFID']['value'] }}</p>
|
|
</div>
|
|
{% endfor %}
|
|
{% endif %}
|
|
<!-- end VIAFID -->
|
|
|
|
</div>
|
|
|
|
<!-- END IDENTIFIERS FOR PERSON INSTITUTION AND COLLECTIVE -->
|
|
|
|
|
|
|
|
</div>
|
|
<!-- ##################### -->
|
|
<!-- EN OF RIGHT TOP -->
|
|
<!-- ##################### -->
|
|
|
|
|
|
|
|
<!-- ##################### -->
|
|
<!-- RIGHT BOTTOM : BIO/DESCRIPTION SECTION -->
|
|
<!-- ##################### -->
|
|
|
|
|
|
<!-- IF LABEL IS PERSON add biography -->
|
|
|
|
{% for x in itemintro['results']['bindings'] %}
|
|
{% if 'itemtypeLabel' in x %}
|
|
{% if x['itemtypeLabel']['value'] == 'contributor' %}
|
|
|
|
<div class="des-exh-section">
|
|
<p class="label-item des">BIOGRAPHY</p>
|
|
{% if personbiography['results']['bindings']==[] %}
|
|
<p>information not available</p>
|
|
|
|
{% else %}
|
|
|
|
<!-- For loop -->
|
|
{% for x in personbiography['results']['bindings'] %}
|
|
<div class="artwork-rightcolumn-bottom">
|
|
<!-- left part with the description text already coming in a div from wiki-->
|
|
<div class="text-description">
|
|
{{ x["text"] | safe }}
|
|
</div>
|
|
</div>
|
|
{% endfor %}
|
|
{% endif %}
|
|
|
|
</div>
|
|
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
|
|
<!-- end of PERSON biography -->
|
|
|
|
|
|
|
|
<!-- IF LABEL IS ORGANISATION OR COLLECTIVE add description -->
|
|
|
|
{% for x in itemintro['results']['bindings'] %}
|
|
{% if 'itemtypeLabel' in x %}
|
|
{% if (x['itemtypeLabel']['value'] == 'organisation') or (x['itemtypeLabel']['value'] == 'collective') %}
|
|
|
|
<div class="des-exh-section">
|
|
<p class="label-item des">DESCRIPTION</p>
|
|
{% if colorgdescription['results']['bindings']==[] %}
|
|
<p>information not available</p>
|
|
{% else %}
|
|
|
|
<!-- For loop -->
|
|
{% for x in colorgdescription['results']['bindings'] %}
|
|
<div class="artwork-rightcolumn-bottom">
|
|
<!-- left part with the description text already coming in a div from wiki-->
|
|
<div class="text-description">
|
|
{{ x["text"] | safe }}
|
|
</div>
|
|
</div>
|
|
{% endfor %}
|
|
{% endif %}
|
|
|
|
</div>
|
|
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
|
|
|
|
<!-- end of description -->
|
|
|
|
|
|
<!-- ##################### -->
|
|
<!-- END OF RIGHT BOTTOM -->
|
|
<!-- ##################### -->
|
|
|
|
|
|
</div>
|
|
<!-- END OF RIGHT COLUMN -->
|
|
|
|
|
|
</div>
|
|
<!-- ########################### -->
|
|
<!-- END OF BLOCK IMAGE/DATA AND BIO -->
|
|
<!-- ############################ -->
|
|
|
|
|
|
<!-- ---------------------------------------------------------------------- -->
|
|
|
|
<!-- ########################### -->
|
|
<!-- START COMMISSIONED PUBLISHER CREATOR OF -->
|
|
<!-- ############################ -->
|
|
|
|
|
|
<!-- COLLECTIVE AND PERSON : CREATOR OF -->
|
|
{% for x in itemintro['results']['bindings'] %}
|
|
{% if 'itemtypeLabel' in x %}
|
|
{% if (x['itemtypeLabel']['value'] == 'contributor') or (x['itemtypeLabel']['value'] == 'collective') %}
|
|
|
|
<div class="artwork-relatedwrapper">
|
|
<div class="Heading_C">Creator of</div>
|
|
<!-- all the works if any-->
|
|
{% for x in item_creatorof['results']['bindings'] %}
|
|
<div class="artwork-relatedworks">
|
|
<!-- image -->
|
|
<div class="artwork-relatedworks-img-div">
|
|
{% if "image" in x %}
|
|
<a href='/artwork?id={{ x["Works"]["value"] | replace("http://daap.bannerrepeater.org/entity/", "") }}'>
|
|
<img class="artwork-relatedworks-imgs" src='{{ x["image"]["value"] | replace("wiki/File:","wiki/Special:Redirect/file/") }}'>
|
|
</a>
|
|
<br>
|
|
{% else %}
|
|
<a href='/artwork?id={{ x["Works"]["value"] | replace("http://daap.bannerrepeater.org/entity/", "") }}'>
|
|
<img class="artwork-relatedworks-imgs" src="{{ url_for('static', filename='/imgs/Icons/placeholder_no-image2.png') }}">
|
|
</a>
|
|
<br>
|
|
{% endif %}
|
|
</div>
|
|
<!-- title -->
|
|
<div class="artwork-relatedworks-tile">
|
|
<a href='/artwork?id={{ x["Works"]["value"] | replace("http://daap.bannerrepeater.org/entity/", "") }}'>{{ x["WorksLabel"]["value"]}}</a>
|
|
</div>
|
|
<!-- year -->
|
|
<div class="artwork-relatedworks-date">
|
|
{% if "dateWorks" in x %}
|
|
{{ x["dateWorks"]["value"] | replace("T00:00:00Z", "") }}
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
|
|
<!-- END CREATOR OF -->
|
|
|
|
<!-- INSTITUTION : COMMISSIONED -->
|
|
{% for x in itemintro['results']['bindings'] %}
|
|
{% if 'itemtypeLabel' in x %}
|
|
{% if x['itemtypeLabel']['value'] == 'organisation' %}
|
|
|
|
<div class="artwork-relatedwrapper">
|
|
<div class="Heading_C">Commissioned</div>
|
|
<!-- all the works if any-->
|
|
{% for x in item_commissioned['results']['bindings'] %}
|
|
<div class="artwork-relatedworks">
|
|
<!-- image -->
|
|
<div class="artwork-relatedworks-img-div">
|
|
{% if "image" in x %}
|
|
<a href='/artwork?id={{ x["Works"]["value"] | replace("http://daap.bannerrepeater.org/entity/", "") }}'>
|
|
<img class="artwork-relatedworks-imgs" src='{{ x["image"]["value"] | replace("wiki/File:","wiki/Special:Redirect/file/") }}'>
|
|
</a>
|
|
<br>
|
|
{% else %}
|
|
<a href='/artwork?id={{ x["Works"]["value"] | replace("http://daap.bannerrepeater.org/entity/", "") }}'>
|
|
<img class="artwork-relatedworks-imgs" src="{{ url_for('static', filename='/imgs/Icons/placeholder_no-image2.png') }}">
|
|
</a>
|
|
<br>
|
|
{% endif %}
|
|
</div>
|
|
<!-- title -->
|
|
<div class="artwork-relatedworks-tile">
|
|
<a href='/artwork?id={{ x["Works"]["value"] | replace("http://daap.bannerrepeater.org/entity/", "") }}'>{{ x["WorksLabel"]["value"]}}</a>
|
|
</div>
|
|
<!-- year -->
|
|
<div class="artwork-relatedworks-date">
|
|
{% if "dateWorks" in x %}
|
|
{{ x["dateWorks"]["value"] | replace("T00:00:00Z", "") }}
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
<!-- END COMMISSIONED -->
|
|
|
|
|
|
|
|
<!-- COLLECTIVE + INSTITUTION + PERSON : PUBLISHER OF -->
|
|
<div class="artwork-relatedwrapper">
|
|
<div class="Heading_C">Publisher of</div>
|
|
<!-- all the works if any-->
|
|
{% for x in item_publisherof['results']['bindings'] %}
|
|
<div class="artwork-relatedworks">
|
|
<!-- image -->
|
|
<div class="artwork-relatedworks-img-div">
|
|
{% if "image" in x %}
|
|
<a href='/artwork?id={{ x["Works"]["value"] | replace("http://daap.bannerrepeater.org/entity/", "") }}'>
|
|
<img class="artwork-relatedworks-imgs" src='{{ x["image"]["value"] | replace("wiki/File:","wiki/Special:Redirect/file/") }}'>
|
|
</a>
|
|
<br>
|
|
{% else %}
|
|
<a href='/artwork?id={{ x["Works"]["value"] | replace("http://daap.bannerrepeater.org/entity/", "") }}'>
|
|
<img class="artwork-relatedworks-imgs" src="{{ url_for('static', filename='/imgs/Icons/placeholder_no-image2.png') }}">
|
|
</a>
|
|
<br>
|
|
{% endif %}
|
|
</div>
|
|
<!-- title -->
|
|
<div class="artwork-relatedworks-tile">
|
|
<a href='/artwork?id={{ x["Works"]["value"] | replace("http://daap.bannerrepeater.org/entity/", "") }}'>{{ x["WorksLabel"]["value"]}}</a>
|
|
</div>
|
|
<!-- year -->
|
|
<div class="artwork-relatedworks-date">
|
|
{% if "dateWorks" in x %}
|
|
{{ x["dateWorks"]["value"] | replace("T00:00:00Z", "") }}
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
{% endfor %}
|
|
</div>
|
|
<!-- END PUBLISHER OF -->
|
|
|
|
|
|
|
|
</div>
|
|
<!-- END OF OVERALL BLOCK -->
|
|
|
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/tiny-slider/2.9.2/min/tiny-slider.js"></script>
|
|
|
|
<script type="text/javascript">
|
|
var slider = tns({
|
|
container: '.my-slider',
|
|
items: 1,
|
|
responsive: {
|
|
640: {
|
|
edgePadding: 20,
|
|
gutter: 20,
|
|
items: 1
|
|
},
|
|
700: {
|
|
gutter: 30
|
|
},
|
|
900: {
|
|
items: 1
|
|
}
|
|
}
|
|
});
|
|
|
|
</script>
|
|
|
|
{% endblock content %}
|