Newer
Older
function init() {
let infoText = document.getElementById('infoText')
infoText.innerHTML = 'Ladataan tehtävälista palvelimelta, odota...'
let response = await fetch('http://localhost:3000/jumps')
let jumps = await response.json()
console.log(jumps)
let li = document.createElement('li')
let li_attr = document.createAttribute('id')
li_attr.value= jump._id
li.setAttributeNode(li_attr)
let text = document.createTextNode(jump.text)
li.appendChild(text)
// spanit
let edit_span = document.createElement('span')
let edit_span_attr = document.createAttribute('class')
let del_span = document.createElement('span')
let del_span_attr = document.createAttribute('class')
// edit
edit_span_attr.value = "edit"
edit_span.setAttributeNode(edit_span_attr)
let edit = document.createTextNode(" edit ")
edit_span.appendChild(edit)
li.appendChild(edit_span)
// delete
del_span_attr.value = 'delete'
del_span.setAttributeNode(del_span_attr)
let x = document.createTextNode(' x ')
del_span.appendChild(x)
let jumpsList = document.getElementById('jumpsList')
let infoText = document.getElementById('infoText')
// no jumps
if (jumps.length === 0) {
infoText.innerHTML = 'Ei tehtäviä'
} else {
jumps.forEach(jump => {
jumpsList.appendChild(li)
})
infoText.innerHTML = ''
}
}
async function addJump() {
let newJumpNumber = document.getElementById('newJumpNumber')
let newJumpDate = document.getElementById('newJumpDate')
const data = {
'number': newJumpNumber.value,
'date': newJumpDate.value
}
const response = await fetch('http://localhost:3000/jumps', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(data)
})
let jump = await response.json()
let jumpsList = document.getElementById('jumpsList')
jumpsList.appendChild(li)
let infoText = document.getElementById('infoText')
infoText.innerHTML = ''
let jump_content = li.innerHTML.slice(0, -63)
input.value = jump_content
let button = document.getElementById("btn")
button.style.backgroundColor = "yellow"
button.innerHTML = "Tallenna"
async function saveJump(id){
let newJump = document.getElementById('newJump')
const data = { 'text': newJump.value }
const response = await fetch('http://localhost:3000/jumps/'+id, {
method: 'PUT',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(data)
})
let jump = await response.json()
document.getElementById(jump._id).firstChild.nodeValue = jump.text
let addButton = document.getElementById('btn')
addButton.setAttribute('onclick', "addJump()")
addButton.innerHTML = "Lissee"
addButton.style.backgroundColor = ""
let infoText = document.getElementById('infoText')
infoText.innerHTML = ''
const response = await fetch('http://localhost:3000/jumps/'+id, {
method: 'DELETE'
})
let responseJson = await response.json()
let li = document.getElementById(id)
li.parentNode.removeChild(li)
let jumpsList = document.getElementById('jumpsList')
if (!jumpsList.hasChildNodes()) {
let infoText = document.getElementById('infoText')
infoText.innerHTML = 'Ei tehtäviä'
}
}