<!doctype html>
<html data-theme="light" class="has-navbar-fixed-top">


  <head>
      <title>Withlist</title>
<meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no, initial-scale=1.0">    <!-- CSS Reset -->
    <link
      rel="stylesheet"
      href="https://cdn.jsdelivr.net/npm/bulma@1.0.0/css/bulma.min.css">

<script src="https://www.kryogenix.org/code/browser/sorttable/sorttable.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js" integrity="sha512-v2CJ7UaYy4JwqLDIrZUI/4hqeoQieOmAZNXBeQyjo21dadnwR+8ZaIJVT8EE2iyI61OV8e6M8PP2/4hpQINQ/g==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>

<style>

table.sortable th:not(.sorttable_sorted):not(.sorttable_sorted_reverse):not(.sorttable_nosort):after {
    content: " \25B4\25BE"
}
table.sortable tbody tr:nth-child(2n) td {
  background: #ffffff;
}
table.sortable tbody tr:nth-child(2n+1) td {
  background: #ecf0f1;
}

.hidden { 
	display: none;
}

table { 
    width: 100%; /* Ensure the table takes full width of its container */

}

td {
    overflow: hidden;
    text-overflow: ellipsis;
    word-wrap: break-word;
}

.name-class {
  max-width: 300px; 
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

@media only screen and (min-width: 600px) {

  .hidden-desktop {
    display: none;
  }

}


@media only screen and (max-width: 480px) {
    /* horizontal scrollbar for tables if mobile screen */
    .hidden-mobile {
  	display: none;
    }

}





      /* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.header {
width:100%;
    text-align:center;
z-index: 99;
background-color: white;
}

.content {
	padding: 16px;
}


.inputContainer {
	  display: inline-block; /* Display as an inline block */
	    vertical-align: middle; /* Center vertically within the cell */
	    width: 120px;
}

.inputContainer form {
	margin: 5% auto 5% auto;
}

.inputField {
	  display: flex;
  align-items: center; /* Align items vertically */
  width: 100%; /* Ensure inputField fills out inputContainer */
  height: 100%; /* Ensure inputField fills out inputContainer */
}
.inputField input {
	flex: 1;
	width: 70%;
	padding: 0px;
	margin: auto 2.5px auto 2.5px;
}
.inputField button {
	width: 30%;
	padding: 0px;
	margin: 0 2.5px 0 2.5px;
}

.square-button {
	background-color: white;
  border: 1px solid #d1d1d1;
}


      /* Modal Styles */
      #lightbox-modal {
  display: none;
  position: fixed;
  z-index: 1000;
  padding-top: 50px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.5);
}
.lightbox-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
}



.lightbox-content {
  max-width: 90%;
  max-height: 90%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

#lightbox-text {
  position: absolute;
  bottom: 20px; /* Adjust as needed */
  left: 50%;
  transform: translateX(-50%);
  padding: 10px;
  background-color: rgba(0, 0, 0, 0.5); /* Adjust background color and opacity */
  color: white;
  text-align: center;
}


#lightbox-modal .close {
  position: absolute;
  top: 10px;
  right: 25px;
  font-size: 50px;
  color: white;
  cursor: pointer;
}

#lightbox-modal img {
  display: block;
  margin: 0 auto;
  max-width: 90%;
  max-height: 90%;
}

</style>
      

</head>
  <body>
<nav class="navbar is-dark is-fixed-top" role="navigation" aria-label="main navigation">
      <div class="navbar-brand">
        <a class="navbar-item" href="/">
          Home
        </a>
    
      </div>
      
      <div id="navMenu" class="navbar-menu">
        <div class="navbar-start">
    
        </div>
    
        <div class="navbar-end">
              
        </div>
      </div>
    </nav>    
    <section class="section">
	          <div class="container">

	<form id="createForm" action="/wishlist" method="POST">
          <div class="field">
            <label class="label" for="inputField">Input:</label>
            <div class="control">
              <input class="input" type="text" id="inputField" name="inputField">
            </div>
          </div>
          <div class="field">
            <div class="control">
              <button id="submitButton" class="button is-primary" type="submit" name="create_submit">Submit</button>
            </div>
          </div>
        </form>
        
		  </div>
    </section>

