Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function solve() {
- const title_input = document.getElementById('title')
- const description_input = document.getElementById('description')
- const select_input = document.getElementById('label')
- const points_input = document.getElementById('points')
- const assignee_input = document.getElementById('assignee')
- const create_task_btn = document.getElementById('create-task-btn')
- const tasks_section = document.getElementById('tasks-section')
- const total_points_element = document.getElementById('total-sprint-points')
- const delete_task_btn = document.getElementById('delete-task-btn')
- const hidden_input = document.getElementById('task-id')
- let total_points = 0
- let icons = {
- 'feature': '⊡',
- 'low': '☉',
- 'high': '⚠',
- }
- create_task_btn.addEventListener("click", create_task)
- let counter = 0
- function create_task(e) {
- e.preventDefault()
- counter += 1
- hidden_input.value = `task-${counter}`
- let title = title_input.value
- let description = description_input.value
- let label = select_input.value
- let points = points_input.value
- let assignee = assignee_input.value
- if (title === '' || description === '' || label === '' || points === '' || assignee === '') {return}
- let article = create_element('article', '', tasks_section, `${hidden_input.value}`, 'task-card')
- let label_content = ''
- let label_class = ''
- if (label === 'Feature') {
- label_content = `${label} ${icons["feature"]}`
- label_class = 'feature'
- } else if (label === 'Low Priority Bug') {
- label_content = `${label} ${icons["low"]}`
- label_class = 'low-priority'
- } else if (label === 'High Priority Bug') {
- label_content = `${label} ${icons["high"]}`
- label_class = 'high-priority'
- }
- let div_label = create_element('div', label_content, article, '','task-card-label')
- div_label.classList.add(label_class)
- let h3 = create_element('h3', title, article, '', 'task-card-title')
- let p = create_element('p', description, article, '', 'task-card-description')
- let points_div = create_element('div', `Estimated at ${points} pts`, article, '', 'task-card-points')
- let assignee_div = create_element('div', `Assigned to: ${assignee}`, article, '', 'task-card-assignee')
- let div_btn = create_element('div', '', article, '', 'task-card-actions')
- let del_btn = create_element('button', 'Delete', div_btn, '', '', delete_element)
- total_points += Number(points)
- total_points_element.textContent = `Total Points ${total_points}pts`
- title_input.value = ''
- description_input.value = ''
- select_input.value = ''
- points_input.value = ''
- assignee_input.value = ''
- }
- function delete_element(delete_event) {
- create_task_btn.disabled = true
- delete_task_btn.disabled = false
- let delete_article = delete_event.currentTarget.parentElement.parentElement
- let data = Array.from(delete_article.children)
- title_input.value = data[1].textContent
- description_input.value = data[2].textContent
- points_input.value = data[3].textContent.split(' ')[2]
- assignee_input.value = data[4].textContent.split(': ')[1]
- let current_value_data = data[0].textContent.split(' ')
- current_value_data.pop()
- select_input.value = current_value_data.join(' ')
- title_input.disabled = true
- description_input.disabled = true
- select_input.disabled = true
- points_input.disabled = true
- assignee_input.disabled = true
- delete_task_btn.addEventListener("click", total_delete_task)
- function total_delete_task() {
- total_points -= Number(data[3].textContent.split(' ')[2])
- delete_article.remove()
- create_task_btn.disabled = false
- delete_task_btn.disabled = true
- total_points_element.textContent = `Total Points ${total_points}pts`
- title_input.value = ''
- description_input.value = ''
- select_input.value = ''
- points_input.value = ''
- assignee_input.value = ''
- title_input.disabled = false
- description_input.disabled = false
- select_input.disabled = false
- points_input.disabled = false
- assignee_input.disabled = false
- }
- }
- function create_element(element_type, element_content, parent_element, id, element_class, event) {
- let current_element = document.createElement(element_type)
- if (element_content) {
- current_element.textContent = element_content
- }
- if (id) {
- current_element.id = id
- }
- if (event) {
- current_element.addEventListener('click', event)
- }
- if (element_class) {
- current_element.classList.add(element_class)
- }
- parent_element.appendChild(current_element)
- return current_element
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement