$(document).ready(function() { ///////URLS///////////// // setting up variables that we will use for the url later var existing_path = window.location.href; existing_start = existing_path.indexOf('/?'); var address = existing_path.slice(existing_start); // generating the url with librarian names $(".librarian-names").click(function(event){ var theid = $(this).attr('id'); var test = "librarian=" + theid; if(address.includes(test)!=true){ if(address.slice(address.length - 1)!='/'){ address = address + "&librarian=" + theid; } else { address = address + "?librarian=" + theid; } location.href = address; } else { var start = "?librarian=" + theid; var addition = "&librarian=" + theid; if(address.includes(start)==true && address.charAt(start.length+1)=='&'){ var begin = address.indexOf(start)+1; address = address.replace(address.substr(begin,start.length),''); } else if(address.includes(start)==true) { address = address.replace(start,''); } else { address = address.replace(addition,''); }; location.href = address; }; }); // generating the url with method names $(".nav-button").click(function(event){ var theid = $(this).attr('id'); var test = "method=" + theid; if(address.includes(test)!=true){ if(address.slice(address.length - 1)!='/'){ address = address + "&method=" + theid; } else { address = address + "?method=" + theid; } location.href = address; } else { var start = "?method=" + theid; var addition = "&method=" + theid; if(address.includes(start)==true && address.charAt(start.length+1)=='&'){ var begin = address.indexOf(start)+1; address = address.replace(address.substr(begin,start.length),''); } else if(address.includes(start)==true) { address = address.replace(start,''); } else { address = address.replace(addition,''); }; location.href = address; }; }); /////DISPLAY FILES///////////// $(".file-names").click(function(event){ // alert(listofselecteddocs); // if classname in listselecteddocs, checkbox is checked; var thefile = $(this).text(); $.getJSON('{{ url_for('static', filename='js/mergedjson.json') }}', function(test) { $(".name-elements").empty(); // iterate in test[i].librarian to find where the name is present //to get the test[i].debris that goes with it var allpeeps = []; var category = null; for (var i = 0; i < test.length; ++i) { var item = test[i]; if(item.debrisname.includes(thefile)){ ledocument = item.debrispath; // allpeeps.push(ledocument); var extension = ledocument.replace(/^.*\./, ''); // var classname = ledocument.substring(ledocument.lastIndexOf('/')+1); // classname = classname.substr(0, classname.lastIndexOf('.')) || classname; var classname = ledocument; console.log(ledocument); // check or unchecked checkbox if classname in array var checkboite; if(jQuery.inArray(classname, listofselecteddocs) != -1) { console.log("is in array"); checkboite = "
"; } else { checkboite = "
"; } if ((extension=="jpg") || (extension=="jpeg") || (extension=="png") || (extension=="gif") || (extension=="tiff")) { $(".name-elements").append("
  • "+checkboite+"
  • "); } else if (extension=="pdf") { $(".name-elements").append("
  • "+checkboite+""); } else if (extension=="epub") { $(".name-elements").append("
  • "+ledocument+"
  • "); } else if ((extension=="mp3") || (extension=="wav") || (extension=="m4a")) { $(".name-elements").append("
  • "+checkboite+"
  • "); } else if ((extension=="mov") || (extension=="mp4")) { $(".name-elements").append("
  • "+checkboite+"
  • "); } else if ((extension=="odt") || (extension=="docx")) { // something for odt and docx $(".name-elements").append("
  • "+ledocument+"
  • "); }; }; category = item.method; }; }); }); ///////////CHECKBOXES//////////////// var listofselecteddocs = []; $(document.body).on("click", "input[type='checkbox']", function() { var self=$(this); if(self.is(":checked")){ theid = self.attr("id"); alert("checkbox id ="+theid +"is checked "); listofselecteddocs.push(theid); alert(listofselecteddocs.length); }else { theid = self.attr("id"); alert("id = "+theid +"is Unchecked "); listofselecteddocs = $.grep(listofselecteddocs, function(value) { return value != theid; }); alert(listofselecteddocs.length); } }); //THE SENDING OF THE LIST TO PYTHON /////////////////// $("#listoffiles").click(function(){ console.log(listofselecteddocs) $.ajax({ type : 'POST', url : "{{url_for('test')}}", data : JSON.stringify(listofselecteddocs), success: function(response){ alert("yesss") }, contentType: "application/json", dataType: 'json' }); }); });