let databox, db;
function initiate() {
  databox = document.getElementById("databox");
  const button = document.getElementById("find");
  button.addEventListener("click", findobjects);

  const request = indexedDB.open("mydatabase");
  request.addEventListener("error", showerror);
  request.addEventListener("success", start);
  request.addEventListener("upgradeneeded", createdb);
}
function showerror(event) {
  alert("Error: " + event.target.error.name + " " + event.target.error.message);
}
function start(event) {
  db = event.target.result;
}
function createdb(event) {
  const database = event.target.result;
  const mystore = database.createObjectStore("movies", {keyPath: "id"});
  mystore.createIndex("SearchYear", "date", {unique: false});
}
function findobjects() {
  databox.innerHTML = "";
  const find = document.getElementById("year").value;

  const mytransaction = db.transaction(["movies"]);
  const mystore = mytransaction.objectStore("movies");
  const myindex = mystore.index("SearchYear");

  const myrange = IDBKeyRange.only(find);
  const request = myindex.openCursor(myrange);
  request.addEventListener("success", showlist);
}
function showlist(event) {
  const cursor = event.target.result;
  if (cursor) {
    databox.innerHTML += "<div>" + cursor.value.id + " - " + cursor.value.name + " - " + cursor.value.date + "</div>";
    cursor.continue();
  }
}
window.addEventListener("DOMContentLoaded", initiate);