Alessia 1 年間 前
コミット
de1e2321b3
8 ファイル変更99 行追加21 行削除
  1. 1 0
      Luogo.html
  2. 1 0
      Persona.html
  3. 54 0
      js/lettera.js
  4. 10 2
      js/map.js
  5. 18 8
      js/object.js
  6. 11 2
      js/people.js
  7. 1 0
      lettera.html
  8. 3 9
      object.html

+ 1 - 0
Luogo.html

@@ -102,6 +102,7 @@
 							<div class="row box-info-title">
 								<div class="col">
 									<h1 id="nome_luogo" class="box-info-main-title"></h1>
+									<span id="link_buttons"></span>
 								</div>
 							</div>
                           

+ 1 - 0
Persona.html

@@ -107,6 +107,7 @@
 							<div class="row box-info-title">
 								<div class="col">
 									<h1 id="nome_persona" class="box-info-main-title"></h1>
+									<span id="link_buttons"></span>
 								</div>
 							</div>
 

+ 54 - 0
js/lettera.js

@@ -56,6 +56,18 @@ function updatePage(){
 		if(pageInfo.query1.hasOwnProperty('data_partenza')) document.getElementById("data_partenza_id").innerHTML = pageInfo.query1.data_partenza.value;
 		if(pageInfo.query1.hasOwnProperty('data_arrivo')) document.getElementById("data_arrivo_id").innerHTML = pageInfo.query1.data_arrivo.value;
 		
+		if(pageInfo.query1.hasOwnProperty('subject')) {
+
+			var uri = pageInfo.query1.subject.value;
+
+			var Buttons = '<button class="btn btn-default" type="button" onclick="schedaASPO(\'' + uri + '\')"> \
+			<i class="fas fa-external-link-alt" aria-hidden="true"></i></button> \
+			<button type="button" value="object" id="' + uri + '" class="cit btn btn-default" alt="scheda" title="Citazione"><i class="fa fa-quote-right"></i></button> \
+			<button type="button" value="object" id="' + uri + '" class="hyp btn btn-default" alt="scheda" title="Hyperlink"><i class="fa fa-link"></i></button> \
+			<a href="http://dev.restore.ovi.cnr.it/lodlive/?' + uri + '" target="_blank"><button type="button" class="btn btn-default info" alt="LOD" title="LodLive"><i class="fa fa-share-alt"></i></button></a></div></div>';
+
+			document.getElementById("link_buttons").innerHTML = Buttons;
+		}
 	}
 
 	/*if(pageInfo.query1){
@@ -216,6 +228,48 @@ $(document).on("click", ".close", function (ev) {
 
 	});
 
+$(document).on("click", ".hyp", function (ev) {
+
+	var baseurl = window.location.origin+window.location.pathname;
+	let slash = baseurl.lastIndexOf("/");
+	var type = $(this).val() + '.html';
+	var link = this.id;
+	var url = baseurl.substr(0, slash+1) + type + "?link="+link;
+	var link = this.id;
+	$("#myModal").empty();
+	$("#myModal").css("display", "block");
+	$('#myModal').append("<div class='modal-content'><div class='modal-close'><span class='close'>&times;</span></div><div id='myInput'>" +
+		url + "</div><button id='copy_btn' class='btn btn-theme-primary btn-md' onclick='myFunction()'>Copia</button>");
+	
+	});
+
+$(document).on("click", ".cit", function (ev) {
+
+	var author ="RESTORE. smart access to digital heritage and memory"
+	
+	var year = new Date().getFullYear()
+	
+	var today = new Date();
+	var dd = String(today.getDate()).padStart(2, '0');
+	var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!
+	var yyyy = today.getFullYear();
+	
+	today = dd + '/' + mm + '/' + yyyy;
+	
+	var baseurl = window.location.origin+window.location.pathname;
+	let slash = baseurl.lastIndexOf("/");
+	var type = $(this).val() + '.html';
+	var link = this.id;
+	var url = baseurl.substr(0, slash+1) + type + "?link="+link;
+	//alert(nome_autore);
+	//$('#myModal').text("");
+	$("#myModal").empty();
+	$("#myModal").css("display", "block");
+	$('#myModal').append("<div class='modal-content'><div class='modal-close'><span class='close'>&times;</span></div><div id='myInput'>" + 
+		author + " " + year + ", accesso effettuato: " + today + ", &lt;" + url + "&gt;</div><button id='copy_btn' class='btn btn-theme-primary btn-md' onclick='myFunction()'>Copia</button>");
+	
+	});
+
 function copyToClipboard(text) {
     var sampleTextarea = document.createElement("textarea");
     document.body.appendChild(sampleTextarea);

+ 10 - 2
js/map.js

@@ -44,8 +44,9 @@ PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> \
 PREFIX crm: <http://www.cidoc-crm.org/cidoc-crm/> \
 PREFIX owl: <http://www.w3.org/2002/07/owl#>"
 
-query = prefixes + " SELECT DISTINCT ?graph ?name_place ?coordinates {\
-GRAPH ?graph {<" + thisUrlParams.link + "> crm:P168_place_is_defined_by ?coordinates;\
+query = prefixes + " SELECT DISTINCT ?graph ?uri ?name_place ?coordinates {\
+GRAPH ?graph { VALUES ?uri { <" + thisUrlParams.link + "> } \
+?uri crm:P168_place_is_defined_by ?coordinates;\
 rdfs:label ?name_place .\
 }\
 }"
@@ -282,6 +283,7 @@ function handle_data(json) {
 			function (index, value) {
 				const loc = []
 				var graph = value['graph']['value'];
+        var uri = value['uri']['value'];
 				var label = value['name_place']['value'];
 				var coord = value['coordinates']['value'];
         var variante = "";
@@ -304,6 +306,11 @@ function handle_data(json) {
           note = "Nessuna informazione trovata";
         }
 
+        var Buttons = '<button type="button" value="object" id="' + uri + '" class="cit btn btn-default" alt="scheda" title="Citazione"><i class="fa fa-quote-right"></i></button> \
+        <button type="button" value="object" id="' + uri + '" class="hyp btn btn-default" alt="scheda" title="Hyperlink"><i class="fa fa-link"></i></button> \
+        <a href="http://dev.restore.ovi.cnr.it/lodlive/?' + uri + '" target="_blank"><button type="button" class="btn btn-default info" alt="LOD" title="LodLive"><i class="fa fa-share-alt"></i></button></a></div></div>';
+
+
         document.getElementById("grafo").innerHTML = graph;
         document.getElementById("nome_luogo").innerHTML = label;
         document.getElementById("place_name").innerHTML = label;
@@ -314,6 +321,7 @@ function handle_data(json) {
         document.getElementById("nome_lp").innerHTML = label;
         document.getElementById("nome_ll").innerHTML = label;
         document.getElementById("nome_lg").innerHTML = label;
+        document.getElementById("link_buttons").innerHTML = Buttons;
 				
 		});
 

+ 18 - 8
js/object.js

@@ -172,8 +172,10 @@ crm:P14.1_in_the_role_of ?uri_role . \
 ?uri_person rdfs:label ?label . \
 OPTIONAL {?event crm:P4_has_time-span ?uri_time_span . \
 ?uri_time_span rdfs:label ?time_span . } \
-OPTIONAL {?event crm:P7_took_place_at ?uri_place . \
-?uri_place rdfs:label ?place . } \
+OPTIONAL {?event crm:P7_took_place_at ?uri_location . \
+?uri_place owl:sameAs ?uri_location ; \
+crm:P168_place_is_defined_by ?coords; \
+rdfs:label ?place . } \
 }"
 
 queryURL = prepareQueryURL(queryInfo);
@@ -321,6 +323,13 @@ function handle_objectData(json) {
           <i class="fa fa-link" aria-hidden="true">	<p class="btn-text">Link</p></i></button>';
         }
 
+        var Buttons = '<button class="btn btn-default" type="button" onclick="schedaASPO(\'' + uri + '\')"> \
+        <i class="fas fa-external-link-alt" aria-hidden="true"></i></button> \
+        <button type="button" value="object" id="' + uri + '" class="cit btn btn-default" alt="scheda" title="Citazione"><i class="fa fa-quote-right"></i></button> \
+        <button type="button" value="object" id="' + uri + '" class="hyp btn btn-default" alt="scheda" title="Hyperlink"><i class="fa fa-link"></i></button> \
+        <a href="http://dev.restore.ovi.cnr.it/lodlive/?' + uri + '" target="_blank"><button type="button" class="btn btn-default info" alt="LOD" title="LodLive"><i class="fa fa-share-alt"></i></button></a></div></div>';
+
+
         document.getElementById("grafo").innerHTML = dataset;
         document.getElementById("nome_oggetto").innerHTML = label;
         document.getElementById("identifier").innerHTML = identifier;
@@ -332,6 +341,7 @@ function handle_objectData(json) {
         document.getElementById("owner").innerHTML = current_owner;
         document.getElementById("btn_owner").innerHTML = button_owner;
         document.getElementById("timeSpan").innerHTML = dates;
+        document.getElementById("link_buttons").innerHTML = Buttons;
        
         
       });
@@ -751,20 +761,19 @@ function handle_eventiGettatelli(json) {
         
       });
 
-      var thead = '<div id="ev_thead" class="row">' +
+      var thead = 
       '<div class="col-4">Evento registrato</div>' +
       '<div class="col-2">Persona</div>' +
       '<div class="col-2">Ruolo</div>' +
       '<div class="col-2">Data</div>' +
-      '<div class="col-2">Luogo</div>' +
-      '</div>';
+      '<div class="col-2">Luogo</div>';
     
-      var EventsTable = thead;
+      var EventsTable = "";
     
       for (var i=0; i<evGett.length; i++) {
-        EventsTable += '<div class="row">' +
+        EventsTable += '<div class="row res">' +
         '<div class="col-4">' + evGett[i][0] + '</div>' +
-        '<div id="' + evGett[i][1] + '" class="col-2 luogo">' + evGett[i][2] + '</div>' +
+        '<div id="' + evGett[i][1] + '" class="col-2 persona">' + evGett[i][2] + '</div>' +
         '<div class="col-2">' + evGett[i][3] + '</div>' +
         '<div class="col-2">' + evGett[i][4] + '</div>' +
         '<div id="' + evGett[i][5] + '" class="col-2 luogo">' + evGett[i][6] + '</div>' +
@@ -772,6 +781,7 @@ function handle_eventiGettatelli(json) {
       }
     
       if (events.length != 0) {
+        document.getElementById("thead_ev").innerHTML = thead;
         document.getElementById("section_events").innerHTML = EventsTable;
       } else {
         document.getElementById("section_events").innerHTML = "Nessun evento trovato";

+ 11 - 2
js/people.js

@@ -86,7 +86,7 @@ crm:P168_place_is_defined_by ?coordinates . \
   } \
 }"
 
-queryInfo = prefixes + " SELECT DISTINCT ?graph ?label ?identifier ?id_type ?name ?givenName ?familyName ?relative2 ?relative3 ?alias ?provenienza (GROUP_CONCAT(DISTINCT CONCAT(?variant, '| ', ?otherName) ; SEPARATOR = ';') AS ?variants) ?gender ?Birth_Date ?Birth_Place ?Death_Date ?Death_Place ?patronymic ?occupation ?qualification ?group \
+queryInfo = prefixes + " SELECT DISTINCT ?uri ?graph ?label ?identifier ?id_type ?name ?givenName ?familyName ?relative2 ?relative3 ?provenienza (GROUP_CONCAT(DISTINCT CONCAT(?variant, '| ', ?otherName) ; SEPARATOR = ';') AS ?variants) ?gender ?Birth_Date ?Birth_Place ?Death_Date ?Death_Place ?patronymic ?occupation ?qualification ?group \
 WHERE { \
 VALUES ?uri {<" + thisUrlParams.link + ">} \
 GRAPH ?graph {?uri rdfs:label ?label} \
@@ -135,7 +135,7 @@ crm:P42_assigned ?uri_rel_type3 . \
 ?uri_relative3 crm:P141_assigned ?relation3; \
 rdfs:label ?relative3 .} \
 } \
-GROUP BY ?graph ?label ?identifier ?id_type ?name ?givenName ?familyName ?relative2 ?relative3 ?alias ?provenienza ?gender ?Birth_Date ?Birth_Place ?Death_Date ?Death_Place ?patronymic ?occupation ?qualification ?group \
+GROUP BY ?graph ?uri ?label ?identifier ?id_type ?name ?givenName ?familyName ?relative2 ?relative3 ?provenienza ?gender ?Birth_Date ?Birth_Place ?Death_Date ?Death_Place ?patronymic ?occupation ?qualification ?group \
 LIMIT 1  "
 
 queryInfoGettatelli = prefixes + " SELECT DISTINCT ?card ?uri_card \
@@ -464,6 +464,7 @@ function handle_data(json) {
       json['results']['bindings'],
       function (index, value) {
         var graph = value['graph']['value'];
+        var uri = value['uri']['value'];
         var label = value['label']['value'];
         var name = value['name']['value'];
         var givenName = "";
@@ -590,6 +591,13 @@ function handle_data(json) {
 
         //console.log(variants);
 
+        var Buttons = '<button class="btn btn-default" type="button" onclick="schedaASPO(\'' + uri + '\')"> \
+        <i class="fas fa-external-link-alt" aria-hidden="true"></i></button> \
+        <button type="button" value="object" id="' + uri + '" class="cit btn btn-default" alt="scheda" title="Citazione"><i class="fa fa-quote-right"></i></button> \
+        <button type="button" value="object" id="' + uri + '" class="hyp btn btn-default" alt="scheda" title="Hyperlink"><i class="fa fa-link"></i></button> \
+        <a href="http://dev.restore.ovi.cnr.it/lodlive/?' + uri + '" target="_blank"><button type="button" class="btn btn-default info" alt="LOD" title="LodLive"><i class="fa fa-share-alt"></i></button></a></div></div>';
+
+
         var id_snippet = "<div class='col-sm-4'><span class='label'>" + id_type + ":</span></div><div class='col' id='identificatore'>" + identifier + "</div>";
 
         document.getElementById("grafo").innerHTML = dataset;
@@ -610,6 +618,7 @@ function handle_data(json) {
         document.getElementById("luogo_nascita").innerHTML = birth_place;
         document.getElementById("luogo_morte").innerHTML = death_place;
         document.getElementById("gruppi_appartenenza").innerHTML = group;
+        document.getElementById("link_buttons").innerHTML = Buttons;
 
         const collection = document.getElementsByClassName("PN");
         for (var i=0; i<collection.length; i++) {

+ 1 - 0
lettera.html

@@ -85,6 +85,7 @@
 						<div class="row box-info-title">
 							<div class="col">
 								<h1 id="title" class="box-info-main-title"></h1>
+								<span id="link_buttons"></span>
 							</div>
 						</div>
 						<div class="row box-info-container">

+ 3 - 9
object.html

@@ -108,9 +108,8 @@
 						<div class="container-fluid">
 							<div class="row box-info-title">
 								<div class="col">
-									<span id="time"></span>
 									<h1 id="nome_oggetto" class="box-info-main-title"></h1>
-									<span class="box-info-subtitle" id="nome_autore"></span>
+									<span id="link_buttons"></span>
 								</div>
 							</div>
 
@@ -294,13 +293,8 @@
                                           	<!-- Scheda -->
 											<div id="myTab" class="tab"></div>
                                           
-											<div class="row def_res">
-												<div class="col">
-													<b>Eventi registrati <span id="nome_au" class="PN"></span></b>
-												</div>
-												<div class="col num_res">
-													<span><span id="n_ev"></span> risultati</span>
-												</div>
+											<div id="thead_ev" class="row def_res">
+												
 											</div>
 											<div class="row res_list">
 												<div class="container-fluid" id="section_events"></div>