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

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


<body>
  <link rel="stylesheet" href="/css/user.css" />

  <%- include("extra/navbar") %>

  <div class="content">
    <div class="box" style="justify-content:center;">
    <img style="width:100px;height:100px;border-radius:50%;" src="<%=member.avatar %>">
    </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">Is admin?</h2>
      <h2 class="box-value"><%= member.admin ? "Yes" : "No" %></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 class="box">
      <h2 class="box-title">About:</h2>
    </div>
    <p class="box-value">
      <%= member.about %>
    </p>

    <% if (user?.admin && !member.deleted) {%>
    <a class="btn-outline-primary" id="edit_name">Change name of the user!</a>
    <a class="btn-outline-primary" id="edit_avatar">Change avatar of the user!</a>
    <a class="btn-outline-primary" id="edit_about">Change about of the user!</a>
    <a class="btn-outline-primary" id="admin">Give admin permissions!</a>
    <a class="btn-outline-primary" id="delete">Delete user!</a>

    <script type="module">

      import request from "../../js/request.js";
      document.addEventListener("click", async e => {
        if (e.target.id == "admin") {

          const response = await request("/api/users/<%= member.id %>/admin");

          if (response.admin)
            return alert("Making admin of " + response.name + " is success!");

        } else 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 {

          const body = {};

          if (e.target.id == "edit_name") 
            body.name = prompt("Enter new username!");
          else if (e.target.id == "edit_avatar") 
            body.avatar = prompt("Enter new avatar URL!");
          else if (e.target.id == "edit_avatar") 
            body.about = prompt("Enter new about text!");
          else return;
          const res = await request(`/api/users/<%= member.id %>`, "PATCH", body);

          if (res.error) return;
          alert(`User updated!`);
          location.reload();
        }

      });

    </script>
    <% }; %>
    <% if (member.deleted) {%>
    <h1>This user has been deleted!</h1>
    <a onclick="undelete();" class="btn-primary"  >Undelete user! </a>
  
    <script type="module">
      import request from "../../js/request.js";
      window.undelete= async function undelete(params) {
            
      const response = await request("/api/users/<%= member.id %>/undelete");
     
      if (response.deleted) return;
        alert("User is undeleted successfully!");
        location.reload()
      }
    </script>
    <% }; %>

  </div>
</body>

</html>