'use srict';

(function() {
  const imageModalWrapper = document.querySelector('#image-modal-wrapper');
  const imageModalFlex = document.querySelector('#image-modal-flex');
  const imageModal = document.querySelector('#image-modal');
  const imageModalContents = document.querySelector('#image-modal-contents');

  imageModal.querySelector('.close-x').addEventListener('click', function(e) {
    e.stopPropagation();
    e.preventDefault();
    imageModalWrapper.hidden = true;
  });

  imageModalFlex.addEventListener('click', function(e) {
    if(e.target === imageModalFlex) {
      e.stopPropagation();
      e.preventDefault();
      imageModalWrapper.hidden = true;
    }

  });

  window.addEventListener('keydown', function(e) {
    const modalCloseKeys = ['escape', 'tab']
    console.log("e.key: ", e.key);
    if(!imageModalWrapper.hidden) {
      if(modalCloseKeys.includes(e.key.toLowerCase())) {
        imageModalWrapper.hidden = true;
      }
    }
  });

  const images = document.querySelectorAll('img');
  images.forEach(function(img) {
    const name = img.src.split('/').pop();

    if(name.match(/^th_/)) {
      img.classList.add('clickable');
      img.addEventListener('click', function(e) {
        e.stopPropagation();
        e.preventDefault();

        imageModalWrapper.hidden = undefined;
        const fullImage = document.createElement('img');
        fullImage.src = `./images/${name.replace(/^th_/, '')}`;
        imageModalContents.replaceChildren(fullImage);
      });
    }
  });
})();
