utilities.js 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. //INIZIO PREPARAZIOEN QUERY
  2. // Raccatto i parametri dall'URL -- mi aspetto un parametro di nome 'link'!
  3. thisUrlParams = {};
  4. window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
  5. thisUrlParams[key] = value;
  6. });
  7. console.log('URL get params: ', thisUrlParams.params);
  8. function prepareQueryURL(query){
  9. sparqlEndpoint = 'http://dev.restore.ovi.cnr.it:8890/sparql/';
  10. sparqlUrlParams = '?default-graph-uri=&query=' + encodeURIComponent(query) + '&output=json&callback=?';
  11. return sparqlEndpoint + sparqlUrlParams;
  12. }
  13. function doJsonQuery(query) {
  14. queryURL = prepareQueryURL(query);
  15. return $.ajax({
  16. url: queryURL,
  17. dataType: "json",
  18. type: 'GET'
  19. });
  20. }
  21. // Funzioni per raccattare + stringhificare l'output
  22. queryStringOutput = "";
  23. function stringifyResponse(val){
  24. resultArray = val['results']['bindings'];
  25. out = "";
  26. for(i = 0; i < resultArray.length; i++){
  27. out = out + JSON.stringify(resultArray[i])
  28. }
  29. queryStringOutput = (queryStringOutput + out).replace("}{",",");
  30. }
  31. //FINE PREPARAZIONE QUERY
  32. $(document).on("click", ".luogo", function (ev) {
  33. var link = this.id;
  34. window.open("Luogo.html?link="+this.id, "_self");
  35. });
  36. $(document).on("click", ".persona", function (ev) {
  37. var link = this.id;
  38. window.open("Persona.html?link="+this.id, "_self");
  39. });
  40. $(document).on("click", ".lettera", function (ev) {
  41. var link = this.id;
  42. window.open("lettera.html?link="+this.id, "_self");
  43. });
  44. $(document).on("click", ".object", function (ev) {
  45. var link = this.id;
  46. window.open("object.html?link="+this.id, "_self");
  47. });
  48. $(document).on("click", ".artwork", function (ev) {
  49. var link = this.id;
  50. window.open("OA.html?link="+this.id, "_self");
  51. });
  52. function schedaASPO(info){
  53. window.open(info);
  54. }
  55. $(document).on("click", ".hyp", function (ev) {
  56. var baseurl = window.location.origin+window.location.pathname;
  57. let slash = baseurl.lastIndexOf("/");
  58. var type = $(this).val() + '.html';
  59. var link = this.id;
  60. var url = baseurl.substr(0, slash+1) + type + "?link="+link;
  61. var link = this.id;
  62. $("#myModal").empty();
  63. $("#myModal").css("display", "block");
  64. $('#myModal').append("<div class='modal-content'><div class='modal-close'><span class='close'>&times;</span></div><div id='myInput'>" +
  65. url + "</div><button id='copy_btn' class='btn btn-theme-primary btn-md' onclick='myFunction()'>Copia</button>");
  66. });
  67. $(document).on("click", ".close", function (ev) {
  68. var link = this.id;
  69. $("#myModal").css("display", "none");
  70. });
  71. $(document).on("click", ".back", function (ev) {
  72. $("#myTab").css("display", "none");
  73. });
  74. function changeStyle() {
  75. var element = document.getElementById("glass");
  76. element.classList.toggle("img-magnifier-glass");
  77. }
  78. $(document).on("click", ".zoomImg", function (ev) {
  79. magnify("expandedImg", 3);
  80. var x = document.getElementById("glass");
  81. if (x.style.display === "none") {
  82. x.style.display = "block";
  83. } else {
  84. x.style.display = "none";
  85. }
  86. });
  87. $(document).on("click", ".cit", function (ev) {
  88. var author ="RESTORE. smart access to digital heritage and memory"
  89. var year = new Date().getFullYear()
  90. var today = new Date();
  91. var dd = String(today.getDate()).padStart(2, '0');
  92. var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!
  93. var yyyy = today.getFullYear();
  94. today = dd + '/' + mm + '/' + yyyy;
  95. var baseurl = window.location.origin+window.location.pathname;
  96. let slash = baseurl.lastIndexOf("/");
  97. var type = $(this).val() + '.html';
  98. var link = this.id;
  99. var url = baseurl.substr(0, slash+1) + type + "?link="+link;
  100. //alert(nome_autore);
  101. //$('#myModal').text("");
  102. $("#myModal").empty();
  103. $("#myModal").css("display", "block");
  104. $('#myModal').append("<div class='modal-content'><div class='modal-close'><span class='close'>&times;</span></div><div id='myInput'>" +
  105. author + " " + year + ", accesso effettuato: " + today + ", &lt;" + url + "&gt;</div><button id='copy_btn' class='btn btn-theme-primary btn-md' onclick='myFunction()'>Copia</button>");
  106. });
  107. function titleCase(str) {
  108. var splitStr = str.toLowerCase().split(' ');
  109. for (var i = 0; i < splitStr.length; i++) {
  110. // You do not need to check if i is larger than splitStr length, as your for does that for you
  111. // Assign it back to the array
  112. splitStr[i] = splitStr[i].charAt(0).toUpperCase() + splitStr[i].substring(1);
  113. }
  114. // Directly return the joined string
  115. new_str = splitStr.join(' ');
  116. finalString = new_str.replaceAll(" Di ", " di ").replace(" Moglie ", " moglie ")
  117. return finalString;
  118. }
  119. function copyToClipboard(text) {
  120. var sampleTextarea = document.createElement("textarea");
  121. document.body.appendChild(sampleTextarea);
  122. sampleTextarea.value = text; //save main text in it
  123. sampleTextarea.select(); //select textarea contenrs
  124. document.execCommand("copy");
  125. document.body.removeChild(sampleTextarea);
  126. }
  127. function myFunction(){
  128. var copy = document.getElementById("myInput");
  129. copyText = copy.textContent;
  130. copyToClipboard(copyText);
  131. //copyToClipboard(copyText.value);
  132. }
  133. function expandImg(imgs) {
  134. var expandImg = document.getElementById("expandedImg");
  135. var imgText = document.getElementById("imgtext");
  136. expandImg.src = imgs.src;
  137. imgText.innerHTML = imgs.alt;
  138. expandImg.parentElement.style.display = "block";
  139. }