<div class="center-table">
	<table id="data" class="table tablemobile sortable">
    <thead>
      <tr>
        <th class="fixed-width sorttable_nosort"></th>
        <th style="text-align:center;margin:0px;" class="fixed-width">ID</th>
        <th class="fixed-width">Name</th>
	<th style="text-align: center;" class="fixed-width hidden-mobile">Year</th>
	<th style="text-align: center;" class="fixed-width hidden-mobile">Parts</th>
	<th class="fixed-width hidden-mobile">Retirement Date</th>
	<th style="text-align: center;" class="sorttable_nosort">Delete</th>
      </tr>
    </thead>
    <tbody> <!-- set_num|name|year|theme_id|num_parts|set_img_url|set_url|last_modified_dt -->
      {% for sets in wishlist %}
        <tr>
	  <td><img src="{{ '/static/sets/' + sets[0] + '.jpg' }}" class="lightbox-trigger" style="height: 50px; width: auto;"></td>
	  <td  style="text-align:center;margin:0px;">{{ sets[0] }}</td>
	  <td>{{ sets[1] }}</td>
	  <td style="text-align:center;" class="hidden-mobile">{{ sets[2] }}</td>
	  <td style="text-align:center;" class="hidden-mobile">{{ sets[4] }}</td>
	  <td class="hidden-mobile">{{ sets[8] }}</td>
	  <td style="text-align:center;">
            <form method="POST" style="margin:0">
              <input type="hidden" name="set_num" value="{{ sets[0] }}">
              <button type="submit" class="btn btn-primary" name="add_to_list">Delete</button>
            </form>
          </td>
	</tr>
	{% endfor %}
    </tbody>
  </table>
</div>






    <button class="js-modal-trigger" data-target="modal-js-example" id="modal-js">
    </button> 



    <div class="modal" id="modal-js-example">
      <div class="modal-background"></div>
      <div class="modal-card">
        <header class="modal-card-head">
          <p class="modal-card-title">Cannot add set!</p>
          <button class="delete" aria-label="close"></button>
        </header>
        <section class="modal-card-body">
          Set number does not exists: 
          <br>
          <b id="error-code"></b>
        </section>
        <footer class="modal-card-foot">
          <div class="buttons">
            <button class="button is-primary">OK</button>
          </div>
        </footer>
      </div>
    </div>
    </body>

<script>

  // Event listener for the form submission
  //document.getElementById("createForm").addEventListener("submit", function (event) {
  //  event.preventDefault(); // Prevent default form submission
  //  var inputField = document.getElementById("inputField").value;
//	  console.log(inputField);
 // });

  document.addEventListener('DOMContentLoaded', () => {
    const error = "{{ error }}"
	  console.log("{{ error }}")
    if (error && error !== 'None') {
       document.getElementById("modal-js").click();
    	document.getElementById("error-code").innerHTML = error;
	document.getElementById("inputField").value = "";
	            const modal = document.getElementById('modal-js-example');
	                modal.classList.add('is-active');
    }

	// Functions to open and close a modal
    function openModal($el) {
      $el.classList.add('is-active');
    }

    function closeModal($el) {
      $el.classList.remove('is-active');
    }

    function closeAllModals() {
      (document.querySelectorAll('.modal') || []).forEach(($modal) => {
        closeModal($modal);
      });
    }

    // Add a click event on buttons to open a specific modal
    (document.querySelectorAll('.js-modal-trigger') || []).forEach(($trigger) => {
      const modal = $trigger.dataset.target;
      const $target = document.getElementById(modal);

      $trigger.addEventListener('click', () => {
        openModal($target);
      });
    });

    // Add a click event on various child elements to close the parent modal
    (document.querySelectorAll('.modal-background, .modal-close, .modal-card-head .delete, .modal-card-foot .button') || []).forEach(($close) => {
      const $target = $close.closest('.modal');

      $close.addEventListener('click', () => {
        closeModal($target);
      });
    });

    // Add a keyboard event to close all modals
    document.addEventListener('keydown', (event) => {
      if (event.key === "Escape") {
        closeAllModals();
      }
    });
  });
    </script>

</html>