function lockedProfile() {
let main = document.getElementById("main");
var requestOptions = {
method: 'GET',
redirect: 'follow'
};
fetch("http://localhost:3030/jsonstore/advanced/profiles", requestOptions)
.then(response => response.json())
.then(result => populate(result))
.catch(error => console.log('error', error));
function populate(dataObj) {
main.innerHTML = "";
let arr = Array.from(Object.entries(dataObj));
arr.forEach(p => {
let profileDiv = document.createElement("div");
profileDiv.className = "profile";
let profilePic = document.createElement("img");
profilePic.setAttribute("src", "./iconProfile2.png");
profilePic.className = "userIcon";
let lockLabel = document.createElement("label");
lockLabel.textContent = "Lock";
let radioLock = document.createElement("input");
radioLock.type = "radio";
radioLock.checked = true;
radioLock.name = `${p[1].username}Locked`
let unlockLabel = document.createElement("label");
unlockLabel.textContent = "Unlock";
let radioUnlock = document.createElement("input");
radioUnlock.type = "radio";
radioUnlock.name = `${p[1].username}Locked`
let hr = document.createElement("hr");
let usernameLabel = document.createElement("label");
usernameLabel.textContent = "Username";
let usernameInput = document.createElement("input");
usernameInput.disabled = true;
usernameInput.value = p[1].username;
let hiddenDiv = document.createElement("div");
hiddenDiv.id = `${p[1].username}HiddenFields`;
hiddenDiv.style.display = "none";
let hiddenHr = document.createElement("ht");
let emailLable = document.createElement("label");
emailLable.textContent = "Email:";
let emailInput = document.createElement("input");
emailInput.disabled = true;
emailInput.value = p[1].email;
let ageLabel = document.createElement("label");
ageLabel.textContent = "Age:"
let ageInput = document.createElement("input");
ageInput.disabled = true;
ageInput.value = p[1].age;
let buttonShow = document.createElement("button");
buttonShow.textContent = "Show more";
buttonShow.addEventListener("click", () => (togleVisibility(profileDiv, hiddenDiv)));
hiddenDiv.appendChild(hiddenHr);
hiddenDiv.appendChild(emailLable);
hiddenDiv.appendChild(emailInput);
hiddenDiv.appendChild(ageLabel);
hiddenDiv.appendChild(ageInput);
profileDiv.appendChild(profilePic);
profileDiv.appendChild(lockLabel)
profileDiv.appendChild(radioLock);
profileDiv.appendChild(unlockLabel)
profileDiv.appendChild(radioUnlock);
profileDiv.appendChild(hr);
profileDiv.appendChild(usernameLabel);
profileDiv.appendChild(usernameInput);
profileDiv.appendChild(hiddenDiv);
profileDiv.appendChild(buttonShow)
main.appendChild(profileDiv)
})
function togleVisibility(profileDiv, hiddenDiv) {
let unlockedRadio = Array.from(profileDiv.querySelectorAll('input'))[1];
let showBtn = profileDiv.querySelector("button");
if (unlockedRadio.checked == true) {
if (showBtn.textContent == "Show more") {
hiddenDiv.style.display = "block";
showBtn.textContent = "Hide it"
} else {
hiddenDiv.style.display = "none";
showBtn.textContent = "Show more"
}
}
}
}
}