Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function lockedProfile() {
- let mainElement = document.getElementById('main');
- let divProfile = document.querySelector('.profile');
- divProfile.querySelectorAll('input')[2].setAttribute('name', `user1`);
- let persons = {};
- for (let i = 2; i <= 5; i++) {
- let divProfileClone = divProfile.cloneNode(true);
- divProfileClone.querySelectorAll('input')[2].setAttribute('name', `user${i}`);
- mainElement.appendChild(divProfileClone);
- }
- let arrOfRadios = Array.from(document.querySelectorAll('input[type = "radio"]'));
- let arrOfEmails = Array.from(document.querySelectorAll('input[type = "email"]'));
- let arrOfAge = Array.from(document.querySelectorAll('input[type = "age"]'));
- let counterRadio = 1;
- for (let i = 0; i < 10; i += 2) {
- arrOfRadios[i].setAttribute('name', `lock${counterRadio}`);
- arrOfRadios[i + 1].setAttribute('name', `lock${counterRadio}`);
- counterRadio++;
- }
- let url = `http://localhost:3030/jsonstore/advanced/profiles`;
- let counter = 1;
- let counter2 = 0;
- fetch(url)
- .then(response => response.json())
- .then(result => {
- for (let obj in result) {
- let usernameElement = document.getElementsByName(`user${counter}`)[0];
- let person = result[obj].username;
- let email = result[obj].email;
- let age = result[obj].age;
- persons[person] = { email: email, age: age };
- arrOfEmails[counter2].value = email;
- arrOfAge[counter2].value = age;
- usernameElement.value = person;
- counter++;
- counter2++;
- }
- })
- let buttonElements = document.querySelectorAll('button');
- buttonElements = Array.from(buttonElements);
- for (let i = 0; i < buttonElements.length; i++) {
- buttonElements[i].addEventListener('click', (e) => {
- let radioElements = document.getElementsByName(`lock${i + 1}`);
- radioElements = Array.from(radioElements);
- let unlockRadio = radioElements[1];
- let email = e.target.parentNode.querySelector('input[type="email"');
- let age = e.target.parentNode.querySelector('input[type="age"');
- if (unlockRadio.checked === true) {
- if (buttonElements[i].textContent === 'Hide it') {
- email.style.display = 'none';
- age.style.display = 'none';
- buttonElements[i].textContent = 'Show more';
- } else {
- email.style.display = 'inline-block';
- age.style.display = 'inline-block';
- buttonElements[i].textContent = 'Hide it';
- }
- }
- })
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement