<!DOCTYPE html>
<html lang="en">

<%- include("extra/meta", {title: member.name }) %>


<body>
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.0/css/all.min.css" integrity="sha512-xh6O/CkQoPOWDdYTDqeRdPCVd1SpvCA9XXcUnZS2FmJNp1coAFzvtCN9BmamE+4aHK8yyUHUSCcJHgXloTyT2A==" crossorigin="anonymous" referrerpolicy="no-referrer" />

  <link rel="stylesheet" href="/css/user.css" />
  <%- include("extra/navbar") %>


  <div class="content">

    <% if (user?.admin || user?.id === member.id) { %>
    <a href="/users/<%=member.id%>/avatar" class="btn-outline-primary">Upload avatar</a>
    <link rel="stylesheet" href="/css/modal.css" />

    <a class="btn-outline-primary" id="toogle">Edit user!</a>

    <div class="modal no-active" id="user-edit">
      <div class="modal-content">
        <div class="modal-close">
          <i id="toogle" class="fa-solid fa-square-xmark"></i>
        </div>
        <h1 class="title" style="text-align:center;">Edit <a class="see" href="/users/<%= member.id %>"><%= member.name %></a></h1>
        <div class="content">
          <form id="form" class="see" style="box-shadow:none">
            <input type="text" name="name" placeholder="<%=member.name%>" class="input">
            <input type="url" name="avatar" placeholder="<%=member.avatar%>" class="input">
            <textarea class="input" name="about" rows="4" cols="60" name="content" placeholder="<%=member.about%>"></textarea>
            <% if (user?.admin){ %>
            Is Admin? <input id='admin' type='checkbox' value='true' name='admin' <%=member.admin ? "checked": ""%>>
            <input id='adminHidden' type='hidden' value='false' name='admin'>
            <% } %>

            <button class="btn-primary" style="width:100%;">Update User!</button>
          </form>

        </div>

      </div>
    </div>

    <script type="module">
      import request from "../../js/request.js";

      const form = document.getElementById("form");

      document.addEventListener("click", async e => {
        if (e.target.id == "delete") {
          const response = await request("/api/users/<%= member.id %>", "DELETE");
          if (!response.deleted) return
          alert("User is deleted!");
          location.reload()
        } else if (e.target.id == "undelete") {
          const response = await request("/api/users/<%= member.id %>/undelete");
          if (response.deleted) return;
          alert("User is undeleted successfully!");
          location.reload()
        } else if (e.target.id == "toogle")
          document.getElementById('user-edit').classList.toggle('no-active')

      });
      form.addEventListener("submit", async e => {
        e.preventDefault();
        document.getElementById('adminHidden').disabled = document.getElementById("admin").checked;

        const object = {};
        new FormData(e.target).forEach((value, key) => object[key] = value);

        const res = await request("/api/users/<%=member.id%>", "PATCH", object);
        if (res) alert(`User is updated!`);
        location.reload();
      });
    </script>
    <% } %>

    <% if (member.deleted) {%>
    <h1>This user has been deleted!</h1>
    <a id="undelete" class="btn-primary">Undelete user! </a>
    <% } else if (user?.admin){ %>
    <a id="delete" class="btn-outline-primary">Delete user! </a>
    <% } %>


    <div class="box" style="justify-content:center;">
      <img style="width:150px;height:150px;border-radius:50%;" src="<%=member.avatar %>">
    </div>

    <% if (member.admin) { %>
    <h2 class="box-value" style="align-self: center;">Admin</h2>
    <% } %>

    <div class="box-value" style="
margin: 10px auto;
box-shadow: 0 0 5px 0 var(--second);
padding: 10px;
width: 100%;
max-width: 800px;
text-align: center;
border-radius: 5px;
background: none;
color: black;">
      <%= member.about %>
    </div>

    <div class="box">
      <h2 class="box-title">Name:</h2>
      <h2 class="box-value"><%= member.name %></h2>
    </div>
    <div class="box">
      <h2 class="box-title">Created at:</h2>
      <h2 class="box-value"><%= new Date(member.time).toLocaleString() %></h2>
    </div>
    <div class="box">
      <h2 class="box-title">Message:</h2>
      <h2 class="box-value"><%= counts.message %></h2>
    </div>
    <div class="box">
      <h2 class="box-title">Thread:</h2>
      <h2 class="box-value"><%= counts.thread %></h2>
    </div>
  </div>
</body>
<%- include("extra/footer") %>

</html>