Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function solve() {
- let inputName = document.querySelector('input[name="lecture-name"]');
- let inputDate = document.querySelector('input[name="lecture-date"]');
- let inputOptions = document.querySelector('select[name="lecture-module"]');
- let addBtn = document.querySelector('.form-control>button');
- let modules = document.querySelector('.modules');
- addBtn.addEventListener('click', (e) => {
- e.preventDefault();
- if (inputName.value && inputDate.value && inputOptions.value != "Select module") {
- let moduleDiv = document.createElement('div');
- moduleDiv.className = 'module';
- let ul = document.createElement('ul');
- let exists = false;
- let existentMod = document.querySelector(`#${inputOptions.value}`);
- if (existentMod) {
- exists = true;
- moduleDiv = document.querySelector(`#${inputOptions.value}`).parentElement;
- ul = moduleDiv.children[1];
- }
- let moduleName = document.createElement('h3');
- moduleName.id = inputOptions.value;
- let splittedDate = inputDate.value.split('T');
- let date = splittedDate[0];
- let time = splittedDate[1];
- let correctDate = date.split('-').join('/');
- moduleName.innerHTML = `${inputOptions.value.toUpperCase()}-MODULE`;
- let li = document.createElement('li');
- li.className = 'flex';
- let lectureName = document.createElement('h4');
- lectureName.innerHTML = `${inputName.value} - ${correctDate} - ${time}`;
- let delBtn = document.createElement('button');
- delBtn.innerHTML = 'Del';
- delBtn.className = "red";
- delBtn.addEventListener('click', () => {
- let parent = delBtn.parentNode.parentNode;
- delBtn.parentElement.remove();
- if (parent.childElementCount == 0) {
- parent.parentNode.remove();
- }
- })
- if (!exists) {
- moduleDiv.appendChild(moduleName);
- }
- ul.appendChild(li);
- li.appendChild(lectureName);
- li.appendChild(delBtn);
- ul.appendChild(li);
- moduleDiv.appendChild(ul);
- if (!exists) {
- modules.appendChild(moduleDiv);
- }
- sortList(moduleDiv);
- }
- })
- function sortList(list) {
- let sorted, i;
- let sortFlag = true;
- while (sortFlag) {
- sortFlag = false;
- let LiEle = list.getElementsByTagName("LI");
- for (i = 0; i < LiEle.length - 1; i++) {
- sorted = false;
- if (LiEle[i].innerHTML.split(' - ').slice(1).join(' ').toLowerCase() > LiEle[i + 1].innerHTML.toLowerCase().split(' - ').slice(1).join(' ')) {
- sorted = true;
- break;
- }
- }
- if (sorted) {
- LiEle[i].parentNode.insertBefore(LiEle[i + 1], LiEle[i]);
- sortFlag = true;
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment