Objects
@@ -25,6 +25,8 @@
Objects
Compound Object{% if count > 1 %}s{% endif %}
{% when 'multiple' %}
Multiple{% if count > 1 %}s{% endif %}
+ {% when 'transcript' %}
+
Transcript{% if count > 1 %}s{% endif %}
{% else %}
File{% if count > 1 %}s{% endif %}
{%- endcase -%}
diff --git a/_includes/transcript/index/viz-overview.html b/_includes/transcript/index/viz-overview.html
new file mode 100644
index 00000000..14ff88d2
--- /dev/null
+++ b/_includes/transcript/index/viz-overview.html
@@ -0,0 +1,21 @@
+{% assign viz-height = include.height | default: '400px' %}
+
+ {% for transcript in site.data.transcripts %}
+ {% assign height_integer = forloop.length %}
+ {% assign height_float = height_integer | times: 1.0 %}
+ {% if viz-height contains "%" %}{% assign viz-integer = viz-height | replace: "%","" %}{% assign viz-height-measure = "%" %}
+ {% elsif viz-height contains "px" %}{% assign viz-integer = viz-height | replace: "px","" %}{% assign viz-height-measure = "px" %}
+ {% else %}{% assign viz-integer = viz-height %}{% assign viz-height-measure = "px" %}{% endif %}
+ {% assign rect-height = 100 | divided_by: height_float %}
+ {%assign transcript-name = transcript[0] %}
+ {% assign transcript_item = items | where_exp: 'item', 'item.objectid == transcript-name' | first %}
+
{%endfor%}
+
\ No newline at end of file
diff --git a/_includes/transcript/item/transcript.html b/_includes/transcript/item/transcript.html
new file mode 100644
index 00000000..49372acf
--- /dev/null
+++ b/_includes/transcript/item/transcript.html
@@ -0,0 +1,84 @@
+
+
+
+
Transcript
+
Topics:
+
+ {% for item in items %}
+ {% assign my_integer = forloop.length %}
+ {% assign my_float = my_integer | times: 1.0 %}
+ {% assign rect-width = 100 | divided_by: my_float %}
+
+
+
+ {%endfor%}
+
+
+ {% include /transcript/style/visualization-filter-legend.html %}
+
+
+
+
+ Filter by Topic
+ {% assign filters = site.data.filters %}
+ {% for filter in filters %}
+ {% assign tag = filter.tag | slugify %}
+ {%if uniqueSubjects contains tag %}{{filter.description | capitalize}}
+ ({{filter.tag}}) {%endif%}
+ {% endfor %}
+
+
+
+
+
+
+
+ Reset
+ Filters
+
+
+
+
+
+
+
+
+
+
+
+
+ Hide Filters ▲
+ Show Filters ▼
+
+
+
+
+ {% for item in items %}
+ {% assign prev_index = forloop.index0 | times: 1 | minus: 1 %}
+ {% assign prev_speaker = items[prev_index].speaker %}
+ {% assign mod = forloop.index0 | plus: 1 | modulo: 5 %}
+
+
+ {% unless item.speaker == prev_speaker %}{%if item.speaker %}{{item.speaker |
+ remove: ":"}}: {% endif %}{% endunless %}{{item.words}}
+
+
{%if item.timestamp%}{% if av %}{% capture avlink %}transcript/timestamp/{{av | downcase }}.html{% endcapture %}
{{item.timestamp}} {% else %}{{item.timestamp}}{% endif %}{% endif %}
+
+
+ {% endfor %}
+
+
+
\ No newline at end of file
diff --git a/_includes/transcript/js/docready-js.html b/_includes/transcript/js/docready-js.html
deleted file mode 100644
index e89c1565..00000000
--- a/_includes/transcript/js/docready-js.html
+++ /dev/null
@@ -1,39 +0,0 @@
-
\ No newline at end of file
diff --git a/_includes/transcript/js/docready-viz-js.html b/_includes/transcript/js/docready-viz-js.html
index 30bce1f3..e69de29b 100644
--- a/_includes/transcript/js/docready-viz-js.html
+++ b/_includes/transcript/js/docready-viz-js.html
@@ -1,20 +0,0 @@
-
\ No newline at end of file
diff --git a/_includes/transcript/js/scroll-to-top-js.html b/_includes/transcript/js/scroll-to-top-js.html
index 2a7cb262..624e7358 100644
--- a/_includes/transcript/js/scroll-to-top-js.html
+++ b/_includes/transcript/js/scroll-to-top-js.html
@@ -9,33 +9,16 @@
console.log("height is" + topheight);
document.getElementById("scroll-to-top").style.display = "block";
triggerElement.setAttribute('style', 'margin-top:' + topheight + 'px');
- document.getElementById('object-meta').classList.add('iframe-wrapper');
}
//BOTTOM
else {
document.getElementById("scroll-to-top").style.display = "none";
- document.getElementById('object-meta').classList.remove('iframe-wrapper');
triggerElement.removeAttribute('style');
}
}
- // When the user scrolls down from the top of the document, show the button
- /* window.onscroll = function () {
- if (document.body.scrollTop > 1000 || document.documentElement.scrollTop > 500) {
- document.getElementById("scroll-to-top").style.display = "block";
- document.getElementById('object-meta').classList.add('iframe-wrapper');
-
-
-
- } else {
- document.getElementById("scroll-to-top").style.display = "none";
- document.getElementById('object-meta').classList.remove('iframe-wrapper');
-
-
- }
- }*/
// scroll to top function
function scrollToTop() {
window.scroll({
diff --git a/_includes/transcript/js/transcript-js.html b/_includes/transcript/js/transcript-js.html
index 03499d58..152b9b9f 100644
--- a/_includes/transcript/js/transcript-js.html
+++ b/_includes/transcript/js/transcript-js.html
@@ -1,177 +1,281 @@
\ No newline at end of file
diff --git a/_includes/transcript/js/visualization-js.html b/_includes/transcript/js/visualization-js.html
index 15f9e96b..dfc5e6e2 100644
--- a/_includes/transcript/js/visualization-js.html
+++ b/_includes/transcript/js/visualization-js.html
@@ -1,35 +1,159 @@
\ No newline at end of file
+document.getElementById("reset").addEventListener('click', function() {
+ document.querySelectorAll("rect, circle, tr, table, svg, h3, div, section").forEach(el => {
+ el.classList.remove("black", "hidden", "dark");
+ el.removeAttribute("aria-hidden");
+ });
+ params.set('id', '');
+ params.set('filter', '');
+ window.history.replaceState({}, '', location.pathname);
+});
+
+document.addEventListener('DOMContentLoaded', function() {
+ var svgButtons = document.querySelectorAll('svg[role="button"]');
+ svgButtons.forEach(svg => {
+ svg.addEventListener('keydown', function(event) {
+ if (event.keyCode === 13 || event.keyCode === 32) {
+ event.preventDefault();
+ var clickEvent = new MouseEvent('click', {
+ view: window,
+ bubbles: true,
+ cancelable: true
+ });
+ this.dispatchEvent(clickEvent);
+ }
+ });
+ });
+});
+
+(function(){
+ // init bootstrap tooltips
+ var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'))
+ var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
+ return new bootstrap.Tooltip(tooltipTriggerEl)
+ })
+
+ if(urlCodeFilter && urlPeepFilter) {
+ // code to be executed if a filter is contained in the url
+ codeFilter(urlCodeFilter);
+ interviewFilter(urlPeepFilter);
+ }
+ else if (urlCodeFilter){
+ codeFilter(urlCodeFilter);
+}
+ else if (urlPeepFilter){
+ interviewFilter(urlPeepFilter);
+ };
+})();
+
+
\ No newline at end of file
diff --git a/_includes/transcript/style/filter-style.html b/_includes/transcript/style/filter-style.html
index 950a95af..f5e2cdda 100644
--- a/_includes/transcript/style/filter-style.html
+++ b/_includes/transcript/style/filter-style.html
@@ -4,7 +4,7 @@
{% capture color %}{% cycle '#e6194b','#3cb44b','#ffe119','#4363d8','#f58231','#911eb4','#46f0f0','#f032e6','#bcf60c','#fabebe','#008080','#e6beff','#9a6324','#fffac8','#800000','#aaffc3','#808000','#ffd8b1','#000075','#808080','#ffffff'%}{% endcapture %}
.{{ n.tag | slugify }} {
fill: {{color}};
- border-color: {{color}} !important;
+ border-color: {{color}};
}
.{{ n.tag | slugify }}.primary-{{ n.tag | slugify }}{
diff --git a/_includes/transcript/style/visualization-filter-legend.html b/_includes/transcript/style/visualization-filter-legend.html
new file mode 100644
index 00000000..38be4700
--- /dev/null
+++ b/_includes/transcript/style/visualization-filter-legend.html
@@ -0,0 +1,12 @@
+
+ {% for n in site.data.filters %}
+ {% if uniqueSubjects contains n.tag %}
+
+
+ {{n.tag}}
+
+
+ {% endif %}
+ {%endfor%}
+
+
\ No newline at end of file
diff --git a/_layouts/cover.html b/_layouts/cover.html
new file mode 100644
index 00000000..faf5824e
--- /dev/null
+++ b/_layouts/cover.html
@@ -0,0 +1,11 @@
+
+
+
+ {% include head/head.html %}
+
+
+
+ {{ content }}
+ {% include foot.html %}
+
+
\ No newline at end of file
diff --git a/_layouts/item/transcript.html b/_layouts/item/transcript.html
index eb186cd9..6de401e2 100644
--- a/_layouts/item/transcript.html
+++ b/_layouts/item/transcript.html
@@ -2,10 +2,17 @@
# generic fallback item page layout
# displays image or icon depending on "image_thumb"
layout: item/item-page-base
-custom-foot: transcript/js/transcript-js.html;/transcript/js/docready-js.html
+custom-foot: transcript/js/transcript-js.html
---
{% assign children = site.data[site.metadata] | where_exp: 'item','item.parentid == page.objectid' %}
+{% if page.object-transcript contains ".csv"%}
+{% assign transcript = page.object-transcript | remove: ".csv" %}
+{% assign items = site.data.transcripts[transcript] %}
+{% elsif page.object-transcript %}
+{% assign items = site.data.transcripts[page.object-transcript] %}
+{% else %}
{% assign items = site.data.transcripts[page.objectid] %}
+{% endif %}
{%- comment -%} find all words used in the subject metadata {%- endcomment -%}
{%- assign min-count = 1 -%}
{%- assign raw-subjects = items | map: "tags" | compact | join: ";" | split: ";" -%}
@@ -62,75 +69,6 @@
{% endif %}